|
|
|
@ -918,21 +918,21 @@ HB_START1: ; BNKCALL ARRIVES HERE, BUT NOW RUNNING IN RAM BANK |
|
|
|
; |
|
|
|
; PLATFORM SPECIFIC CODE FOR DETECTING RECOVERY MODE SWITCH |
|
|
|
; |
|
|
|
#IF (BT_REC_TYPE!=BT_REC_NONE) |
|
|
|
#IF (BT_REC_TYPE==BT_REC_FORCE) |
|
|
|
#IF (BT_REC_TYPE != BT_REC_NONE) |
|
|
|
#IF (BT_REC_TYPE == BT_REC_FORCE) |
|
|
|
LD A,1 ; SET FOR RECOVERY MODE |
|
|
|
LD (HB_BOOT_REC),A ; SAVE FOR LATER |
|
|
|
#ENDIF |
|
|
|
#IF (PLATFORM == PLT_SBC) |
|
|
|
#IF (BT_REC_TYPE==BT_REC_SBC01) |
|
|
|
LD A,%00100000 ; DISABLE RTC AND |
|
|
|
#ENDIF |
|
|
|
#IF (PLATFORM == PLT_SBC) |
|
|
|
#IF (BT_REC_TYPE == BT_REC_SBC01) |
|
|
|
LD A,%00100000 ; DISABLE RTC AND |
|
|
|
OUT (RTCIO),A ; DRQ DRIVER READ |
|
|
|
IN A,(RTCIO) ; BIT 0 (DRQ). |
|
|
|
CPL ; PULLED HIGH |
|
|
|
AND 1 ; IS RECOVERY MODE |
|
|
|
LD (HB_BOOT_REC),A ; SAVE FOR LATER |
|
|
|
#ENDIF |
|
|
|
#IF (BT_REC_TYPE==BT_REC_SBC02) |
|
|
|
#ENDIF |
|
|
|
#IF (BT_REC_TYPE == BT_REC_SBC02) |
|
|
|
IN A,(RTCIO) ; RTC PORT, BIT 6 HAS THE |
|
|
|
BIT 6,A ; STATE OF CONFIG JUMPER |
|
|
|
LD A,1 ; JUMPER INSTALLED |
|
|
|
@ -940,8 +940,8 @@ HB_START1: ; BNKCALL ARRIVES HERE, BUT NOW RUNNING IN RAM BANK |
|
|
|
LD A,0 |
|
|
|
SAVE_REC_M: |
|
|
|
LD (HB_BOOT_REC),A ; SAVE FOR LATER |
|
|
|
#ENDIF |
|
|
|
#ENDIF |
|
|
|
#ENDIF |
|
|
|
#ENDIF |
|
|
|
; |
|
|
|
DIAG(%00001111) |
|
|
|
@ -1189,7 +1189,7 @@ HB_CPU2: |
|
|
|
LD B,PC_INITTBLLEN |
|
|
|
POP DE ; POP (1) DE IS ADDRESS OF TOP OF TABLE |
|
|
|
|
|
|
|
#IF (BT_REC_TYPE!=BT_REC_NONE) |
|
|
|
#IF (BT_REC_TYPE != BT_REC_NONE) |
|
|
|
LD A,(HB_BOOT_REC) ; IF WE ARE IN RECOVERY MODE |
|
|
|
OR A ; POINT TO THE RECOVER MODE |
|
|
|
JR Z,NOT_REC_M0 ; INITIALIZATION TABLE |
|
|
|
@ -1372,15 +1372,16 @@ HB_SPDTST: |
|
|
|
; |
|
|
|
CALL NEWLINE |
|
|
|
|
|
|
|
#IF (BT_REC_TYPE!=BT_REC_NONE) |
|
|
|
#IF (BT_REC_TYPE != BT_REC_NONE) |
|
|
|
LD A,(HB_BOOT_REC) ; IF WE ARE IN RECOVERY MODE |
|
|
|
OR A ; POINT TO THE RECOVER MODE |
|
|
|
JR Z,NOT_REC_M1 ; INITIALIZATION TABLE |
|
|
|
LD B,HB_INITRLEN |
|
|
|
LD DE,HB_INIT_REC |
|
|
|
JR IS_REC_M1 |
|
|
|
NOT_REC_M1: |
|
|
|
#ENDIF |
|
|
|
|
|
|
|
NOT_REC_M1: |
|
|
|
LD B,HB_INITTBLLEN |
|
|
|
LD DE,HB_INITTBL |
|
|
|
IS_REC_M1: |
|
|
|
@ -1485,7 +1486,6 @@ CALLLIST: |
|
|
|
CALLDUMMY: |
|
|
|
RET |
|
|
|
|
|
|
|
#IF (BT_REC_TYPE!=BT_REC_NONE) |
|
|
|
; |
|
|
|
;================================================================================================== |
|
|
|
; TABLE OF RECOVERY MODE INITIALIZATION ENTRY POINTS |
|
|
|
@ -1493,25 +1493,28 @@ CALLDUMMY: |
|
|
|
; |
|
|
|
; USE "CALLDUMMY" IF NO ENTRY REQUIRED |
|
|
|
; |
|
|
|
#IF (BT_REC_TYPE != BT_REC_NONE) |
|
|
|
; |
|
|
|
PC_INIT_REC: |
|
|
|
#IF (PLATFORM == PLT_SBC) |
|
|
|
#IF (PLATFORM == PLT_SBC) |
|
|
|
.DW UART_PREINIT |
|
|
|
; .DW CALLDUMMY |
|
|
|
#ENDIF |
|
|
|
#ENDIF |
|
|
|
PC_INITRLEN .EQU (($ - PC_INIT_REC) / 2) |
|
|
|
; |
|
|
|
HB_INIT_REC: |
|
|
|
#IF (PLATFORM == PLT_SBC) |
|
|
|
#IF (PLATFORM == PLT_SBC) |
|
|
|
.DW UART_INIT |
|
|
|
.DW MD_INIT |
|
|
|
#ENDIF |
|
|
|
#ENDIF |
|
|
|
HB_INITRLEN .EQU (($ - HB_INIT_REC) / 2) |
|
|
|
; |
|
|
|
#ENDIF |
|
|
|
; |
|
|
|
;================================================================================================== |
|
|
|
; TABLE OF PRE-CONSOLE INITIALIZATION ENTRY POINTS |
|
|
|
;================================================================================================== |
|
|
|
|
|
|
|
; |
|
|
|
PC_INITTBL: |
|
|
|
.DW CALLDUMMY ; RESERVED FOR FORCING PRIMARY CONSOLE |
|
|
|
#IF (ASCIENABLE) |
|
|
|
@ -3986,7 +3989,7 @@ RTCVAL .DB 0 ; SHADOW VALUE FOR RTC LATCH PORT |
|
|
|
; |
|
|
|
HB_BATCOND .DB 0 ; BATTERY CONDITION (0=LOW, 1=OK) |
|
|
|
; |
|
|
|
#IF (BT_REC_TYPE!=BT_REC_NONE) |
|
|
|
#IF (BT_REC_TYPE != BT_REC_NONE) |
|
|
|
HB_BOOT_REC .DB 0 ; BOOT MODE (0=NORMAL, 1=RECOVERY MODE) |
|
|
|
#ENDIF |
|
|
|
; |
|
|
|
|