mirror of
https://github.com/wwarthen/RomWBW.git
synced 2026-02-06 22:43:15 -06:00
Add bank unset. Fix xmodem transfer bios call
This commit is contained in:
@@ -38,7 +38,7 @@ ENA_XM .EQU FALSE ; NO ROOM FOR BOTH DSKY+XMODEM
|
||||
ENA_XM .EQU TRUE ; INCLUDE XMODEM IF SPACE AVAILABLE
|
||||
#ENDIF
|
||||
;
|
||||
ENA_MBC6502 .EQU FALSE ; ENABLE OR DISABLE MBC6502 OPTION
|
||||
ENA_MBC6502 .EQU TRUE ; ENABLE OR DISABLE MBC6502 OPTION
|
||||
;
|
||||
#INCLUDE "util.asm"
|
||||
;
|
||||
@@ -71,6 +71,7 @@ UART_ENTRY:
|
||||
; R XXXX - RUN A PROGRAM AT ADDRESS XXXX
|
||||
; S XX - SET ACTIVE BANK TO XX
|
||||
; T XXXX - X-MODEM TRANSFER TO MEMORY LOCATION XXXX
|
||||
; U - SET BANK TO PREVIOUS BANK
|
||||
; 6 XX - TRANSFER CONTROL TO MBC6502 UNIT XX
|
||||
; X - EXIT MONITOR
|
||||
;
|
||||
@@ -129,6 +130,8 @@ SERIALCMDLOOP:
|
||||
#IF (BIOS == BIOS_WBW)
|
||||
CP 'S' ; IS IT A "S" (Y/N)
|
||||
JP Z,SETBNK ; SET BANK COMMAND
|
||||
CP 'U' ; IS IT A "U" (Y/N)
|
||||
JP Z,UNSETBNK ; UNSET (REVERT) BANK COMMAND
|
||||
#ENDIF
|
||||
#IF ((PLATFORM = PLT_MBC) & ENA_MBC6502)
|
||||
CP '6' ; IS IT A "6" (Y/N)
|
||||
@@ -225,6 +228,8 @@ SETBNK:
|
||||
LD HL,TXT_IMERR
|
||||
CALL PRTSTR
|
||||
#ELSE
|
||||
LD A,($FFE0) ; GET AND SAVE
|
||||
LD (BNKSAV),A ; CURRENT BANK
|
||||
CALL BYTEPARM ; GET BANK NUMBER
|
||||
JP C,ERR ; HANDLE DATA ENTRY ERROR
|
||||
LD C,A ; PUT IN C FOR FOR FUNC CALL
|
||||
@@ -233,6 +238,25 @@ SETBNK:
|
||||
#ENDIF
|
||||
JP SERIALCMDLOOP ; NEXT COMMAND
|
||||
;
|
||||
;__UNSETBNK___________________________________________________________________
|
||||
;
|
||||
; PERFORM UNSET BANK ACTION - REVERT TO BANK BEFORE PREVIOUS SET
|
||||
;_____________________________________________________________________________
|
||||
;
|
||||
UNSETBNK:
|
||||
#IF (INTMODE == 1)
|
||||
LD HL,TXT_IMERR
|
||||
CALL PRTSTR
|
||||
#ELSE
|
||||
LD A,(BNKSAV)
|
||||
LD C,A ; PUT IN C FOR FOR FUNC CALL
|
||||
LD B,BF_SYSSETBNK ; SET BANK FUNCTION
|
||||
CALL $FFF0 ; C HAS BANK, DO IT
|
||||
#ENDIF
|
||||
JP SERIALCMDLOOP ; NEXT COMMAND
|
||||
;
|
||||
BNKSAV .DB 00H ; OLD BANK FROM BEFORE SET
|
||||
;
|
||||
#ENDIF
|
||||
;
|
||||
;__RUN________________________________________________________________________
|
||||
@@ -365,7 +389,8 @@ XMLOAD: CALL WORDPARM ; GET STARTING LOCATION
|
||||
CALL NEWLINE
|
||||
;
|
||||
LD BC,$F8F0 ; GET CPU SPEED
|
||||
RST 08 ; AND MULTIPLY
|
||||
CALL $FFF0 ; CALL HBIOS
|
||||
; RST 08 ; AND MULTIPLY
|
||||
LD A,L ; BY 4
|
||||
PUSH AF
|
||||
ADD A,A ; TO CREATE
|
||||
@@ -1234,7 +1259,10 @@ TXT_HELP .TEXT "\r\nMonitor Commands (all values in hex):"
|
||||
.TEXT "\r\nP xxxx - Program RAM at address xxxx"
|
||||
.TEXT "\r\nR xxxx [[yy] [zzzz]] - Run code at address xxxx"
|
||||
.TEXT "\r\n Pass yy and zzzz to register A and BC"
|
||||
#IF (BIOS == BIOS_WBW)
|
||||
.TEXT "\r\nS xx - Set bank to xx"
|
||||
.TEXT "\r\nU - Set bank to previous bank"
|
||||
#ENDIF
|
||||
#IF (ENA_XM)
|
||||
.TEXT "\r\nT xxxx - X-modem transfer to memory location xxxx"
|
||||
#ENDIF
|
||||
|
||||
Reference in New Issue
Block a user