Browse Source

Refactor DSKY Monitor

pull/23/head
Wayne Warthen 7 years ago
parent
commit
82e7b3d813
  1. 481
      Source/HBIOS/dbgmon.asm
  2. 2
      Source/HBIOS/romldr.asm

481
Source/HBIOS/dbgmon.asm

@ -931,8 +931,6 @@ DSKY_ENTRY:
;_____________________________________________________________________________
;
CALL MTERM_INIT ; INIT 8255 FOR MTERM
LD HL,CPUUP ; SET POINTER TO DATA BUFFER
CALL SEGDISPLAY ; DISPLAY
;
;__COMMAND_PARSE______________________________________________________________
;
@ -940,6 +938,9 @@ DSKY_ENTRY:
;_____________________________________________________________________________
;
FRONTPANELLOOP:
LD HL,CPUUP ; SET POINTER TO DATA BUFFER
CALL DSKY_SHOWRAW ; DISPLAY
CALL KB_GET ; GET KEY FROM KB
CP 10H ; IS PORT READ?
@ -978,44 +979,20 @@ DOPORTREAD:
CALL GETPORT ; GET PORT INTO A
PORTREADLOOP:
LD C,A ; STORE PORT IN "C"
SRL A ; ROTATE HIGH NIB TO LOW
SRL A ;
SRL A ;
SRL A ;
LD (DISPLAYBUF+2),A ; SHOW HIGH NIB IN DISP 2
LD A,C ; RESTORE PORT VALUE INTO "A"
AND 0FH ; CLEAR HIGH NIB, LEAVING LOW
LD (DISPLAYBUF+3),A ; SHOW LOW NIB IN DISP 3
LD DE,DISPLAYBUF+2 ; POINT TO POS 2 IN BUF
CALL PUTVALUE ; DISPLAY PORT NUM
IN A,(C) ; GET PORT VALUE FROM PORT IN "C"
LD C,A ; STORE VALUE IN "C"
SRL A ; ROTATE HIGH NIB TO LOW
SRL A ;
SRL A ;
SRL A ;
LD (DISPLAYBUF+6),A ; SHOW HIGH NIB IN DISP 6
LD A,C ; RESTORE VALUE TO "A"
AND 0FH ; CLEAR HIGH NIB, LEAVING LOW
LD (DISPLAYBUF+7),A ; DISPLAY LOW NIB IN DISP 7
LD A,10H ; CLEAR OTHER DISPLAYS
LD (DISPLAYBUF+5),A ;
LD (DISPLAYBUF+4),A ;
LD A,13H ; "P"
LD (DISPLAYBUF+0),A ; STORE IN DISP 0
LD A,14H ; "O"
LD (DISPLAYBUF+1),A ; STORE IN DISP 1
LD HL,DISPLAYBUF ; SET POINTER TO DISPLAY BUFFER
INC DE ; ADVANCE BUF PTR
INC DE ; ... TO LAST TWO POSITIONS
CALL PUTVALUE ; DISPLAY PORT VALUE
CALL ENCDISPLAY ; DISPLAY BUFFER CONTENTS
PORTREADGETKEY:
CALL KB_GET ; GET KEY FROM KB
CP 12H ; [CL] PRESSED, EXIT
JR Z,PORTREADEXIT ;
JR Z,FRONTPANELLOOP ;
CP 10H ; [PR] PRESSED, PROMPT FOR NEW PORT
JR Z,DOPORTREAD ;
JR PORTREADGETKEY ; NO VALID KEY, LOOP
PORTREADEXIT:
LD HL,CPUUP ; SET POINTER TO DATA BUFFER
CALL SEGDISPLAY ; DISPLAY
JP FRONTPANELLOOP ;
;
;__DOPORTWRITE________________________________________________________________
;
@ -1027,28 +1004,22 @@ PORTREADEXIT:
DOPORTWRITE:
CALL GETPORT ; GET PORT INTO A
PORTWRITELOOP:
LD C,A ; STORE PORT IN "C"
SRL A ; ROTATE HIGH NIB INTO LOW
SRL A ;
SRL A ;
SRL A ;
LD (DISPLAYBUF+2),A ; DISPLAY HIGH NIB IN DISPLAY 2
LD A,C ; RESTORE PORT VALUE INTO "A"
AND 0FH ; CLEAR OUT HIGH NIB
LD (DISPLAYBUF+3),A ; DISPLAY LOW NIB IN DISPLAY 3
LD A,10H ; CLEAR OUT DISPLAYS 4 AND 5
LD (DISPLAYBUF+5),A ;
LD (DISPLAYBUF+4),A ;
LD A,13H ; DISPLAY "P" IN DISP 0
LD (DISPLAYBUF+0),A ;
LD A,14H ; DISPLAY "O" IN DISP 1
LD (DISPLAYBUF+1),A ;
LD HL,DISPLAYBUF ; POINT TO DISPLAY BUFFER
LD L,A ; SAVE PORT NUM
LD DE,DISPLAYBUF+2 ; POINT TO POS 2 IN BUF
CALL PUTVALUE ; DISPLAY PORT NUM
CALL GETVALUE ; INPUT A BYTE VALUE, RETURN IN "A"
LD C,L ; RESTORE PORT NUM
OUT (C),A ; OUTPUT VALUE TO PORT STORED IN "C"
LD HL,CPUUP ; SET POINTER TO DATA BUFFER
CALL SEGDISPLAY ; DISPLAY
JP FRONTPANELLOOP ;
LD DE,DISPLAYBUF+6 ; DISPLAY WRITTEN PORT VALUE
CALL PUTVALUE ; ... WITHOUT DP'S
CALL ENCDISPLAY ; DISPLAY BUFFER CONTENTS
PORTWRITEGETKEY:
CALL KB_GET ; GET KEY FROM KB
CP 12H ; [CL] PRESSED, EXIT
JR Z,FRONTPANELLOOP ;
CP 11H ; [PW] PRESSED, PROMPT FOR NEW PORT
JR Z,DOPORTWRITE ;
JR PORTWRITEGETKEY ; NO VALID KEY, LOOP
;
;__DOGO_______________________________________________________________________
;
@ -1057,60 +1028,17 @@ PORTWRITELOOP:
;
DOGO:
CALL GETADDR ; GET ADDRESS INTO HL
JP (HL) ; GO THERE!
;
;__DODEPOSIT__________________________________________________________________
;
; PERFORM DEPOSIT FRONT PANEL ACTION
; PANEL TEMPLATE "8888 88"
; POS 01234567
;_____________________________________________________________________________
;
DODEPOSIT:
CALL GETADDR ; GET ADDRESS INTO HL
PUSH HL
DEPOSITLOOP:
LD A,H ;
SRL A ;
SRL A ;
SRL A ;
SRL A ;
LD (DISPLAYBUF+0),A ;
LD A,H ;
AND 0FH ;
LD (DISPLAYBUF+1),A ;
LD A,L ;
SRL A ;
SRL A ;
SRL A ;
SRL A ;
LD (DISPLAYBUF+2),A ;
LD A,L ;
AND 0FH ;
LD (DISPLAYBUF+3),A ;
LD A,10H ;
LD (DISPLAYBUF+4),A ;
LD HL,DISPLAYBUF ;
CALL GETVALUE ;
POP HL ;
LD (HL),A ;
DEPOSITGETKEY:
CALL KB_GET ; GET KEY FROM KB
CP 12H ; [CL] PRESSED, EXIT
JR Z,DEPOSITEXIT ;
CP 13H ; [EN] PRESSED, INC ADDRESS AND LOOP
JR Z,DEPOSITFW ;
CP 14H ; [DE] PRESSED, PROMPT FOR NEW ADDRESS
JR Z,DODEPOSIT ;
JR DEPOSITGETKEY ; NO VALID KEY, LOOP
DEPOSITFW:
INC HL ;
PUSH HL ; STORE HL
JR DEPOSITLOOP ;
DEPOSITEXIT:
LD HL,CPUUP ; SET POINTER TO DATA BUFFER
CALL SEGDISPLAY ; DISPLAY
JP FRONTPANELLOOP ;
PUSH HL ; EXEC ADR TO TOS
LD HL,GOTO ; POINT TO "GO" MSG
CALL INITBUF
POP HL
LD DE,DISPLAYBUF+4
LD A,H
CALL PUTVALUE
LD A,L
CALL PUTVALUE
CALL ENCDISPLAY ; DISPLAY
JP (HL) ; AND RUN
;
;__DOEXAMINE__________________________________________________________________
;
@ -1121,44 +1049,24 @@ DEPOSITEXIT:
;
DOEXAMINE:
CALL GETADDR ; GET ADDRESS INTO HL
PUSH HL ; STORE HL
EXAMINELOOP:
LD A,H ; MOVE HIGH BYTE IN "A"
SRL A ; SHOW HIGH NIBBLE IN DISP 0
SRL A ;
SRL A ;
SRL A ;
LD (DISPLAYBUF+0),A ;
LD A,H ; RESTORE HIGH BYTE
AND 0FH ; CLEAR HIGH NIBBLE
LD (DISPLAYBUF+1),A ; DISPLAY LOW NIBBLE IN DISP 1
LD A,L ; PUT LOW BYTE IN "A"
SRL A ; SHOW HIGH NIBBLE IN DISP 2
SRL A ;
SRL A ;
SRL A ;
LD (DISPLAYBUF+2),A ;
LD A,L ; RESTORE LOW BYTE IN "A"
AND 0FH ; CLEAR OUT HIGH NIBBLE
LD (DISPLAYBUF+3),A ; DISPLAY LOW NIBBLE IN DISP 3
LD A,10H ; CLEAR OUT DISP 4
LD (DISPLAYBUF+4),A ;
LD A,(HL) ; GET VALUE FROM ADDRESS IN HL
SRL A ; DISPLAY HIGH NIB IN DISPLAY 6
SRL A ;
SRL A ;
SRL A ;
LD (DISPLAYBUF+6),A ;
LD DE,DISPLAYBUF+0
LD A,H
CALL PUTVALUE
LD A,L
CALL PUTVALUE
LD A,$10
LD (DE),A
INC DE
LD (DE),A
INC DE
LD A,(HL) ; GET VALUE FROM ADDRESS IN HL
AND 0FH ; CLEAR OUT HIGH NIBBLE
LD (DISPLAYBUF+7),A ; DISPLAY LOW NIBBLE IN DISPLAY 7
LD HL,DISPLAYBUF ; POINT TO DISPLAY BUFFER
CALL PUTVALUE
CALL ENCDISPLAY ; DISPLAY BUFFER ON DISPLAYS
POP HL ; RESTORE HL
EXAMINEGETKEY:
CALL KB_GET ; GET KEY FROM KB
CP 12H ; [CL] PRESSED, EXIT
JR Z,EXAMINEEXIT ;
JP Z,FRONTPANELLOOP ;
CP 13H ; [EN] PRESSED, INC ADDRESS AND LOOP
JR Z,EXAMINEFW ;
CP 15H ; [DE] PRESSED, PROMPT FOR NEW ADDRESS
@ -1166,12 +1074,44 @@ EXAMINEGETKEY:
JR EXAMINEGETKEY ; NO VALID KEY, LOOP
EXAMINEFW:
INC HL ; HL++
PUSH HL ; STORE HL
JR EXAMINELOOP ;
EXAMINEEXIT:
LD HL,CPUUP ; SET POINTER TO DATA BUFFER
CALL SEGDISPLAY ; DISPLAY
JP FRONTPANELLOOP ;
;
;__DODEPOSIT__________________________________________________________________
;
; PERFORM DEPOSIT FRONT PANEL ACTION
; PANEL TEMPLATE "8888 88"
; POS 01234567
;_____________________________________________________________________________
;
DODEPOSIT:
CALL GETADDR ; GET ADDRESS INTO HL
DEPOSITLOOP:
LD DE,DISPLAYBUF+0
LD A,H
CALL PUTVALUE
LD A,L
CALL PUTVALUE
LD A,$10
LD (DE),A
INC DE
LD (DE),A
CALL GETVALUE ;
LD (HL),A ;
LD DE,DISPLAYBUF+6 ; DISPLAY WRITTEN MEM VALUE
CALL PUTVALUE ; ... WITHOUT DP'S
CALL ENCDISPLAY ; DISPLAY BUFFER CONTENTS
DEPOSITGETKEY:
CALL KB_GET ; GET KEY FROM KB
CP 12H ; [CL] PRESSED, EXIT
JP Z,FRONTPANELLOOP ;
CP 13H ; [EN] PRESSED, INC ADDRESS AND LOOP
JR Z,DEPOSITFW ;
CP 14H ; [DE] PRESSED, PROMPT FOR NEW ADDRESS
JR Z,DODEPOSIT ;
JR DEPOSITGETKEY ; NO VALID KEY, LOOP
DEPOSITFW:
INC HL ;
JR DEPOSITLOOP ;
;
;__GETADDR____________________________________________________________________
;
@ -1181,64 +1121,70 @@ EXAMINEEXIT:
;_____________________________________________________________________________
;
GETADDR:
PUSH BC ; STORE BC
GETADDR0:
LD HL,ADDR ; INITIALIZE DISPLAYBUF
LD DE,DISPLAYBUF
LD BC,8
LDIR
GETADDR1:
LD HL,DISPLAYBUF ; DISPLAY PROMPT
CALL INITBUF
JR GETVALW
;
;__GETVAL16___________________________________________________________________
;
; GET 16 BIT VALUE FROM FRONT PANEL
; PANEL TEMPLATE "????8888"
; POS 01234567
;_____________________________________________________________________________
;
GETVALW:
LD A,80H ;
LD (DISPLAYBUF+4),A ;
LD (DISPLAYBUF+5),A ;
LD (DISPLAYBUF+6),A ;
LD (DISPLAYBUF+7),A ;
GETVALW1:
CALL ENCDISPLAY ;
GETADDRLOOP:
GETVALWLOOP:
CALL KB_GET ;
CP 10H ;
JP M,GETADDRNUM ; NUMBER PRESSED, STORE IT
JP M,GETVALWNUM ; NUMBER PRESSED, STORE IT
CP 13H ; EN PRESSED, DONE
JR Z,GETADDRDONE ;
JR Z,GETVALWDONE ;
CP 12H ; CLEAR PRESSED, CLEAR
JR Z,GETADDR0 ;
JR GETADDRLOOP ; INVALID KEY, LOOP
GETADDRDONE:
LD HL,00H ; HL=0
JR Z,GETVALW ;
JR GETVALWLOOP ; INVALID KEY, LOOP
GETVALWNUM:
OR $80 ; SET DP
LD C,A ;
LD A,(DISPLAYBUF+5) ; SHIFT BYTES IN DISPLAY BUF TO THE LEFT
LD (DISPLAYBUF+4),A ;
LD A,(DISPLAYBUF+6) ;
LD (DISPLAYBUF+5),A ;
LD A,(DISPLAYBUF+7) ;
LD (DISPLAYBUF+6),A ;
LD A,C ; DISPLAY KEYSTROKE IN RIGHT MOST DISPLAY (0)
LD (DISPLAYBUF+7),A ;
JR GETVALW1 ;
GETVALWDONE:
LD A,(DISPLAYBUF+6) ; GET DIGIT IN DISPLAY 6
AND $0F
SLA A ; ROTATE IT TO HIGH NIBBLE
SLA A ;
SLA A ;
SLA A ;
LD C,A ; STORE IT IN "C"
LD A,(DISPLAYBUF+7) ; GET DIGIT IN DISPLAY 7
AND 0FH ; CLEAR HIGH NIBBLE
AND $0F
OR C ; ADD IN NIBBLE STORED IN C
LD L,A ; STORE IT IN LOW BYTE OF ADDRESS POINTER
LD A,(DISPLAYBUF+4) ; GET DIGIT IN DISPLAY 4
AND $0F
SLA A ; ROTATE IT TO HIGH NIBBLE
SLA A ;
SLA A ;
SLA A ;
LD C,A ; STORE IT IN "C"
LD A,(DISPLAYBUF+5) ; GET DIGIT IN DISPLAY 5
AND 0FH ; CLEAR HIGH NIBBLE
AND $0F
OR C ; ADD IN NIBBLE STORED IN "C"
LD H,A ; STORE BYTE IN HIGH BYTE OF ADDRESS POINTER
LD A,10H ; CLEAR OUT DISPLAYS 4,5,6 & 7
LD (DISPLAYBUF+7),A ;
LD (DISPLAYBUF+6),A ;
LD (DISPLAYBUF+5),A ;
LD (DISPLAYBUF+4),A ;
POP BC ; RESTORE BC
RET
GETADDRNUM:
LD C,A ;
LD A,(DISPLAYBUF+5) ; SHIFT BYTES IN DISPLAY BUF TO THE LEFT
LD (DISPLAYBUF+4),A ;
LD A,(DISPLAYBUF+6) ;
LD (DISPLAYBUF+5),A ;
LD A,(DISPLAYBUF+7) ;
LD (DISPLAYBUF+6),A ;
LD A,C ; DISPLAY KEYSTROKE IN RIGHT MOST DISPLAY (0)
LD (DISPLAYBUF+7),A ;
JR GETADDR1 ;
;
;__GETPORT____________________________________________________________________
;
@ -1247,61 +1193,22 @@ GETADDRNUM:
; POS 01234567
;_____________________________________________________________________________
;
;***use getvalue below after init of displaybuf
GETPORT:
PUSH BC ; STORE BC
GETPORT0:
LD HL,PORT ; INITIALIZE DISPLAYBUF
LD DE,DISPLAYBUF
LD BC,8
LDIR
GETPORT1:
LD HL,DISPLAYBUF ; DISPLAY PROMPT
CALL ENCDISPLAY ;
GETPORTLOOP:
CALL KB_GET ;
CP 10H ;
JP M,GETPORTNUM ; NUMBER PRESSED, STORE IT
CP 13H ; EN PRESSED, DONE
JR Z,GETPORTDONE ;
CP 12H ; CLEAR PRESSED, CLEAR
JR Z,GETPORT0
JR GETPORTLOOP ; INVALID KEY, LOOP
GETPORTDONE:
LD A,(DISPLAYBUF+6) ;
SLA A ;
SLA A ;
SLA A ;
SLA A ;
LD C,A ;
LD A,(DISPLAYBUF+7) ;
AND 0FH ;
OR C ;
LD C,A ;
LD A,10H ;
LD (DISPLAYBUF+7),A ;
LD (DISPLAYBUF+6),A ;
LD A,C ;
POP BC ; RESTORE BC
RET
GETPORTNUM:
LD C,A ;
LD A,(DISPLAYBUF+7) ;
LD (DISPLAYBUF+6),A ;
LD A,C ;
LD (DISPLAYBUF+7),A ;
JR GETPORT1 ;
CALL INITBUF
JR GETVALUE
;
;__GETVALUE___________________________________________________________________
;
; GET VALUE FROM FRONT PANEL
; GET 8 BIT VALUE FROM FRONT PANEL
; PANEL TEMPLATE "??????88"
; POS 01234567
;_____________________________________________________________________________
;
GETVALUE:
PUSH BC ; STORE BC
JR GETVALUECLEAR ;
LD A,80H ;
LD (DISPLAYBUF+6),A ;
LD (DISPLAYBUF+7),A ;
GETVALUE1:
CALL ENCDISPLAY ;
GETVALUELOOP:
@ -1311,37 +1218,50 @@ GETVALUELOOP:
CP 13H ; EN PRESSED, DONE
JR Z,GETVALUEDONE ;
CP 12H ; CLEAR PRESSED, CLEAR
JR Z,GETVALUECLEAR ;
JR Z,GETVALUE ;
JR GETVALUELOOP ; INVALID KEY, LOOP
GETVALUEDONE:
LD A,(DISPLAYBUF+6) ;
SLA A ;
SLA A ;
SLA A ;
SLA A ;
LD C,A ;
LD A,(DISPLAYBUF+7) ;
AND 0FH ;
OR C ;
LD C,A ;
LD A,10H ;
LD (DISPLAYBUF+7),A ;
LD (DISPLAYBUF+6),A ;
LD A,C ;
POP BC ; RESTORE BC
RET
GETVALUENUM:
OR $80 ; SET DP
LD C,A ;
LD A,(DISPLAYBUF+7) ;
LD (DISPLAYBUF+6),A ;
LD A,C ;
LD (DISPLAYBUF+7),A ;
JR GETVALUE1 ;
GETVALUECLEAR:
LD A,00H ;
LD (DISPLAYBUF+7),A ;
LD (DISPLAYBUF+6),A ;
JR GETVALUE1 ;
GETVALUEDONE:
LD A,(DISPLAYBUF+6) ;
AND $0F
RLCA ;
RLCA ;
RLCA ;
RLCA ;
LD C,A ;
LD A,(DISPLAYBUF+7) ;
AND $0F
OR C ;
RET
;
;__PUTVALUE___________________________________________________________________
;
; INSERT HEX DIGITS OF A INTO AN ENCODED DSKY DISPLAY BUFFER
; AT POSTION SPECIFIED BY DE. ON RETURN, DE POINTS TO NEXT
; POSITION IN DISPLAY BUFFER.
;_____________________________________________________________________________
;
PUTVALUE:
PUSH AF ; SAVE INCOMING VALUE
RLCA ; HIGH NIBBLE -> LOW NIBBLE
RLCA ; ...
RLCA ; ...
RLCA ; ...
AND $0F ; ISOLATE LOW NIBBLE
LD (DE),A ; PLACE DIGIT VALUE IN BUFFER
INC DE ; NEXT BUFFER POSITION
POP AF ; RECOVER ORIGINAL VALUE
AND $0F ; ISOLATE LOW NIBBLE
LD (DE),A ; PLACE DIGIT VALUE IN BUFFER
INC DE ; NEXT BUFFER POSITION
RET ; DONE
;
;__MTERM_INIT_________________________________________________________________
;
@ -1362,9 +1282,28 @@ MTERM_INIT:
;_____________________________________________________________________________
;
KB_GET:
PUSH BC
PUSH DE
PUSH HL ; SAVE HL
CALL KY_GET ; GET A KEY
POP HL ; RESTORE HL
POP DE
POP BC
RET
;
;__INITBUF____________________________________________________________________
;
; INITIALIZE DISPLAY BUFFER FROM VALUE AT ADDRESS IN HL
;_____________________________________________________________________________
;
INITBUF:
;PUSH BC
;PUSH DE
LD DE,DISPLAYBUF
LD BC,8
LDIR
;POP DE
;POP BC
RET
;
;__ENCDISPLAY_________________________________________________________________
@ -1373,49 +1312,53 @@ KB_GET:
;_____________________________________________________________________________
;
ENCDISPLAY:
PUSH HL
LD HL,DISPLAYBUF
JR ENCBUF0
;
;__ENCBUF_____________________________________________________________________
;
; DISPLAY CONTENTS OF BUFFER AT HL DECODED PER SEGDECODE TABLE
;_____________________________________________________________________________
;
ENCBUF:
PUSH HL ; SAVE HL
ENCBUF0:
PUSH AF ; SAVE AF
PUSH BC ; SAVE BC
PUSH DE ; SAVE DE
LD DE,DECODEBUF ; DESTINATION FOR DECODED BYTES
LD B,8 ; NUMBER OF BYTES TO DECODE
ENCDISPLAY1:
ENCBUF1:
LD A,(HL) ; GET SOURCE BYTE
INC HL ; BUMP TO NEXT BYTE FOR NEXT PASS
PUSH AF ; SAVE IT
AND $80 ; ISOLATE HI BIT (DP)
XOR $80 ; FLIP IT
LD C,A ; SAVE IN C
POP AF ; RECOVER ORIGINAL
AND $7F ; REMOVE HI BIT (DP)
PUSH HL ; SAVE POINTER
LD HL,SEGDECODE
CALL ADDHLA
LD HL,SEGDECODE ; POINT TO DECODE TABLE
CALL ADDHLA ; OFFSET BY INCOMING VALUE
LD A,(HL) ; GET DECODED VALUE
OR C ; RECOMBINE WITH DP VALUE
LD (DE),A ; SAVE IN DEST BUF
INC DE ; INC DEST BUF PTR
POP HL ; RESTORE POINTER
DJNZ ENCDISPLAY1 ; LOOP THRU ALL BUF POSITIONS
DJNZ ENCBUF1 ; LOOP THRU ALL BUF POSITIONS
LD HL,DECODEBUF ; POINT TO DECODED BUFFER
CALL SEGDISPLAY ; DISPLAY IT
CALL DSKY_SHOWRAW ; DISPLAY IT
POP DE ; RESTORE DE
POP BC ; RESTORE BC
POP AF ; RESTORE AF
POP HL ; RESTORE HL
RET
;
;__SEGDISPLAY_________________________________________________________________
;
; DISPLAY CONTENTS OF DISPLAYBUF IN DECODED HEX BITS 0-3 ARE DISPLAYED DIG, BIT 7 IS DP
;
;_____________________________________________________________________________
;
;***remove this and replace occurences with dsky_showraw
SEGDISPLAY:
PUSH AF
PUSH BC
CALL DSKY_SHOWRAW
POP BC
POP AF
RET
;
CPUUP .DB $84,$CB,$EE,$BB,$80,$BB,$EE,$84 ; "-CPU UP-" (RAW)
ADDR .DB $17,$18,$19,$10,$00,$00,$00,$00 ; "Adr 0000" (ENCODED)
PORT .DB $13,$14,$15,$16,$10,$10,$00,$00 ; "Port 00" (ENCODED)
GOTO .DB $1A,$14,$10,$10,$00,$00,$00,$00 ; "Go 0000" (ENCODED)
;_KB DECODE TABLE_____________________________________________________________
;
@ -1438,15 +1381,13 @@ KB_DECODE:
;
;_HEX 7_SEG_DECODE_TABLE______________________________________________________
;
; 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F, ,-,.,P,o
; AND WITH 7FH TO TURN ON DP
; SET BIT 7 TO DISPLAY W/ DECIMAL POINT
;_____________________________________________________________________________
SEGDECODE:
; 0 1 2 3 4 5 6 7 8 9 A B C D E F
.DB $FB,$B0,$ED,$F5,$B6,$D7,$DF,$F0,$FF,$F7,$FE,$9F,$CB,$BD,$CF,$CE
; - . P o r t A d r
.DB $80,$84,$00,$EE,$9D,$8C,$94,$FE,$BD,$8C
.DB $7B,$30,$6D,$75,$36,$57,$5F,$70,$7F,$77,$7E,$1F,$4B,$3D,$4F,$4E
; - . P o r t A d r G
.DB $00,$04,$00,$6E,$1D,$0C,$14,$7E,$3D,$0C,$5B
;
DISPLAYBUF: .FILL 8,0
DECODEBUF: .FILL 8,0

2
Source/HBIOS/romldr.asm

@ -237,7 +237,7 @@ SEL2:
JP NZ,SEL3
;
LD A,BOOT_DEFAULT ; TIMEOUT EXPIRED,
JR MENU_A ; PERFORM DEFAULT BOOT ACTION
JR MATS ; PERFORM DEFAULT BOOT ACTION
#ENDIF
;
SEL3:

Loading…
Cancel
Save