feat: intégration du programme detect.asm dans le shell sous la forme de la commande detect
This commit is contained in:
parent
e46b38631b
commit
517222ec54
|
@ -1,7 +1,7 @@
|
|||
asm= lzasm /z/t
|
||||
lnk= elink
|
||||
|
||||
all: detect.ce exem-lib.lib exem-ce.ce pmode.ce isa.ce editeur.ce volume.ce test.ce verifier.ce gestion.ce logo.ce souris.ce
|
||||
all: exem-lib.lib exem-ce.ce pmode.ce isa.ce editeur.ce volume.ce test.ce verifier.ce gestion.ce logo.ce souris.ce
|
||||
|
||||
.asm.obj:
|
||||
$(asm) $<
|
||||
|
|
|
@ -1,124 +0,0 @@
|
|||
model tiny,stdcall
|
||||
p586N
|
||||
locals
|
||||
jumps
|
||||
codeseg
|
||||
option procalign:byte
|
||||
|
||||
include "..\include\mem.h"
|
||||
include "..\include\divers.h"
|
||||
include "..\include\cpu.h"
|
||||
include "..\include\pci.h"
|
||||
|
||||
org 0h
|
||||
|
||||
|
||||
start:
|
||||
header exe <,1,0,,,offset imports,,offset realstart>
|
||||
|
||||
realstart:
|
||||
call [cs:print],offset msg_cpu_detect
|
||||
call [cs:cpuinfo],offset thecpu
|
||||
call [cs:setinfo],offset thecpu,offset temp
|
||||
call [cs:print],offset msg_ok2
|
||||
push offset temp
|
||||
xor eax,eax
|
||||
mov al,[thecpu.family]
|
||||
push eax
|
||||
mov al,[thecpu.models]
|
||||
push eax
|
||||
mov al,[thecpu.stepping]
|
||||
push eax
|
||||
push offset thecpu.names
|
||||
push offset thecpu.vendor
|
||||
call [cs:print],offset msg_cpu_detect_inf
|
||||
call [cs:print],offset msg_pci
|
||||
call [cs:pciinfo],offset thepci
|
||||
jc nopci
|
||||
call [cs:print],offset msg_ok2
|
||||
xor eax,eax
|
||||
mov al,[thepci.maxbus]
|
||||
push eax
|
||||
mov al,[thepci.version_minor]
|
||||
push eax
|
||||
mov al,[thepci.version_major]
|
||||
push eax
|
||||
call [cs:print],offset msg_pci_info
|
||||
call [cs:print],offset msg_pci_enum
|
||||
xor bx,bx
|
||||
xor cx,cx
|
||||
xor si,si
|
||||
searchpci:
|
||||
call [cs:getcardinfo],bx,cx,si,offset temp
|
||||
jc stopthis
|
||||
mov al,[(pcidata offset temp).subclass]
|
||||
push ax
|
||||
mov al,[(pcidata offset temp).class]
|
||||
push ax
|
||||
call [cs:getpcisubclass]
|
||||
push dx
|
||||
push ax
|
||||
mov al,[(pcidata offset temp).class]
|
||||
xor ah,ah
|
||||
push ax
|
||||
call [cs:getpciclass]
|
||||
push dx
|
||||
push ax
|
||||
push 4
|
||||
push esi
|
||||
push 4
|
||||
push ecx
|
||||
push 4
|
||||
push ebx
|
||||
mov ax,[(pcidata offset temp).device]
|
||||
push eax
|
||||
mov ax,[(pcidata offset temp).vendor]
|
||||
push eax
|
||||
call [cs:print],offset msg_pci_card
|
||||
inc si
|
||||
cmp si,7
|
||||
jbe searchpci
|
||||
stopthis:
|
||||
xor si,si
|
||||
inc cx
|
||||
cmp cx,31
|
||||
jbe searchpci
|
||||
xor cx,cx
|
||||
inc bx
|
||||
cmp bx,16
|
||||
jbe searchpci
|
||||
jmp next
|
||||
nopci:
|
||||
call [cs:print],offset msg_echec2
|
||||
next:
|
||||
call [cs:detectvmware]
|
||||
jne novirtual
|
||||
call [cs:print],offset msg_vmware
|
||||
novirtual:
|
||||
retf
|
||||
|
||||
importing
|
||||
use VIDEO.LIB,print
|
||||
use DETECT.LIB,cpuinfo
|
||||
use DETECT.LIB,setinfo
|
||||
use DETECT.LIB,pciinfo
|
||||
use DETECT.LIB,getcardinfo
|
||||
use DETECT.LIB,getpcisubclass
|
||||
use DETECT.LIB,getpciclass
|
||||
use DETECT.LIB,detectvmware
|
||||
endi
|
||||
|
||||
thepci pciinf <>
|
||||
thecpu cpu <>
|
||||
temp db 256 dup (0)
|
||||
|
||||
msg_ok2 db "\h70 [\c02 Ok \c07]\l",0
|
||||
msg_echec2 db "\h70 [\c0CPasser\c07]\l",0
|
||||
msg_cpu_detect db "Dectection du processeur",0
|
||||
msg_cpu_detect_inf db " -Fondeur : %0\l -Modele : %0\l -Revision : %u\l -Version : %u\l -Famille : %u\l -Technologies: %0\l",0
|
||||
msg_pci db "Detection des systemes PCI",0
|
||||
msg_pci_info db " -Version : %yB.%yB\l -Numero bus max: %u\l",0
|
||||
msg_pci_enum db " -Enumeration des peripheriques PCI:\l"
|
||||
db " |Vendeur|Modele|Bus |Dev.|Func|Classe.Sous-classe\l",0
|
||||
msg_pci_card db " | %hW | %hW |%w|%w|%w|%0P.%0P\l",0
|
||||
msg_vmware db "\c04 VMWare a ete detecte !!!\c07\l",0
|
Loading…
Reference in New Issue