Rev 212 | Rev 221 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 212 | Rev 214 | ||
---|---|---|---|
Line 1... | Line 1... | ||
1 | tmp_page_tab equ 0x00C00000 |
1 | tmp_page_tab equ 0x00C00000 |
Line 2... | Line 2... | ||
2 | 2 | ||
3 | align 4 |
3 | align 4 |
- | 4 | proc mem_test |
|
4 | proc mem_test |
5 | |
5 | mov eax, cr0 |
6 | mov eax, cr0 |
6 | and eax, not (CR0_CD+CR0_NW) |
7 | and eax, not (CR0_CD+CR0_NW) |
7 | or eax, CR0_CD ;disable caching |
8 | or eax, CR0_CD ;disable caching |
8 | mov cr0, eax |
9 | mov cr0, eax |
Line 19... | Line 20... | ||
19 | 20 | ||
Line 20... | Line 21... | ||
20 | and eax, not (CR0_CD+CR0_NW) ;enable caching |
21 | and eax, not (CR0_CD+CR0_NW) ;enable caching |
21 | mov cr0, eax |
22 | mov cr0, eax |
22 | mov eax, edi |
23 | mov eax, edi |
- | 24 | mov [LFBSize], 0x00800000 |
|
23 | ret |
25 | ret |
24 | endp |
26 | endp |
Line 25... | Line 27... | ||
25 | 27 | ||
26 | align 4 |
28 | align 4 |
Line 47... | Line 49... | ||
47 | add eax, 0x00400000 |
49 | add eax, 0x00400000 |
48 | mov dword [sys_pgdir+4], eax |
50 | mov dword [sys_pgdir+4], eax |
49 | add eax, 0x00400000 |
51 | add eax, 0x00400000 |
50 | mov dword [sys_pgdir+8], eax |
52 | mov dword [sys_pgdir+8], eax |
51 | ; add eax, 0x00400000 |
53 | |
52 | ; mov dword [sys_pgdir+12], eax |
- | |
53 | - | ||
Line 54... | Line 54... | ||
54 | mov dword [sys_pgdir+0x600], sys_pgdir+PG_SW |
54 | mov dword [sys_pgdir+0x600], sys_pgdir+PG_SW |
Line 55... | Line 55... | ||
55 | 55 | ||
56 | mov ecx, [pg_data.kernel_tables] |
56 | mov ecx, [pg_data.kernel_tables] |
Line 304... | Line 304... | ||
304 | endl |
304 | endl |
305 | 305 | ||
Line 306... | Line 306... | ||
306 | mov edi, [LFBSize] |
306 | mov edi, [LFBSize] |
307 | mov esi, [LFBAddress] |
307 | mov esi, [LFBAddress] |
- | 308 | mov dword [exp_lfb+4], esi |
|
- | 309 | ||
308 | shr edi, 12 |
310 | shr edi, 12 |
309 | mov [pg_count], edi |
311 | mov [pg_count], edi |
310 | shr edi, 10 |
312 | shr edi, 10 |
Line 311... | Line 313... | ||
311 | 313 | ||
Line 1026... | Line 1028... | ||
1026 | ret |
1028 | ret |
1027 | endp |
1029 | endp |
1028 | 1030 | ||
Line 1029... | Line 1031... | ||
1029 | align 4 |
1031 | align 4 |
1030 | proc fpu_save |
- | |
1031 | clts |
- | |
1032 | mov ebx, [fpu_owner] |
- | |
1033 | shl ebx, 8 |
- | |
1034 | mov eax, [ebx+PROC_BASE+0x10] |
- | |
1035 | mov ebx, [CURRENT_TASK] |
- | |
1036 | mov [fpu_owner], ebx |
- | |
1037 | - | ||
1038 | bt [cpu_caps], CAPS_FXSR |
- | |
1039 | jnc .no_SSE |
- | |
1040 | - | ||
1041 | fxsave [eax] |
- | |
1042 | fninit ;re-init fpu |
- | |
1043 | ret |
- | |
1044 | .no_SSE: |
- | |
1045 | fnsave [eax] |
- | |
1046 | ret |
- | |
1047 | endp |
- | |
1048 | - | ||
1049 | align 4 |
- | |
1050 | proc fpu_restore |
- | |
1051 | mov ebx, [CURRENT_TASK] |
- | |
1052 | shl ebx, 8 |
- | |
1053 | mov eax, [ebx+PROC_BASE+0x10] |
- | |
1054 | bt [cpu_caps], CAPS_FXSR |
- | |
1055 | jnc .no_SSE |
- | |
1056 | - | ||
1057 | fxrstor [eax] |
- | |
1058 | ret |
- | |
1059 | .no_SSE: |
- | |
1060 | fnclex ;fix possible problems |
- | |
1061 | frstor [eax] |
- | |
1062 | ret |
- | |
1063 | endp |
- | |
1064 | - | ||
1065 | align 4 |
- | |
1066 | proc test_cpu |
1032 | proc test_cpu |
1067 | locals |
1033 | locals |
1068 | cpu_type dd ? |
1034 | cpu_type dd ? |
1069 | cpu_id dd ? |
1035 | cpu_id dd ? |
1070 | cpu_Intel dd ? |
1036 | cpu_Intel dd ? |
Line 1284... | Line 1250... | ||
1284 | tmp_task_pdir rd 1 |
1250 | tmp_task_pdir rd 1 |
1285 | tmp_task_ptab rd 1 |
1251 | tmp_task_ptab rd 1 |
1286 | tmp_task_data rd 1 |
1252 | tmp_task_data rd 1 |
Line 1287... | Line -... | ||
1287 | - | ||
1288 | ; current_pdir rd 1 |
- | |
1289 | 1253 | ||
1290 | fpu_data rd 1 |
1254 | fpu_data rd 1 |
- | 1255 | fdd_buff rd 1 |
|
Line 1291... | Line 1256... | ||
1291 | fdd_buff rd 1 |
1256 | LFBSize rd 1 |
1292 | 1257 | ||
Line 1293... | Line 1258... | ||
1293 | stall_mcs rd 1 |
1258 | stall_mcs rd 1 |
Line 1301... | Line 1266... | ||
1301 | 1266 | ||
Line 1302... | Line 1267... | ||
1302 | uglobal |
1267 | uglobal |
1303 | align 16 |
1268 | align 16 |
1304 | dll_tab rb 32*32 |
1269 | dll_tab rb 32*32 |
1305 | srv_tab rb 32*32 |
1270 | srv_tab rb 36*32 |
1306 | dll_map rd 1 |
1271 | dll_map rd 1 |
1307 | srv_map rd 1 |
1272 | srv_map rd 1 |
Line 1308... | Line 1273... | ||
1308 | 1273 | ||
1309 | mem_used_list rd 1 |
1274 | mem_used_list rd 1 |