# Unit cpu

Description
Uses
Classes, Interfaces, Objects and Records
Functions and Procedures
Types
Constants
Variables

## Description

`CPU` - `CPU` Structures & Utility/Capabilities Functions.

## Uses

- console
- util
- RTC
- terminal

## Overview

### Classes, Interfaces, Objects and Records

Name | Description
--- | ---
Record `TClockSpeed` |
Record `TCPUID` |

### Functions and Procedures

`procedure init();`

### Types

`PCapabilities_Old = ˆTCapabilities_Old;`

`TCapabilities_Old = bitpacked record FPU : Boolean; VME : Boolean; DE : Boolean; PSE : Boolean; TSC : Boolean; MSR : Boolean; PAE : Boolean; MCE : Boolean; CX8 : Boolean; APIC : Boolean; RESV0 : Boolean; SEP : Boolean; MTRR : Boolean; PGE : Boolean; MCA : Boolean; CMOV : Boolean; PAT : Boolean; PSE36 : Boolean; PSN : Boolean; CLF : Boolean; RESV1 : Boolean; DTES : Boolean; ACPI : Boolean; MMX : Boolean; FXSR : Boolean; SSE : Boolean; SSE2 : Boolean; SS : Boolean; HTT : Boolean; TM1 : Boolean; IA64 : Boolean; PBE : Boolean; end;`

`PCapabilities_New = ˆTCapabilities_New;`

`TCapabilities_New = bitpacked record SSE3 : Boolean; PCLMUL : Boolean; DTES64 : Boolean; MONITOR : Boolean; DS_CPL : Boolean; VMX : Boolean; SMX : Boolean; EST : Boolean; TM2 : Boolean; SSSE3 : Boolean; CID : Boolean; RESV0 : Boolean; FMA : Boolean; CX16 : Boolean; ETPRD : Boolean; PDCM : Boolean; RESV1 : Boolean; PCIDE : Boolean; DCA : Boolean; SSE4_1 : Boolean; SSE4_2 : Boolean; x2APIC : Boolean; MOVBE : Boolean; POPCNT : Boolean; RESV2 : Boolean; AES : Boolean; XSAVE : Boolean; OSXSAVE : Boolean; AVX : Boolean; RESV3 : Boolean; RESV4 : Boolean; RESV5 : Boolean; end;`

### Variables

`CPUID: TCPUID;`
`CAP_OLD: uint32;`
`CAP_NEW: uint32;`

## Description

### Functions and Procedures

`procedure init();`

### Types

`PCapabilities_Old = ˆTCapabilities_Old;`

`TCapabilities_Old = bitpacked record FPU : Boolean; VME : Boolean; DE : Boolean; PSE : Boolean; TSC : Boolean; MSR : Boolean; PAE : Boolean; MCE : Boolean; CX8 : Boolean; APIC : Boolean; RESV0 : Boolean; SEP : Boolean; MTRR : Boolean; PGE : Boolean; MCA : Boolean; CMOV : Boolean; PAT : Boolean; PSE36 : Boolean; PSN : Boolean; CLF : Boolean; RESV1 : Boolean; DTES : Boolean; ACPI : Boolean; MMX : Boolean; FXSR : Boolean; SSE : Boolean; SSE2 : Boolean; SS : Boolean; HTT : Boolean; TM1 : Boolean; IA64 : Boolean; PBE : Boolean; end;`

`PCapabilities_New = ˆTCapabilities_New;`

`TCapabilities_New = bitpacked record SSE3 : Boolean; PCLMUL : Boolean; DTES64 : Boolean; MONITOR : Boolean; DS_CPL : Boolean; VMX : Boolean; SMX : Boolean; EST : Boolean; TM2 : Boolean; SSSE3 : Boolean; CID : Boolean; RESV0 : Boolean; FMA : Boolean; CX16 : Boolean; ETPRD : Boolean; PDCM : Boolean; RESV1 : Boolean; PCIDE : Boolean; DCA : Boolean; SSE4_1 : Boolean; SSE4_2 : Boolean; x2APIC : Boolean; MOVBE : Boolean; POPCNT : Boolean; RESV2 : Boolean; AES : Boolean; XSAVE : Boolean; OSXSAVE : Boolean; AVX : Boolean; RESV3 : Boolean; RESV4 : Boolean; RESV5 : Boolean; end;`

### Variables

`CPUID: TCPUID;`

`CAP_OLD: uint32;`

`CAP_NEW: uint32;`

## Author

- Kieron Morris <kjm@kieronmorris.me>

Generated by PasDoc 0.15.0.