Defining new font in MS-DOS on IBM XT/AT PC

By eimaster

Champion (282)

Аватар пользователя eimaster

02-11-2021, 03:05

I know this is an MSX forum but I'm very frustrated to get any help. So please forgive me 'cos I don't know any IBM PC forum which I can ask for help. Most of the forums are discussing modern Windows or Linux OS.
Since I got my IBM XT I wondered how I can define my own characters but I didn't know how to do it using GW-BASIC or QuickBasic or any other BASIC.
I learned how to do it on my MSX in BASIC and it is very easy just like this (borrowed from another similar post in General Discussion thread):

10 SCREEN 1
20 LOCATE 0,10 : PRINT"A"
30 ST=ASC("A")*8 :REM ASC("A")=65 *8=520
40 FORI=0TO7 :REM read 8 datas
50 READ R$
60 VPOKE ST+I, VAL("&H"+R$)
70 NEXT I
80 GOTO 80
1000 DATA 02,06,0E,1E,3E,76,E6,76

Until I found a source program written in Turbo Pascal. It defines Arabic characters and then use them in a screen zero (text screen with 80 columns) puzzle game. Now I can't find that program anywhere.
So if anyone here could help me or teach me how can I define my own character in GW-BASIC and QuickBasic especially in SCREEN zero (40-columns and/or 80-columns). Of course other screens are welcome too. Or provide me with web-links in which I can find examples and/or details/hints on how to do it.
Thanks in advance.

Для того, чтобы оставить комментарий, необходимо регистрация или !login

By eimaster

Champion (282)

Аватар пользователя eimaster

02-11-2021, 03:26

I found it in PC Mag April, 1983 issue. I'll try to download the PDF file of the magazine issue. It's here:
PC Mag April, 1983 issue

By Juan Luis

Master (143)

Аватар пользователя Juan Luis

04-11-2021, 22:27

eimaster, you can ask for help in this forum:
Keith S (Chibiakumas) forum

Keith is an assembly programmer and he knows almost every platform (PC MS-DOS x86 assembly as well). I'm sure he can give you an answer to your question. Make your question in topic "8086 Assembly Programming". I think that making new fonts is just to write on a range of memory addresses, so it should be possible to do same thing in BASIC or other languages.

You can also watch his channel. He has severy video lists. Here you have 8086 programming videos:
8086 video list 1
8086 video list 2

All videos lists:
Keith S video lists