home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Serving the Web
/
ServingTheWeb1995.disc1of1.iso
/
connect
/
tcpip
/
crynwr
/
pktd11b
/
memtest.asm
< prev
next >
Wrap
Assembly Source File
|
1992-08-05
|
922b
|
23 lines
;written by Russell Nelson, improved by Jan Engvald to drain capacitive mem.
memory_test:
;enter with ax = segment of memory to test, cx = number of bytes to test.
;exit with ne, bx->failing byte if the memory test failed.
push ds
mov ds,ax
mov bx,-1
memory_test_1:
inc bx
mov al,ds:[bx] ;get a copy of the location.
mov ah,ds:[bx+2] ;get a copy of the location.
not al
mov ds:[bx],al ;try to store the complement.
mov ds:[bx+2],ah ;drain any capacitive memory
mov ah,al
not ah
cmp ds:[bx],al ;did the store work?
mov ds:[bx],ah ;(in any case, restore the original)
loope memory_test_1 ;keep going if the store worked.
pop ds
ret