First post, by Peter Swinkels
Hi,
I am trying to use int 0x21, ax=0x6602 (http://helppc.netcore2k.net/interrupt/int-21-66) to change the code page from inside a Quick Basic program. As far as I can tell I made no mistakes in my program, but the code page will not change. To be more specific: extended characters displayed on screen don't change and int 0x21,ax=0x6601 keeps reporting code page 437 no matter what I do.
The relevant Quick Basic code:
FUNCTION GetCodePage
DIM Registers AS RegType
Registers.AX = &H6601
INTERRUPT &H21, Registers, Registers
GetCodePage = Registers.BX
END FUNCTION
'^^^
SUB SetCodePage (NewCodePage)
DIM Registers AS RegType
Registers.AX = &H6602
Registers.BX = NewCodePage
INTERRUPT &H21, Registers, Registers
END SUB
I suspect DOSBox doesn't support this function unless I install actual DOS, correct?
EDIT:
I just tested my program in DOSBox-X... and it works! Without modification. Any feedback on the subject is still welcome though! 😀
Do not read if you don't like attention seeking self-advertisements!
Did you read it anyway? Well, you can find all sorts of stuff I made using various programming languages over here:
https://github.com/peterswinkels