|
|
|
@ -916,8 +916,9 @@ DORAMTEST: |
|
|
|
LD A,$00 ; INITIALIZE A TO 0 |
|
|
|
|
|
|
|
DATABUSCHECK: |
|
|
|
LD C,A |
|
|
|
LD ($0000),A ; WRITE TO LOWEST RAM ADDRESS |
|
|
|
LD C,($0000) ; READ VALUE FROM LOWEST RAM ADDRESS |
|
|
|
LD A,($0000) ; READ VALUE FROM LOWEST RAM ADDRESS |
|
|
|
CP C ; IS IT SAME AS WRITTEN? |
|
|
|
JP NZ,DATABUSFAIL ; NO? DATA BUS FAIL HANDLER ROUTINE |
|
|
|
INC A ; YES, GET NEXT VALUE |
|
|
|
@ -947,7 +948,8 @@ DATABUSFAIL: |
|
|
|
|
|
|
|
ADDRBUSCHECK: |
|
|
|
LD (HL),$FF ; WRITE ALL ONES INTO HL ADDRESS |
|
|
|
LD C,($0000) ; READ VALUE FROM LOWEST RAM ADDRESS |
|
|
|
LD C,$00 |
|
|
|
LD A,($0000) ; READ VALUE FROM LOWEST RAM ADDRESS |
|
|
|
CP C ; IS IT SAME AS WRITTEN? SHOULD BE 0 |
|
|
|
JP NZ,ADDRBUSFAIL ; NO? ADDR BUS FAIL HANDLER ROUTINE |
|
|
|
PUSH HL ; STORE HL, FOR COPY TO BC |
|
|
|
@ -968,7 +970,7 @@ ADDRBUSFAIL: |
|
|
|
LD A,H ; PRINT UPPER HALF OF ADDRESS |
|
|
|
PUSH HL ; STORE FAILED ADDR LINE VALUE |
|
|
|
CALL HXOUT ; PRINT HIGH ADDR HALF THAT FAILED |
|
|
|
POP LH ; RETRIEVE FAILED ADDR LINE VALUE |
|
|
|
POP HL ; RETRIEVE FAILED ADDR LINE VALUE |
|
|
|
LD A,L ; PRINT LOWER HALF OF ADDRESS |
|
|
|
CALL HXOUT ; PRINT LOW ADDR HALF THAT FAILED |
|
|
|
LD HL,TCRLF ; CR & LF |
|
|
|
@ -1116,13 +1118,30 @@ RAM_PASS: |
|
|
|
|
|
|
|
|
|
|
|
RAM_FAIL: |
|
|
|
LD HL,TXT_RAM_FAIL ; POINT AT SYNTAX RAM FAIL TEXT |
|
|
|
PUSH HL |
|
|
|
LD HL,TXT_RAM_FAIL1 ; POINT AT 1ST SYNTAX RAM FAIL TEXT |
|
|
|
CALL MSG ; DISPLAY IT |
|
|
|
LD A,(PAGE_NUM) ; GET CURRENT PAGE NUMBER |
|
|
|
SUB $80 |
|
|
|
CALL HXOUT ; SHOW IT |
|
|
|
LD HL,TXT_RAM_FAIL2 ; POINT AT 2ND SYNTAX RAM FAIL TEXT |
|
|
|
CALL MSG ; DISPLAY IT |
|
|
|
|
|
|
|
POP HL ; RETRIEVE FAILED ADDR VALUE |
|
|
|
LD A,H ; PRINT UPPER HALF OF ADDRESS |
|
|
|
PUSH HL ; STORE FAILED ADDR VALUE |
|
|
|
CALL HXOUT ; PRINT HIGH ADDR HALF THAT FAILED |
|
|
|
POP HL ; RETRIEVE FAILED ADDR LINE VALUE |
|
|
|
LD A,L ; PRINT LOWER HALF OF ADDRESS |
|
|
|
CALL HXOUT ; PRINT LOW ADDR HALF THAT FAILED |
|
|
|
LD HL,TCRLF ; CR & LF |
|
|
|
CALL MSG ; DISPLAY IT |
|
|
|
|
|
|
|
LD A,(PAGE_NUM) ; GET WORKING PAGE NUMBER |
|
|
|
DEC A ; MARK PAGE COMPLETE, MOVE TO NEXT |
|
|
|
LD (PAGE_NUM),A ; STORE UPDATED PAGE NUMBER |
|
|
|
CP $7F ; WAS THAT THE LAST PAGE? |
|
|
|
JP NZ,RAMTEST ; NO? DO ANOTHER 32KB PAGE |
|
|
|
JP SERIALCMDLOOP ; AND BACK TO COMMAND LOOP |
|
|
|
|
|
|
|
|
|
|
|
@ -1201,9 +1220,14 @@ TXT_RAM_PASS: |
|
|
|
.DB "RAM PASS, PAGE = " |
|
|
|
.DB ENDT |
|
|
|
|
|
|
|
TXT_RAM_FAIL: |
|
|
|
TXT_RAM_FAIL1: |
|
|
|
.DB CR,LF |
|
|
|
.DB "RAM FAIL, 32KB PAGE NUMBER: " |
|
|
|
.DB ENDT |
|
|
|
|
|
|
|
TXT_RAM_FAIL2: |
|
|
|
.DB CR,LF |
|
|
|
.DB " ADDRESS " |
|
|
|
.DB CR,LF,ENDT |
|
|
|
|
|
|
|
TXT_DATA_BUS_FAIL: |
|
|
|
|