mirror of
https://github.com/ichmagmaus111/ghostgram.git
synced 2026-07-17 04:57:18 +02:00
32 lines
774 B
NASM
32 lines
774 B
NASM
[BITS 32]
|
|
|
|
[MAP all]
|
|
; This file is loaded as a DOS .COM file.
|
|
[SEGMENT _TEXT start=0 vstart=100h]
|
|
|
|
; shrink & relocate stack:
|
|
mov sp, stack_ends ; NASM puts 460h here -
|
|
; 9B0h is desired.
|
|
mov bx, sp
|
|
mov cl, 4
|
|
shr bx, cl
|
|
mov ah, 4Ah ; DOS resize mem.block
|
|
int 21h
|
|
|
|
[SEGMENT GATESEG align=1 follows=_TEXT vstart=0]
|
|
; label to use for copying this segment at run-time.
|
|
gate0cpy:
|
|
dd 0
|
|
|
|
; 32-bit ring-0 protected mode code that interacts
|
|
; with the VMM (Win3.x/9x kernel). To be relocated
|
|
; at run-time to memory dynamically allocated with
|
|
; DPMI, and called through a call-gate from ring-3.
|
|
; vstart=0 makes some calculations easier.
|
|
|
|
; Reserve space for stack:
|
|
[SEGMENT .bss follows=GATESEG align=16]
|
|
resb 400h
|
|
stack_ends:
|
|
|