This is an old revision of the document!
Note: This IBM PC BIOS API call is for DOS/Win16 personality only. Use Family API for portability.
Note: osFree Macro Library provides macros for most of functions
Int 10H
Video BIOS API. All registers saved on entry and restores on return.
BIOS Interrupts
| Function | Macro | Description | Version |
|---|---|---|---|
| 00H | @SetMode1) | Set Video Mode | 5150+ |
| 01H | @SetCurSz2)/@SetCsrSize | Set Cursor Shape Size | 5150+ |
| 02H | @SetCurPos3)/@SetCsrPos | Set Cursor Position | 5150+ |
| 03H | @GetCur4) | Get Current Cursor Position | 5150+ |
| 04H | READ LIGHT PEN POSITION | 5150+ | |
| 05H | @SetPage5) | Set Active Video Page | 5150+ |
| 06H | @ScrollUp6) | Scroll Screen Area Up | 5150+ |
| 07H | @ScrollDn7) | Scroll Screen Area Down | 5150+ |
| 08H | @GetChAtr8) | Get Character Attribute | 5150+ |
| 09H | @PutChAtr9) | Print Char With Attribute | 5150+ |
| 0AH | @PutCh10) | Print Char | 5150+ |
| 0BH | @SetColor11)/@SetPalet12) | Set Palette/Color | 5150+ |
| 0CH | @SetDot13) | Draw Pixel | 5150+ |
| 0DH | @GetDot14) | Get Pixel | 5150+ |
| 0EH | @WrtTTY15) | Write char in TTY mode | 5150+ |
| 0FH | @VideoState16)/@GetMode17) | Get Current Video Mode/State | 5150+ |
| IBM PC BIOS API | |
|---|---|
| Video I/O | INT 10H: 00H, 01H, 02H, 03H, 05H, 06H, 07H, 08H, 09H, 0AH, 0BH, 0CH, 0DH, 0EH, 0FH |
| Hardware info | INT 11H, INT 12H |
| Serial I/O | INT 14H: 00H, 01H, 02H, 03H |
| Tape I/O | INT 15H: 00H, 01H, 02H, 03H |
| Keyboard I/O | INT 16H: 00H, 01H, 02H |
| Printer I/O | INT 17H: 00H, 01H, 02H |
| Disk I/O | INT 13H: 00H, 01H, 02H, 03H, 04H, 05H |
| Date and Time | INT 1AH: 00H, 01H |
| osFree Macro Library | |
|---|---|
| Video I/O | @SetMode @SetCurSz @SetCurPos @GetCur @SetPage @ScrollUp @ScrollDn @Scroll @GetChAtr @PutChAtr @PutCh @SetPalet @SetColor @SetDot @GetDot @WrtTTY @VideoState @GetMode @GetDisplay @GetVideoState @GetEGAInfo @Cls |
| Hardware info | @Equipment @MemSize |
| Serial I/O | @AuxInit @AuxSendChar @AuxRecieveChar @AuxStatus |
| Tape I/O | @TapeOn @TapeOff @TapeRead @TapeWrite |
| Keyboard I/O | @KbdStatus @CharIn @CharPeek |
| Printer I/O | @PrnPrint @PrnInit @PrnStatus |
| Disk I/O | @DskReset @DskStatus @DskRead @DskWrite @DskVerify @DskFormat |
| Date and Time | @SetTime @GetTime |
| Mouse | @MouInit @MouShowPointer @MouStatus @MouSetPos @MouSetMickey @MouRegion |
| Memory manager | @ModBlok SET_BLOCK |





