File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -365,15 +365,17 @@ def inc(self, r):
365365 """
366366 if not is_register (r ):
367367 if r [0 ] == '(' : # a memory position, basically: inc(hl)
368- r_ = r [1 :- 1 ].strip ()
369- v_ = self .getv (self .mem .get (r_ , None ))
368+ v_ = self .getv (r )
370369 if v_ is not None :
371370 v_ = (v_ + 1 ) & 0xFF
372- self .mem [r_ ] = str (v_ )
373371 self .Z = int (v_ == 0 ) # HINT: This might be improved
374372 self .C = int (v_ == 0 )
375373 else :
376- self .mem [r_ ] = new_tmp_val ()
374+ v_ = new_tmp_val ()
375+ self .set_flag (None )
376+
377+ r_ = r [1 :- 1 ]
378+ self .mem [self .get (r_ )] = str (v_ )
377379 return
378380
379381 if self .getv (r ) is not None :
@@ -399,16 +401,17 @@ def dec(self, r):
399401 """ Does dec on the register and precomputes flags
400402 """
401403 if not is_register (r ):
402- if r [0 ] == '(' : # a memory position, basically: inc(hl)
403- r_ = r [1 :- 1 ].strip ()
404- v_ = self .getv (self .mem .get (r_ , None ))
405- if v_ is not None :
406- v_ = (v_ - 1 ) & 0xFF
407- self .mem [r_ ] = str (v_ )
408- self .Z = int (v_ == 0 ) # HINT: This might be improved
409- self .C = int (v_ == 0xFF )
410- else :
411- self .mem [r_ ] = new_tmp_val ()
404+ v_ = self .getv (r )
405+ if v_ is not None :
406+ v_ = (v_ - 1 ) & 0xFF
407+ self .Z = int (v_ == 0 ) # HINT: This might be improved
408+ self .C = int (v_ == 0xFF )
409+ else :
410+ v_ = new_tmp_val ()
411+ self .set_flag (None )
412+
413+ r_ = r [1 :- 1 ]
414+ self .mem [self .get (r_ )] = str (v_ )
412415 return
413416
414417 if self .getv (r ) is not None :
You can’t perform that action at this time.
0 commit comments