Mail Archives: opendos/2003/12/09/09:51:26
This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.
------_=_NextPart_000_01C3BE64.08119250
Content-Type: text/plain;
charset="iso-8859-2"
Yes, and thank you I am testing with it now (So far it is very good!) Our
current client is very paranoid (go figure in the gamin industry) and
reviews all of our source before it is fielded. So if I am asked, I have
to be able to rebuild all of these files (they aren't coders, but they do
have some things they look for) :(
BTW I attached the modified asm files. I am currently downloading NASM.
-----Original Message-----
From: Michal H. Tyc [mailto:mht AT bttr-software DOT de]
Sent: Tuesday, December 09, 2003 9:58 AM
To: opendos AT delorie DOT com
Subject: Re: DR Dos on a P4
On Mon, 8 Dec 2003 11:06:36 -0600, Jacob Brewer wrote:
> My assembler isn't too good. I am having problems getting the line "not
> dword [es:bx + di]" to compile in MASM6.11. I am getting a syntax error
:(
> Is it the same as "not [es:bx + di]"
This source is in NASM syntax, which is somewhat simplified
in comparison with MASM. In some aspects (like square brackets
around memory references) it resembles TASM in Ideal mode.
Sometimes I like NASM and sometimes I don't... nobody is perfect.
Anyway, it seems that Arkady already explained everything.
BTW, didn't you get my private message with CLRVDISK.COM attached,
or you just want to rebuild it from the source?
Michal
------_=_NextPart_000_01C3BE64.08119250
Content-Type: application/octet-stream;
name="CLRVDISK.asm"
Content-Disposition: attachment;
filename="CLRVDISK.asm"
title Clear VDisk (CLRVDISK.com)
; CLRVDISK.COM
; Clear VDISK signature in HMA if A20 enabled at boot time,
; which happens on some systems (as Toshiba Satellite 300CDS)
; and causes memorys manager initialization error
; Add INSTALL=CLRVDISK.COM in [D]CONFIG.SYS before the memory
; manager; this works under DR-DOS only, as MS-DOS processes
; INSTALL= directives too late
; Intel syntax (NASM), 80386+
.386
CSEG SEGMENT PARA PUBLIC 'CODE'
ASSUME CS:CSEG,DS:CSEG,ES:CSEG,SS:CSEG
org 100h ; SKIP TO THE END OF THE PSP
ENTRY: JMP START ; SKIP DATA
START PROC NEAR
xor bx, bx
mov ds, bx ; ds = 0
dec bx
mov es, bx ; es = 0FFFFh
mov bx, 200h ; word to compare: unused INT 80h vector
mov di, 10h ; offset of HMA in segment 0FFFFh
mov ax, [bx]
cmp ax, [es:[bx] + di] ; cmp ax, [es:bx + di] ; 20-bit address wrap test
jne clear ; words differ, A20 enabled
; not DWord [es:bx + di] ; not sure yet, try modifying HMA
not dword PTR [es:[bx] + di] ; not sure yet, try modifying HMA
cmp ax, [bx]
jne done ; 0:200h changed, so A20 is disabled
clear:
cld
mov cx, di ; length = 10h words, dest = HMA start
xor ax, ax
rep stosw ; clear VDISK header (if any)
done:
ret ; return via INT 20h
RET ; RETURN TO DOS OR SYMDEB
START ENDP
CSEG ENDS
END ENTRY
------_=_NextPart_000_01C3BE64.08119250
Content-Type: application/octet-stream;
name="build.bat"
Content-Disposition: attachment;
filename="build.bat"
bin\ml /AT /coff /c clrvdisk.asm
link -subsystem:console /entry:START -out:clrvdisk.com clrvdisk.obj
------_=_NextPart_000_01C3BE64.08119250--
- Raw text -