mirror of
https://github.com/NishiOwO/VZEditor.git
synced 2025-04-21 16:44:40 +00:00
122 lines
1.7 KiB
NASM
122 lines
1.7 KiB
NASM
;****************************
|
||
; 'vzsel.asm'
|
||
;****************************
|
||
|
||
STDSEG equ TRUE
|
||
|
||
include std.inc
|
||
|
||
;--- Equations ---
|
||
|
||
ID_UNKNOWN equ 0
|
||
ID_PC98 equ 1
|
||
ID_J31 equ 2
|
||
ID_IBM equ 3
|
||
ID_IBM_MONO equ 4
|
||
ID_AX equ 5
|
||
ID_DOSV equ 6
|
||
ID_PS55 equ 7
|
||
ID_PS55_MONO equ 8
|
||
|
||
cseg
|
||
; assume ds:code
|
||
|
||
;--- VZSEL Main ---
|
||
|
||
org 100h
|
||
entry:
|
||
IF 0
|
||
mov dl,ID_PC98 ; PC-9801
|
||
ldseg ds,0C000h
|
||
clr bx
|
||
mov ax,[bx]
|
||
cmp ax,0AA55h
|
||
_ifn e
|
||
clr ax
|
||
mov es,ax
|
||
mov ax,es:[0DCh*4]
|
||
cmp ax,es:[0DCh*4+4]
|
||
jne exit
|
||
_endif
|
||
ENDIF
|
||
mov al,-1
|
||
bios_v 0Fh
|
||
mov dl,ID_PC98 ; PC-9801
|
||
cmp al,-1
|
||
je exit
|
||
|
||
mov dl,ID_J31 ; J-3100
|
||
cmp al,74h
|
||
je exit
|
||
cmp al,64h
|
||
je exit
|
||
|
||
mov dl,ID_PS55_MONO ; PS/55
|
||
cmp al,08h
|
||
je exit
|
||
mov dl,ID_PS55
|
||
cmp al,0Eh
|
||
je exit
|
||
mov dl,ID_IBM_MONO
|
||
cmp al,07h
|
||
je exit
|
||
|
||
clr si
|
||
msdos 63h,0
|
||
mov dl,ID_IBM
|
||
tst si
|
||
jz exit
|
||
tstw [si]
|
||
jz exit
|
||
|
||
mov bx,0B800h ; DOS/V
|
||
mov es,bx
|
||
clr di
|
||
bios_v 0FEh
|
||
mov ax,es
|
||
cmp ax,bx
|
||
mov dl,ID_DOSV
|
||
jne exit
|
||
|
||
bios_v 50h,1 ; AX
|
||
mov dl,ID_AX
|
||
tst al
|
||
_if z
|
||
cmp bx,51h
|
||
je exit
|
||
mov dl,ID_IBM
|
||
cmp bx,01h ; AX/US
|
||
je exit
|
||
_endif
|
||
_endif
|
||
mov dl,ID_UNKNOWN
|
||
exit: clr dh
|
||
push dx
|
||
shlm dx,3
|
||
add dx,offset mg_hardware
|
||
movseg ds,cs
|
||
msdos F_DSPSTR
|
||
mov dx,offset mg_crlf
|
||
msdos F_DSPSTR
|
||
pop ax
|
||
msdos F_TERM
|
||
|
||
mg_hardware db "unknown$"
|
||
db "PC-9801$"
|
||
db "J-3100$ "
|
||
db "IBM PC$ "
|
||
db "IBM(BW)$"
|
||
db "AX$ "
|
||
db "DOS/V$ "
|
||
db "PS/55$ "
|
||
db "PS/55(BW)$"
|
||
mg_crlf db 0Dh,0Ah,'$'
|
||
|
||
endcs
|
||
end entry
|
||
|
||
;****************************
|
||
; End of 'vzsel.asm'
|
||
; Copyright (C) 1989 by c.mos
|
||
;****************************
|
||
|