git-svn-id: https://spexeah.com:8443/svn/Asuro@655 6dbc8c32-bb84-406f-8558-d1cf31a0ab0c
This commit is contained in:
		
							
								
								
									
										
											BIN
										
									
								
								bin/kernel.bin
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								bin/kernel.bin
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/ACE.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/ACE.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/BPE.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/BPE.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/BTSSE.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/BTSSE.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/CFE.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/CFE.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/CSOE.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/CSOE.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/DBGE.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/DBGE.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/DBZ.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/DBZ.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/DFE.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/DFE.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/E1000.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/E1000.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/GPF.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/GPF.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/IDE.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/IDE.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/IDOE.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/IDOE.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/IOPE.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/IOPE.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/MCE.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/MCE.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/NCE.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/NCE.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/NMIE.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/NMIE.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/OOBE.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/OOBE.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/PCI.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/PCI.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/PF.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/PF.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/RTC.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/RTC.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/SFE.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/SFE.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/SNPE.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/SNPE.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/UIE.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/UIE.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/USB.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/USB.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/arp.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/arp.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/asuro.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/asuro.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/console.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/console.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/cpu.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/cpu.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/fat32.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/fat32.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/idt.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/idt.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/ipv4.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/ipv4.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/irq.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/irq.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/kernel.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/kernel.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/keyboard.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/keyboard.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/libpsystem.a
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/libpsystem.a
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/lists.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/lists.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/mouse.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/mouse.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/netutils.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/netutils.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/serial.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/serial.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/strings.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/strings.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/terminal.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/terminal.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/tracer.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/tracer.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								lib/util.ppu
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lib/util.ppu
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										18
									
								
								src/cpu.pas
									
									
									
									
									
								
							
							
						
						
									
										18
									
								
								src/cpu.pas
									
									
									
									
									
								
							| @@ -78,6 +78,7 @@ type | ||||
|     end; | ||||
|     TClockSpeed = record | ||||
|         Hz  : uint32; | ||||
|         KHz : uint32; | ||||
|         MHz : uint32; | ||||
|         GHz : uint32; | ||||
|     end; | ||||
| @@ -154,19 +155,24 @@ end; | ||||
| procedure getCPUClockSpeed; | ||||
| var | ||||
|     t1, t2 : TDateTime; | ||||
|     c1, c2 : uint64; | ||||
|     c : uint32; | ||||
|      | ||||
|  | ||||
| begin | ||||
|     c:= 0; | ||||
|     t1:= getDateTime; | ||||
|     t2:= getDateTime; | ||||
|     while (t1.Seconds = t2.Seconds) do begin | ||||
|         inc(c); | ||||
|     if CPUID.Capabilities0^.TSC then begin | ||||
|         t1:= getDateTime; | ||||
|         t2:= getDateTime; | ||||
|         c1:= getTSC; | ||||
|         while (t1.Seconds = t2.Seconds) do begin | ||||
|             t2:= getDateTime; | ||||
|         end; | ||||
|         c2:= getTSC; | ||||
|         c:= c2 - c1; | ||||
|     end; | ||||
|     CPUID.ClockSpeed.Hz:= c; | ||||
|     CPUID.ClockSpeed.MHz:= CPUID.ClockSpeed.Hz div 1000; | ||||
|     CPUID.ClockSpeed.KHz:= CPUID.ClockSpeed.Hz div 1000; | ||||
|     CPUID.ClockSpeed.MHz:= CPUID.ClockSpeed.KHz div 1000; | ||||
|     CPUID.ClockSpeed.GHz:= CPUID.ClockSpeed.MHz div 1000; | ||||
| end; | ||||
|  | ||||
|   | ||||
| @@ -49,6 +49,7 @@ procedure sleep(seconds : uint32); | ||||
| function get16bitcounter : uint16; | ||||
| function get32bitcounter : uint32; | ||||
| function get64bitcounter : uint64; | ||||
| function getTSC : uint64; | ||||
|  | ||||
| function BCDToUint8(bcd : uint8) : uint8; | ||||
|  | ||||
| @@ -358,6 +359,23 @@ begin | ||||
|     get64bitcounter:= bios_data_area.Counters.c64; | ||||
| end; | ||||
|  | ||||
| function getTSC : uint64; | ||||
| var | ||||
|     hi, lo : uint32; | ||||
|  | ||||
| begin | ||||
|     asm | ||||
|         PUSH EAX | ||||
|         PUSH EDX | ||||
|         RDTSC | ||||
|         MOV hi, EDX | ||||
|         MOV lo, EAX | ||||
|         POP EDX | ||||
|         POP EAX | ||||
|     end; | ||||
|     getTSC:= (hi SHL 32) OR lo; | ||||
| end; | ||||
|  | ||||
| procedure BSOD(fault : pchar; info : pchar); | ||||
| var | ||||
|     trace : pchar; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 kieron
					kieron