From a41aa781303b1ffb4923c3728f5b0dc7e022add4 Mon Sep 17 00:00:00 2001 From: Paul Duncan Date: Thu, 21 Jun 2018 20:13:04 -0400 Subject: add auto-pc handling, implement pc for ops --- gen.rb | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'gen.rb') diff --git a/gen.rb b/gen.rb index cdf1fec..315be3e 100755 --- a/gen.rb +++ b/gen.rb @@ -26,6 +26,13 @@ DATA['ops'].each do |set_id, ops| op['cat'], ] else + # pc_expr + pc_expr = if op['pc'] + 'cpu_ww(ctx, RW_PC, old_pc + %d);' % [op['len']] + else + '' + end + # time expr time_expr = case op['time'] when Numeric @@ -41,6 +48,7 @@ DATA['ops'].each do |set_id, ops| [ "case 0x%s: /* op: \"%s\", cat: \"%s\" */", " %s", # action_expr + " %s", # pc_expr " %s", # time_expr " break;" ].join("\n") % [ @@ -48,6 +56,7 @@ DATA['ops'].each do |set_id, ops| op['id'], op['cat'], op['code'] || 'not_implemented(ctx, old_pc, op);', + pc_expr, time_expr, ] end -- cgit v1.2.3