8326442@awiwuw11.wu-wien.ac.at (12/28/90)
Environment : MS-DOS 4.01 , 286 NEAT-Motherboard at 20 MHz with 1 WS , BIOS from CHips & Technologies 2 MB RAM (80 ns , 2 Banks of 1 MBit Chips ) a Seagate ST296N SCSI Drive and a Seagate ST02 SCSI adaptor-card an EVA/1024 8-bit Vga-card with 512K , Tseng Chipset ( max 1024 * 768 * 16) a noname Multisync-Monitor My Problem sounds trivial,unbelievable but it's serious somehow. I tried to simulate a virus in memory to force a warning when scanning memory with McAffee's Scan V71c option /m for scanning memory for all known viruses. to do so , i wrote a very short assembler program , which does nothing than 1 ) get the old msdos interrupt ( Int 21h ) 2 ) save this interrupt in it's code 3) set the msdos interrupt to its own code 4) if function 4b is called with 'FFh' in AL-register the answer should be '55aa' in the bx-register sounds quite simple . BUT when i try to get the int 21h pointer , I always receive junk from the interrupt call ( AX = 2521h or 35 one is get the other set , then int 21h). its the same rusult whether i watch with a debugger or not ( i tried Quaid's Analyzer, Turbo Debugger V 1.0, MS Codeview 5.1 ) . i even tried to read the interupt vector table manually , but that also failed. When i tried something similar on my older system ( ST225 mfm instead of SCSi and 640 KB , Running at 10 Mhz 0 WS ) it worked well. NAturally all tools which manipulate the interrupt-vectors work fine, just my self-written program doesn't. is there anybody out there with a solution , it's driving me crazy . martin zejma from vienna, austria please e-mail to me , 'cause i'm no regular reader of this newsgroup