The ::SHE+ILA:: VM86 I/O subsystem [$59]

Elegant Model in Purple Gown with Sheer Sleeves
75
0
  • Squishy Plushie's avatar Artist
    Squishy Pl...
  • Prompt
    Read prompt
  • DDG Model
    DaVinci2
  • Access
    Public
  • Created
    17h ago
  • Try

More about The ::SHE+ILA:: VM86 I/O subsystem [$59]

In order to avoid needing to rewrite the PC disk, video, and keyboard routines (INT $13, INT $10, and INT $09) we set up a VM86 monitor in protected mode. Using the interrupt entry points in the base RAM ($0000:0000 through $0000:0400) we create the appropriate interrupt gates (IDT), including one to call ::SHE:: (INT $48). We also add hardware exception handlers (including GPF INT $0D and stack overflow INT $0C). We remap the interrupt controller chips to use INT $70 through INT $7F, in order to avoid IBM's blunder of mapping them to INT $08 through INT $0F (over the protected mode hardware exceptions). We then set up a GDT (global descriptor table) ... this is somewhat like our GHOST (global host online segment table) and serves rather the same purpose. And switch into VM86 mode by MOVing whatever into CR0. This whole setup has been somewhat more complicated than on the Apple ][ where you just access address $C081 twice in a row to enable the language card (which overlays the ROM address space). But at least we get to call the BIOS from protected mode, without single-stepping the whole thing :)
P.S. Remember to allocate INT $6D as well, as the VGA uses it internally ... :)

Comments


Loading Dream Comments...

Discover more dreams from this artist