Recognizes 28+ CPUs and about 18 FPUs, checks for V86, determines CPU clock speed and determines 386dx chip stepping. ASM/PAS/C[++] sources included! Windows, OS/2 & DESQview-aware: works fine in DOS box, even returning correct MHz under Windows and DESQview! Differs i486,Cx486 and some Am486 models. DPMI-compatible. Make batches and file provided. Absolutely free of charge!!!
This code haven't been extensively tested on all CPUs it theoretically should recognize. I performed extensive tests only on systems available to me which include:
1. AMD Am386DX-40/Intel 80387DX
running MS-DOS 5.0, QEMM 7.04 + DESQview 2.63, Windows 3.11
2. Intel i486DX2-66
running MS-DOS 6.2, QEMM 7.04, Personal NW, Stacker 4.0,
Windows 3.10 Russian
3. GenuineIntel i486SX-40/None
running MS-DOS 6.2, QEMM 7.01, Windows 3.10
4. Intel 80286-10/Sun SPARCStation 1+ emulating 80286
5. Intel 80386SX-25/Intel 80387SX
running MS-DOS 6.2/MemMaker, Windows 3.10 Russian
6. AMD Am386DX-40/Cyrix Cx87SLC
running Novell DOS 7, Personal NW, Windows 3.10
7. Intel i486DX-50
running MS-DOS 6.2, Windows for Workgroups 3.11
8. Intel Pentium-S/60
running Windows 95 build 950r2
9. Cyrix Cx486DX-40
running Windows 95 build 950r2
10. GenuineIntel i486DX-33
running MS-DOS 6.0/MemMaker, Windows 3.10
11. AMD Am386DX-40/IIT 3C87
running MS-DOS 5.0, QEMM 7.52, Windows 3.10
12. Cyrix Cx486DX2-50
running MS-DOS 6.2, Windows for Workgroups 3.10
13. P5-66 (step 7, no FPU bug)
running MS-DOS 6.22, QEMM 7.52, Windows 3.10
14. AMD Am486DX4-100
running MS-DOS 6.22, QEMM 7.52, Windows 3.10 Russian
or Windows 95 Final Beta Release (build 337)
15. GenuineIntel i486DX2-50
running MS-DOS 6.22 Russian/MemMaker, Windows 3.10 Russian
On all listed systems the code appeared to work fine giving correct results under all listed environments except [1,6] when running Soft-ICE 2.62 - incorrectly stated that CPU is 386SX. I cannot guarantee that the code will run o.k. on systems with other configurations/operating environments, though I hope it will. Please don't bomb me with letters like "wow! this thingie crashes my PC with such and such CPU/FPU under such and such env." - you got full sources, and you should know how to use a debugger if you know how to program, so try to find out the origin of the problem on YOUR system (and maybe a workaround) before reporting it.
File List:
CPU.ASM
1Kb
CPU.C
1Kb
CPU.PAS
1Kb
CPUSPEED.ASM
6Kb
CPUTYPE.C
6Kb
CPUTYPE.DOC
19Kb
CPUTYPE.H
2Kb
CPUTYPE.PAS
10Kb
CPU_HL.ASM
11Kb
CPU_TYPE.ASH
31Kb
CXMODEL.ASM
2Kb
DOSINOUT.ASH
1Kb
FILE_ID.DIZ
1Kb
HEADER.ASH
1Kb
HISTORY.DOC
14Kb
LSTRING.ASH
1Kb
MAKEA.BAT
334b
MAKEC.BAT
3Kb
MAKEFILE
3Kb
MAKEP.BAT
1Kb
MLIB.BAT
2Kb
MODEL486.ASM
3Kb
P5INFO.ASM
3Kb
P5INFO.C
4Kb
P5INFO.PAS
4Kb
README.1ST
8Kb
SMM.ASM
2Kb
SPEED.ASH
4Kb
TEST486.PAS
1Kb
UNIDEF.INC
11Kb
VMZ.ASC
313b
YESNO.COM
72b
Similar code
Useful Assembler Routines
(Popularity: ) : A collection Of 37 assembly source codes for use with BASIC. Includes memory management, interupt controllers, window scrollers, text conversion, program loaders, printer conversion and more.