mirror of https://github.com/wwarthen/RomWBW.git
committed by
GitHub
5 changed files with 88 additions and 3 deletions
@ -0,0 +1,80 @@ |
|||||
|
; |
||||
|
; USRROM TEMPLATE FOR A CUSTOM USER ROM |
||||
|
; |
||||
|
#INCLUDE "std.asm" |
||||
|
; |
||||
|
CR .EQU 0DH |
||||
|
LF .EQU 0AH |
||||
|
; |
||||
|
.ORG USR_LOC |
||||
|
; |
||||
|
LD HL,BOOTMSG ; INTRODUCTION |
||||
|
CALL PRTSTR |
||||
|
|
||||
|
CALL CIN ; DO STUFF |
||||
|
; |
||||
|
LD A,00H ; RETURN TO ROM LOADER |
||||
|
LD HL,0000H |
||||
|
JP 0FFF9H |
||||
|
; RET |
||||
|
; |
||||
|
; |
||||
|
; |
||||
|
; PRINT A STRING AT ADDRESS SPECIFIED IN HL |
||||
|
; STRING MUST BE TERMINATED BY '$' |
||||
|
; USAGE: |
||||
|
; LD HL,MYSTR |
||||
|
; CALL PRTSTR |
||||
|
; ... |
||||
|
; MYSTR: .DB "HELLO$" |
||||
|
; |
||||
|
PRTSTR: LD A,(HL) |
||||
|
INC HL |
||||
|
CP '$' |
||||
|
RET Z |
||||
|
CALL COUT |
||||
|
JR PRTSTR |
||||
|
; |
||||
|
; OUTPUT CHARACTER IN A TO CONSOLE DEVICE |
||||
|
; |
||||
|
COUT: PUSH AF |
||||
|
PUSH BC |
||||
|
PUSH DE |
||||
|
LD B,01H |
||||
|
LD C,0 |
||||
|
LD E,A |
||||
|
RST 08 |
||||
|
POP DE |
||||
|
POP BC |
||||
|
POP AF |
||||
|
RET |
||||
|
; |
||||
|
; OUTPUT CHARACTER IN A TO CONSOLE DEVICE |
||||
|
; |
||||
|
COUTE: PUSH AF |
||||
|
LD A,E |
||||
|
CALL COUT |
||||
|
POP AF |
||||
|
RET |
||||
|
; |
||||
|
; WAIT FOR A CHARACTER FROM THE CONSOLE DEVICE AND RETURN IT IN A |
||||
|
; |
||||
|
CIN: PUSH BC |
||||
|
LD B,00H |
||||
|
LD C,00H |
||||
|
RST 08 |
||||
|
LD A,E |
||||
|
POP BC |
||||
|
RET |
||||
|
; |
||||
|
BOOTMSG:.DB "No User ROM Installed." |
||||
|
.DB CR,LF |
||||
|
.DB "Press a key to return to Boot Loader.$" |
||||
|
; |
||||
|
SLACK .EQU (USR_END - $) |
||||
|
.FILL SLACK,00 |
||||
|
.ECHO "User ROM space remaining: " |
||||
|
.ECHO SLACK |
||||
|
.ECHO " bytes.\n" |
||||
|
.END |
||||
|
|
||||
Loading…
Reference in new issue