|  | Routines | 
| Prev: 62476 | Up: Map | Next: 62622 | 
| 
 
 | ||||||||||||||
| 62594 | PUSH AF | Store AF (A = value of character's stat) | ||||||||||||
| 62595 | AND 128 | Capture MSB in stat value and store in instruction at 62619... | ||||||||||||
| 62597 | LD (62620),A | ... | ||||||||||||
| 62600 | POP AF | Restore AF (A = value of character's stat) | ||||||||||||
| 62601 | AND 127 | Discard MSB of stat value | ||||||||||||
| 62603 | ADD A,C | Add change value | ||||||||||||
| 62604 | OR A | Check sign flag | ||||||||||||
| 62605 | JP P,62611 | If sign flag reset (i.e. MSB of result is reset and result is positive) then jump ahead to 62611 | ||||||||||||
| 62608 | XOR A | else stat must have dropped below zero, so set stat to zero (as it can't be less than 0) | ||||||||||||
| 62609 | JR 62619 | Skip ahead to 62619 | ||||||||||||
| 62611 | CP 100 | If new value of stat is less than or equal to 100... | ||||||||||||
| 62613 | JR Z,62619 | ...then skip ahead to 62619... | ||||||||||||
| 62615 | JR C,62619 | ... | ||||||||||||
| 62617 | LD A,100 | ...else set stat to 100 (as it can't be greater than 100) | ||||||||||||
| 
The operand of the instruction at 62619 represents bit 7 of the input value in A. This is modified by the instruction at 62597.
 | ||||||||||||||
| 62619 | OR 0 | Restore previously stored MSB state | ||||||||||||
| 62621 | RET | Return | ||||||||||||
| Prev: 62476 | Up: Map | Next: 62622 |