[Back to SCREEN SWAG index] [Back to Main SWAG index] [Original]

    {
    > I have always addressed $B800 as the screen segment for direct video
    > writes in text.... Err, umm, does anyone have the code to detect
    > whether it is $B000 or $B800 (for Herc.'s and the like)...

     call the Bios INt $10 Function $0f to get video mode.
    }

    Function GetVideoSegment:Word;
     Begin
      Asm
           Mov     AH,$0f;
           INT    $10;
           Cmp     AL, $07;        { Monochrome? }
           Jne     @No;
           Mov     @Result, $B000;
           Jmp     @Done;
    @No:   Mov     @Result, $B800;
    @Done:
      End;
    End;

    begin
     Write( GetVideoSegment);
    End.

[Back to SCREEN SWAG index] [Back to Main SWAG index] [Original]