home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1995 November / PCWK1195.iso / inne / podstawy / dos / format / fdform18.exe / CPUTEST.ASM < prev    next >
Assembly Source File  |  1991-07-21  |  2KB  |  33 lines

  1. MachineCheck proc   near                        ;Teste CPU-Typ (offizielle INTEL Methode...
  2.                                                 ;...aber schwachsinnig)
  3.              xor       ax,ax                    ;Pushe 0...
  4.              push      ax                       ;auf den Stack
  5.              popf                               ;Ziehe Flags runter
  6.              pushf                              ;Pushe sie wieder drauf
  7.              pop       ax                       ;und wieder in AX
  8.              and       ax,0F000h                ;Nimm nur die Bits 11-8
  9.              cmp       ax,0F000h                ;Wenn alle gesetzt....
  10.              je        short MC_8086            ;...dann ist es ein 8086
  11.  
  12.              mov       ax,0F000h                ;Pushe f00...
  13.              push      ax                       ;...auf den Stack
  14.              popf                               ;Ziehe die Flags runter
  15.              pushf                              ;und wieder auf den Stack
  16.              pop       ax                       ;Als AX vom Stack
  17.              and       ax,0F000h                ;Nimm nur Bits 11-8
  18.              jz        short MC_80286           ;Wenn Null, dann 80286
  19.  
  20.              mov       ax,3                     ;Setze AX=3 für 80386/80386SX/80486
  21.              ret                                ;Ende
  22.  
  23. mc_80286:    mov       ax,2                     ;Setze AX=2 für 80286
  24.              ret                                ;Ende
  25.  
  26. mc_8086:     mov       ax,1                     ;Setze AX=1 für 8086/8088
  27.              ret                                ;Ende
  28. MachineCheck endp
  29.  
  30. ;Man kann von den Jungs bei Intel zwar nicht verlangen, daß die gleich eine Routine
  31. ;veröffentlichen, die auch V20/V30/... erkennen, aber den 80188/80186 hätten die ja
  32. ;mal einbauen können, da die Dinger alle Nicht-Priviligierten 286er Befehle können.
  33.