Routines 
Prev: 53585  Up: Map  Next: 53731 


53703  PUSH AF  Store AF (A = value of character's stat)  
53704  AND 128  Capture MSB in stat value and store in instruction at 53728...  
53706  LD (53729),A  ...  
53709  POP AF  Restore AF (A = value of character's stat)  
53710  AND 127  Discard MSB of stat value  
53712  ADD A,C  Add change value  
53713  OR A  Check sign flag  
53714  JP P,53720  If sign flag reset (i.e. MSB of result is reset and result is positive) then jump ahead to 53720  
53717  XOR A  else stat must have dropped below zero, so set stat to zero (as it can't be less than 0)  
53718  JR 53728  Skip ahead to 53728  
53720  CP 100  If new value of stat is less than or equal to 100...  
53722  JR Z,53728  ...then skip ahead to 53728...  
53724  JR C,53728  ...  
53726  LD A,100  ...else set stat to 100 (as it can't be greater than 100)  
The operand of the instruction at 53728 represents bit 7 of the input value in A. This is modified by the instruction at 53706.


53728  OR 0  Restore previously stored MSB state  
53730  RET  Return 
Prev: 53585  Up: Map  Next: 53731 