Rev 1 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1 | Rev 26 | ||
---|---|---|---|
Line 127... | Line 127... | ||
127 | 127 | ||
128 | .macro handler i n |
128 | .macro handler i n |
129 | push %ebp |
129 | push %ebp |
130 | movl %esp,%ebp |
130 | movl %esp,%ebp |
131 | pusha |
131 | pusha |
- | 132 | ||
- | 133 | push %ds |
|
- | 134 | push %es |
|
132 | 135 | ||
133 | # we must fill the data segment registers |
136 | # we must fill the data segment registers |
134 | movw $16,%ax |
137 | movw $16,%ax |
135 | movw %ax,%ds |
138 | movw %ax,%ds |
136 | movw %ax,%es |
139 | movw %ax,%es |
Line 140... | Line 143... | ||
140 | addl $4,(%esp) |
143 | addl $4,(%esp) |
141 | pushl %edi |
144 | pushl %edi |
142 | call trap_dispatcher |
145 | call trap_dispatcher |
143 | addl $8,%esp |
146 | addl $8,%esp |
144 | 147 | ||
- | 148 | pop %es |
|
- | 149 | pop %ds |
|
- | 150 | ||
145 | popa |
151 | popa |
146 | pop %ebp |
152 | pop %ebp |
147 | 153 | ||
148 | iret |
154 | iret |
149 | 155 | ||
Line 312... | Line 318... | ||
312 | 318 | ||
313 | # THIS IS USERSPACE CODE |
319 | # THIS IS USERSPACE CODE |
314 | .global utext |
320 | .global utext |
315 | utext: |
321 | utext: |
316 | 0: |
322 | 0: |
317 | movl $0xdeadbeaf, %eax |
323 | # movl $0xdeadbeaf, %eax |
318 | int $48 |
324 | int $48 |
319 | jmp 0b |
325 | jmp 0b |
320 | # not reached |
326 | # not reached |
321 | utext_end: |
327 | utext_end: |
322 | 328 |