Burgerlib functions for MSDOS. More...
Classes | |
| struct | Burger::MSDos::Regs16_t |
| Structure to contain all the registers for calling 80x86 assembly. More... | |
Namespaces | |
| namespace | Burger |
| namespace | Burger::MSDos |
| Functions specific to MS/DOS. | |
Functions | |
| BURGER_INLINE uint8_t * | Burger::MSDos::zero_base (void) BURGER_NOEXCEPT |
| Obtain the base pointer to the real memory. | |
| uint32_t BURGER_API | Burger::MSDos::set_video_mode_int10h (uint32_t uMode) BURGER_NOEXCEPT |
| Call interrupt 10H with AL set to the passed value. | |
| uint32_t BURGER_API | Burger::MSDos::init_serial_port_int14h (uint32_t uPortFlags, uint32_t uPortNumber) BURGER_NOEXCEPT |
| Call interrupt 14H with AL and DX set to the passed values. | |
| uint32_t BURGER_API | Burger::MSDos::printer_port_int17h (uint32_t uPrinterCommand, uint32_t uPrinterNumber=0) BURGER_NOEXCEPT |
| Call interrupt 17H with AL/AH and DL/DH set to the passed values. | |
| int32_t BURGER_API | Burger::MSDos::real_mode_interrupt (uint32_t uInterrupt, const Regs16_t *pInput, Regs16_t *pOutput) BURGER_NOEXCEPT |
| Call a MSDOS software interrupt. | |
| int BURGER_API | Burger::MSDos::x32_call_real_proc (uint32_t pAddress, const Regs16_t *pInput, Regs16_t *pOutput) BURGER_NOEXCEPT |
| Call a real mode function (16 bit) | |
| void *BURGER_API | Burger::MSDos::real_to_protected (uint32_t pReal) BURGER_NOEXCEPT |
| Convert a real mode address to a flat address. | |
| uint32_t BURGER_API | Burger::MSDos::alloc_real (uint32_t uSize) BURGER_NOEXCEPT |
| Allocate a chunk of real mode memory. | |
| void BURGER_API | Burger::MSDos::free_real (uint32_t pReal) BURGER_NOEXCEPT |
| Release real mode memory back to DOS. | |
| uint32_t BURGER_API | Burger::MSDos::get_temp_real_buffer (void) BURGER_NOEXCEPT |
| Return pointer to shared real buffer. | |
| void *BURGER_API | Burger::MSDos::get_temp_protected_buffer (void) BURGER_NOEXCEPT |
| Get the pointer to the shared protected memory buffer. | |
| void far *BURGER_API | Burger::MSDos::get_interrupt_protected (uint32_t uInterrupt) BURGER_NOEXCEPT |
| Call the dos extender to get the current protected mode IRQ vector. | |
| void BURGER_API | Burger::MSDos::set_interrupt_protected (uint32_t uInterrupt, void far *pCode) BURGER_NOEXCEPT |
| Intercept the protected IRQ vector. | |
| uint32_t BURGER_API | Burger::MSDos::get_interrupt_real (uint32_t uInterrupt) BURGER_NOEXCEPT |
| Call the dos extender to get the current real mode IRQ vector. | |
| void BURGER_API | Burger::MSDos::set_interrupt_real (uint32_t uInterrupt, uint32_t pCode) BURGER_NOEXCEPT |
| Intercept the real mode IRQ vector. | |
| void BURGER_API | Burger::MSDos::set_interrupt_both (uint32_t uInterrupt, void far *pCode) BURGER_NOEXCEPT |
| Intercept both the real the protected IRQ vectors. | |
| void *BURGER_API | Burger::MSDos::map_physical_address (void *pInput, uint32_t uLength) BURGER_NOEXCEPT |
| Map memory from a device into protected mode. | |
Variables | |
| void * | _x32_zero_base_ptr |
| Pointer to the MSDOS real memory. | |
| uint16_t | _x32_zero_base_selector |
| Segment to the MSDOS real memory. | |
Burgerlib functions for MSDOS.
This file is included on MSDOS platforms. It is not included for Windows.
| void* _x32_zero_base_ptr |
Pointer to the MSDOS real memory.
On the X32 dos extender, real memory is mapped to an address at runtime. This will retrieve that address.
| uint16_t _x32_zero_base_selector |
Segment to the MSDOS real memory.
On the X32 dos extender, real memory is mapped to this segment at runtime. This will retrieve that segment value.