diff --git a/Source/Apps/ramtest/dbgmon.asm b/Source/Apps/ramtest/dbgmon.asm index 82a2f1a2..386e31a0 100644 --- a/Source/Apps/ramtest/dbgmon.asm +++ b/Source/Apps/ramtest/dbgmon.asm @@ -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: diff --git a/Source/ver.inc b/Source/ver.inc index cee8491e..e6eae119 100644 --- a/Source/ver.inc +++ b/Source/ver.inc @@ -2,4 +2,4 @@ #DEFINE RMN 1 #DEFINE RUP 1 #DEFINE RTP 0 -#DEFINE BIOSVER "3.1.1-pre.94" +#DEFINE BIOSVER "3.1.1-pre.95" diff --git a/Source/ver.lib b/Source/ver.lib index 50b919b9..77c2db9a 100644 --- a/Source/ver.lib +++ b/Source/ver.lib @@ -3,5 +3,5 @@ rmn equ 1 rup equ 1 rtp equ 0 biosver macro - db "3.1.1-pre.94" + db "3.1.1-pre.95" endm