CRAXRBCRCXRDX -> CRAXRBXRCXRDX

This commit is contained in:
xmm15 2020-02-20 23:10:44 -06:00
parent ff1f90a666
commit 07084cf26c
9 changed files with 41 additions and 41 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -1,7 +1,7 @@
U0 SysGlobalsInit()
{
I64 i,j;
CRAXRBCRCXRDX regs;
CRAXRBXRCXRDX regs;
CPUId(0x1,&regs);
sys_cache_line_width=regs.rbx.u8[1]*8;
@ -64,7 +64,7 @@ U0 SysGlobalsInit()
Seg2Linear(&sys_vbe_info.vendor);
Seg2Linear(&sys_vbe_info.product_name);
Seg2Linear(&sys_vbe_info.product_revision);
sys_vbe_info.software_revision = Bcd2Binary(sys_vbe_info.software_revision);
sys_vbe_info.software_revision = Bcd2Binary(sys_vbe_info.software_revision);
}
debug.fun_seg_cache=CAlloc(FUN_SEG_CACHE_SIZE*sizeof(CFunSegCache));

View file

@ -303,6 +303,7 @@ $LK,"ICF_ARG2_TO_INT",A="FL:::/Kernel/KernelA.HH,1725"$
$LK,"SysDebug",A="FL:::/Kernel/KMisc.CC,225",BI=57$
$LK,"CH_CTRLQ",A="FL:::/Kernel/KernelA.HH,3627"$
$LK,"CTSS",A="FL:::/Kernel/KernelA.HH,3540"$
$LK,"CRAXRBXRCXRDX",A="FL:::/Kernel/KernelA.HH,704"$
$LK,"HomeSet",A="FL:::/Kernel/BlkDev/DiskDirB.CC,1",BI=58$
$LK,"PostMessage",A="FL:::/Kernel/Job.CC,242",BI=59$
$LK,"DrivesRelease",A="FL:::/Kernel/BlkDev/DiskDrive.CC,27",BI=60$
@ -2309,7 +2310,6 @@ $LK,"CMemberList",A="FL:::/Kernel/KernelA.HH,917"$
$LK,"JobQueueDel",A="FL:::/Kernel/Job.CC,7",BI=489$
$LK,"ARGT_MOFFS64",A="FL:::/Kernel/KernelA.HH,2045"$
$LK,"DOCF_COLOR_NAMES",A="FL:::/Kernel/KernelA.HH,1392"$
$LK,"CRAXRBCRCXRDX",A="FL:::/Kernel/KernelA.HH,704"$
$LK,"_SAVE_EXCEPT_REGS",A="FL:::/Kernel/KExcept.CC,26"$
$LK,"MDf_IMM",A="FL:::/Kernel/KernelA.HH,1702"$
$LK,"DOCf_COLOR_NAMES",A="FL:::/Kernel/KernelA.HH,1429"$

View file

@ -531,7 +531,7 @@ class CKernel
CSysLimitBase sys_gdt_ptr;
U16 sys_pci_buses;
;$$=($$+15)&-16;
 CGDT sys_gdt;
CGDT sys_gdt;
CVBEInfo sys_vbe_info;
CVBEModeShort sys_vbe_modes[VBE_MODES_NUM];
CVBEMode sys_vbe_mode;
@ -701,63 +701,63 @@ public class CCountsGlobals
#define SF_ARG7 0x40
#define SF_ARG8 0x48
class CRAXRBCRCXRDX
class CRAXRBXRCXRDX
{
I64 rax,rbx,rcx,rdx;
I64 rax,rbx,rcx,rdx;
};
//Asm callable function pointers.
//They work with $LK,"CallExtNum",A="MN:CallExtNum"$() when calling from CosmiC.
#define EXT_WIN_TO_TOP 0
#define EXT_WIN_FOCUS 1
#define EXT_HEAPLOG_MALLOC 2
#define EXT_HEAPLOG_FREE 3
#define EXT_DEBUG_RESUME 4
#define EXT_EXTS_NUM 5
#define EXT_WIN_TO_TOP 0
#define EXT_WIN_FOCUS 1
#define EXT_HEAPLOG_MALLOC 2
#define EXT_HEAPLOG_FREE 3
#define EXT_DEBUG_RESUME 4
#define EXT_EXTS_NUM 5
#help_index "Processor"
#define DEFAULT_CACHE_LINE_WIDTH 128
#define DEFAULT_CACHE_LINE_WIDTH 128
//Semaphores
class CSema
{
Bool val,pad[DEFAULT_CACHE_LINE_WIDTH-1];
Bool val,pad[DEFAULT_CACHE_LINE_WIDTH-1];
};
#define SEMA_DEBUG 0
#define SEMA_DEBUG 0
#define SEMA_RECORD_MACRO 1
#define SEMA_SYS_TIMER 2
#define SEMA_SYS_DATE 3
#define SEMA_DEBUG_MODE 4
#define SEMA_SOUND 5
#define SEMA_SYS_TIMER 2
#define SEMA_SYS_DATE 3
#define SEMA_DEBUG_MODE 4
#define SEMA_SOUND 5
#define SEMA_HEAPLOG_ACTIVE 6
#define SEMA_HEAPLOG_LOCK 7
#define SEMA_REFRESH_IN_PROGRESS 8
#define SEMA_REFRESH_IN_PROGRESS 8
#define SEMA_FLUSH_VBE_IMAGE 9
#define SEMA_SINGLE_USER 10
#define SEMA_DISK_CACHE 11
#define SEMA_FAR_CALL32 12
#define SEMA_DEV_MEM 13
#define SEMA_VGA 14
#define SEMA_UPDATE_WIN_Z_BUF 15
#define SEMA_TT 16
#define SEMA_MUTE 17
#define SEMA_JUST_PUMP_MESSAGES 18
#define SEMA_TMBEAT 19
#define SEMA_FIX 20
#define SEMA_SEMAS_NUM 21
#define SEMA_SINGLE_USER 10
#define SEMA_DISK_CACHE 11
#define SEMA_FAR_CALL32 12
#define SEMA_DEV_MEM 13
#define SEMA_VGA 14
#define SEMA_UPDATE_WIN_Z_BUF 15
#define SEMA_TT 16
#define SEMA_MUTE 17
#define SEMA_JUST_PUMP_MESSAGES 18
#define SEMA_TMBEAT 19
#define SEMA_FIX 20
#define SEMA_SEMAS_NUM 21
#define CTRL_ALT_DEL 0
#define CTRL_ALT_C 1
#define CTRL_ALT_X 2
#define CTRL_ALT_TAB 3
#define CTRL_ALT_DEL 0
#define CTRL_ALT_C 1
#define CTRL_ALT_X 2
#define CTRL_ALT_TAB 3
#help_index "Hash"
public class CHash
{//See $LK,"Hash",A="HI:Hash"$
CHash *next;
U8 *str;
U32 type,
use_count; // inc'ed every time search found, never dec'ed.
U8 *str;
U32 type,
use_count; // inc'ed every time search found, never dec'ed.
};
public class CHashTable

View file

@ -240,7 +240,7 @@ public _intern IC_SET_RAX U0 SetRAX(I64 d); //Set RAX register value.
public _intern IC_SET_RBP U0 SetRBP(U8 *d); //Set RBP register value.
public _intern IC_SET_RFLAGS U0 SetRFlags(I64 d); //Set RFlags register value.
public _intern IC_SET_RSP U0 SetRSP(U8 *d); //Set RSP register value.
public _extern _CPUID U0 CPUId(U32 rax,CRAXRBCRCXRDX *res); //Do CPUID inst.
public _extern _CPUID U0 CPUId(U32 rax,CRAXRBXRCXRDX *res); //Do CPUID inst.
public _extern _ENDIAN_U16 U16 EndianU16(U16 val); //Swap big<-->little endian U16.
public _extern _ENDIAN_U32 U32 EndianU32(U32 val); //Swap big<-->little endian U32.
public _extern _ENDIAN_U64 U64 EndianU64(U64 val); //Swap big<-->little endian U64.

Binary file not shown.

View file

@ -29,7 +29,7 @@ public U0 CPURep(Bool full=FALSE)
I64 i, total_swaps, total_cycles;
F64 t0, tf;
CCPURep cr;
CRAXRBCRCXRDX regs;
CRAXRBXRCXRDX regs;
CPUId(0x80000000, &regs);
if (regs.rax >= 0x80000004)