C64 ROM | Routines |
Prev: AA1D | Up: Map | Next: AA80 |
Used by the routine at A9A5.
|
||||
AA2C | A0 02 | LDY #$02 | index to string pointer high byte | |
AA2E | B1 64 | LDA ($64),Y | get string pointer high byte | |
AA30 | C5 34 | CMP $34 | compare with bottom of string space high byte | |
AA32 | 90 17 | BCC $AA4B | branch if string pointer high byte is less than bottom of string space high byte | |
AA34 | D0 07 | BNE $AA3D | branch if string pointer high byte is greater than bottom of string space high byte | |
else high bytes were equal
|
||||
AA36 | 88 | DEY | decrement index to string pointer low byte | |
AA37 | B1 64 | LDA ($64),Y | get string pointer low byte | |
AA39 | C5 33 | CMP $33 | compare with bottom of string space low byte | |
AA3B | 90 0E | BCC $AA4B | branch if string pointer low byte is less than bottom of string space low byte | |
AA3D | A4 65 | LDY $65 | get descriptor pointer high byte | |
AA3F | C4 2E | CPY $2E | compare with start of variables high byte | |
AA41 | 90 08 | BCC $AA4B | branch if less, is on string stack | |
AA43 | D0 0D | BNE $AA52 | if greater make space and copy string | |
else high bytes were equal
|
||||
AA45 | A5 64 | LDA $64 | get descriptor pointer low byte | |
AA47 | C5 2D | CMP $2D | compare with start of variables low byte | |
AA49 | B0 07 | BCS $AA52 | if greater or equal make space and copy string | |
AA4B | A5 64 | LDA $64 | get descriptor pointer low byte | |
AA4D | A4 65 | LDY $65 | get descriptor pointer high byte | |
AA4F | 4C 68 AA | JMP $AA68 | go copy descriptor to variable | |
AA52 | A0 00 | LDY #$00 | clear index | |
AA54 | B1 64 | LDA ($64),Y | get string length | |
AA56 | 20 75 B4 | JSR $B475 | copy descriptor pointer and make string space A bytes long | |
AA59 | A5 50 | LDA $50 | copy old descriptor pointer low byte | |
AA5B | A4 51 | LDY $51 | copy old descriptor pointer high byte | |
AA5D | 85 6F | STA $6F | save old descriptor pointer low byte | |
AA5F | 84 70 | STY $70 | save old descriptor pointer high byte | |
AA61 | 20 7A B6 | JSR $B67A | copy string from descriptor to utility pointer | |
AA64 | A9 61 | LDA #$61 | get descriptor pointer low byte | |
AA66 | A0 00 | LDY #$00 | get descriptor pointer high byte | |
AA68 | 85 50 | STA $50 | save descriptor pointer low byte | |
AA6A | 84 51 | STY $51 | save descriptor pointer high byte | |
AA6C | 20 DB B6 | JSR $B6DB | clean descriptor stack, YA = pointer | |
AA6F | A0 00 | LDY #$00 | clear index | |
AA71 | B1 50 | LDA ($50),Y | get string length from new descriptor | |
AA73 | 91 49 | STA ($49),Y | copy string length to variable | |
AA75 | C8 | INY | increment index | |
AA76 | B1 50 | LDA ($50),Y | get string pointer low byte from new descriptor | |
AA78 | 91 49 | STA ($49),Y | copy string pointer low byte to variable | |
AA7A | C8 | INY | increment index | |
AA7B | B1 50 | LDA ($50),Y | get string pointer high byte from new descriptor | |
AA7D | 91 49 | STA ($49),Y | copy string pointer high byte to variable | |
AA7F | 60 | RTS |
Prev: AA1D | Up: Map | Next: AA80 |