Category : System Diagnostics for your computer
Archive   : 386POPAD.ZIP
Filename : 386BUGS.ASM

 
Output of file : 386BUGS.ASM contained in archive : 386POPAD.ZIP
.386
;
; BUGTST.ASM - By: John Lauro
; Based on bug found by Jeff Prothero
;
DATA SEGMENT USE16 PUBLIC
MOK DB 'POPAD ok',13,10,'$'
MNOTOK DB '*** POPAD fails test ***',13,10,'$'
DATA ENDS
;
;
STKSEG SEGMENT USE16 STACK
DW 100 DUP(?)
STKSEG ENDS
;
;
CODE SEGMENT USE16 PUBLIC
ASSUME CS:CODE,SS:STKSEG,DS:DATA
CODES PROC FAR
START: MOV AX,DATA
MOV DS,AX

mov eax,12345678
mov edx, 0
mov edi, 0
pushad
popad

; The instruction immediately following popad is the critical
; instruction. Simple fix, insert a NOP after popad.

mov ecx, [edx+edi]

cmp eax, 12345678
je ok
mov dx, offset mnotok
outmsg: mov ah, 09h ; ConStringOutput
int 21h

mov ah, 4ch ; Exit
mov al, 0
int 21h

ok: mov dx, offset mok
jmp outmsg

CODES ENDP
CODE ENDS
END START




  3 Responses to “Category : System Diagnostics for your computer
Archive   : 386POPAD.ZIP
Filename : 386BUGS.ASM

  1. Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

  2. This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

  3. But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: http://www.os2museum.com/wp/mtswslnk/