* sample solution to HW5 RAM equ 0 EEPROM equ $f800 RESET equ $fffe org RAM dest rmb 1 * actually dynamic; this will grow as needed org EEPROM src fcc '@AZ[`az{' * test string looking for off-by-one errors start ldx #src * X will be used as pointer into source string ldy #0 * Y will be used as index into dest string top ldaa 0,x * get char from src string cmpa #'a * if char >= 'a... blt noshift cmpa #'z * ...and <= 'z then bgt noshift suba #'a-'A * change to lower case noshift staa dest,y * put upper case char in dest string beq done * if it was a null, we're done inx * update pointer iny * and index bra top done bra done * end org RESET fdb start