Article View: comp.sys.ibm.pc.misc
Article #3432Does popf problem remain?
From: Mark DiVecchio
Date: Tue, 25 Sep 1990 17:17
Date: Tue, 25 Sep 1990 17:17
40 lines
2139 bytes
2139 bytes
I'v been writing assembly language programs for years and I continue
to use the macro described in the next paragraph mostly out of fear.
Does anyone know if I should still worry about the problem worked
around by the macro?
;
; For the PC-AT:
; POPF macro described in the IBM Personal Computer
; Seminar Proceedings Volume 2, Number 4 September 1984
; QUOTE
; "If the system microprocessor executes a POPF instruction in either
; the real or the virtual address mode with CPL <= IOPL, then a
; pending maskable interrupt (the INTR pin active) may be improperly
; recognized after executing the POPF instruction even if maskable
; interrupts were disabled before the POPF instruction and the value
; popped had IF=0. If the interrupt is improperly recognized, the
; interrupt is still correctly executed. This errata has no effect
; when interrupts are enabled in either real or virtual address mode.
; The errata has no effect in the virtual address mode when
; CPL > IOPL."
;
popff macro ;use POPFF instead of POPF
local popem,skip
;simulate popping flags using IRET
jmp short skip ;jump around iret
popem:
iret ;pop CS,IP,flags
skip:
push CS
call popem ;call within segment
;program will continue here
endm
--
Mark DiVecchio, Silogic Systems, 619-549-9841 K3FWT
----- 9888 Carroll Center Road, Suite 113, San Diego, CA 92126 -----
markd@silogic BBS 619-549-3927
...!ucsd!celerity!celit!silogic!markd celerity!silogic!markd@ucsd.edu
Technical Details
Message-ID:
<256@silogic.UUCP>Path:
arc1-ca.pugleaf.net!utzoo!attcan!uunet!aplcen!uakari.primate.wisc.edu!sdd.hp.com!ucsd!network.ucsd.edu!celit!silogic!markdShow Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!attcan!uunet!aplcen!uakari.primate.wisc.edu!sdd.hp.com!ucsd!network.ucsd.edu!celit!silogic!markd From: markd@silogic.UUCP (Mark DiVecchio) Newsgroups: comp.sys.ibm.pc.misc Subject: Does popf problem remain? Keywords: IBM AT 286 Message-ID: <256@silogic.UUCP> Date: 25 Sep 90 17:17:24 GMT Organization: Silogic Systems, San Diego, CA Lines: 40