home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.whtech.com
/
ftp.whtech.com.tar
/
ftp.whtech.com
/
club100
/
pg
/
pg200
/
memchk.src
< prev
next >
Wrap
Text File
|
2006-10-19
|
1KB
|
66 lines
;MEMCHK.CO by Paul Globman (c) 1988
;
;This is a non-destructive RAM test
;that tests all of RAM, including the
;locations where the program is loaded
;to run. It tests all bits in all RAM
;locations for reading and writing and
;will beep 5 times upon finding a bad
;RAM location. If no problem RAM is
;found, then 1 beep is sent.
;
;
RAMSTA: equ A000H ;1st byte ram
ALTLCD: equ 63574 ;alt lcd buffer
BEEP: equ 4F45H ;send beep
;
org altlcd
entry
;
jmp memchk
MEMCH2: lxi d,0 ;end of RAM + 1
next2: mov a,m ;HL=adrs tested
mov b,a ;byte in B
cma
mov c,a ;complmnt in C
mov m,a ;chnge RAM bits
mov a,m ;look at byte
cmp c ;bits chnge ok?
mov m,b ;restore byte
jnz bad ;no? error
mov a,m ;look at byte
cmp b ;bits chnge ok?
jnz bad ;no? error
inx h ;next address
rst 3 ;end of ram?
jnz next2
jmp done
;======================================
MEMCHK: lxi d, memchk
lxi h,ramsta
next: mov a,m ;HL=adrs tested
mov b,a ;byte in B
cma
mov c,a ;complmnt in C
mov m,a ;chnge RAM bits
mov a,m ;look at byte
cmp c ;bits chnge ok?
mov m,b ;restore byte
jnz bad ;no? error
mov a,m ;look at byte
cmp b ;bits chnge ok?
jnz bad ;no? error
inx h ;next address
rst 3 ;memchk yet?
jnz next
jmp memch2
;======================================
bad: call beep ;5 beeps means
call beep ;bad ram...
call beep
call beep ;1 beep means
done: jmp beep ;all is well
;
end