Rev 8210 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 8210 | Rev 9172 | ||
---|---|---|---|
Line 9... | Line 9... | ||
9 | ; Most routines are (c) Glenn Fiedler (ptc@gaffer.org), used with permission |
9 | ; Most routines are (c) Glenn Fiedler (ptc@gaffer.org), used with permission |
10 | ; |
10 | ; |
Line 11... | Line 11... | ||
11 | 11 | ||
Line 12... | Line 12... | ||
12 | BITS 32 |
12 | BITS 32 |
13 | - | ||
14 | GLOBAL _ConvertX86 |
- | |
15 | GLOBAL _x86return |
- | |
Line -... | Line 13... | ||
- | 13 | ||
- | 14 | %include "common.inc" |
|
Line 16... | Line 15... | ||
16 | 15 | ||
17 | GLOBAL _Hermes_X86_CPU |
- | |
18 | 16 | SDL_FUNC _ConvertX86 |
|
Line 19... | Line -... | ||
19 | - | ||
20 | SECTION .data |
17 | SDL_FUNC _Hermes_X86_CPU |
Line 21... | Line 18... | ||
21 | 18 | ||
22 | cpu_flags dd 0 |
19 | SECTION .data |
23 | 20 | cpu_flags dd 0 |
|
Line 57... | Line 54... | ||
57 | mov edi,[ebp+16] |
54 | mov edi,[ebp+16] |
Line 58... | Line 55... | ||
58 | 55 | ||
59 | y_loop: |
56 | y_loop: |
Line 60... | Line 57... | ||
60 | mov ecx,[ebp+4] |
57 | mov ecx,[ebp+4] |
Line 61... | Line -... | ||
61 | - | ||
62 | jmp [ebp+32] |
58 | |
63 | 59 | call [ebp+32] |
|
Line 64... | Line 60... | ||
64 | _x86return: |
60 | |
65 | add esi,[ebp+12] |
61 | add esi,[ebp+12] |
Line 75... | Line 71... | ||
75 | 71 | ||
76 | endconvert: |
72 | endconvert: |
Line 77... | Line -... | ||
77 | ret |
- | |
78 | - | ||
79 | - | ||
80 | 73 | ret |
|
81 | ;; Hermes_X86_CPU returns the CPUID flags in eax |
74 | |
82 | 75 | ||
Line 83... | Line 76... | ||
83 | _Hermes_X86_CPU: |
76 | _Hermes_X86_CPU: |
Line 120... | Line 113... | ||
120 | popa |
113 | popa |
Line 121... | Line 114... | ||
121 | 114 | ||
Line 122... | Line 115... | ||
122 | mov eax,[cpu_flags] |
115 | mov eax,[cpu_flags] |
123 | - | ||
124 | .L1: |
116 | |
- | 117 | .L1: |
|
- | 118 | ret |
|
- | 119 | ||
- | 120 | ||
- | 121 | %ifidn __OUTPUT_FORMAT__,elf32 |