pushw %ds
movw %ss, %cx // Move %ss to %ds
movw %cx, %ds
- leal 28(%esp), %eax // %eax points to start of args
- calll handle_pmm
+ movl $_cfunc32flat_handle_pmm, %eax // Setup: call32(handle_pmm, args, -1)
+ leal 28(%esp), %edx // %edx points to start of args
+ movl $-1, %ecx
+ calll call32
movw %ax, 12(%esp) // Modify %ax:%dx to return %eax
shrl $16, %eax
movw %ax, 4(%esp)
lretw
// APM entry points
- DECLFUNC apm16protected_entry
-apm16protected_entry:
+ DECLFUNC entry_apm16
+entry_apm16:
pushfw // save flags
pushl %eax // dummy
ENTRY_ARG handle_apm16
lretw
.code32
- DECLFUNC apm32protected_entry
-apm32protected_entry:
+ DECLFUNC entry_apm32
+entry_apm32:
pushfl
pushl %gs
pushl %cs // Move second descriptor after %cs to %gs
lretl
// PCI-BIOS 32bit entry point
- DECLFUNC pcibios32_entry
-pcibios32_entry:
+ DECLFUNC entry_pcibios32
+entry_pcibios32:
pushfl
pushl %gs // Backup %gs and set %gs=%ds
pushl %ds
lretl
// BIOS32 support
- EXPORTFUNC bios32_entry
-bios32_entry:
+ EXPORTFUNC entry_bios32
+entry_bios32:
pushfl
#if CONFIG_PCIBIOS
// Check for PCI-BIOS request
jne 1f
movl $BUILD_BIOS_ADDR, %ebx
movl $BUILD_BIOS_SIZE, %ecx
- movl $pcibios32_entry, %edx
+ movl $entry_pcibios32, %edx
xorb %al, %al
jmp 2f
#endif
lretl
// 32bit elf entry point
- EXPORTFUNC post32
-post32:
+ EXPORTFUNC entry_elf
+entry_elf:
cli
cld
lidtl (BUILD_BIOS_ADDR + pmode_IDT_info)