Change font

By fr3nd

Resident (58)

fr3nd's picture

24-11-2018, 18:48

From some MSX screenshots I've seen on the internet, I know it's possible to change the MSX standard font to a different one and use it on MSX-DOS. How is it done?

Login or register to post comments

By Pencioner

Paladin (843)

Pencioner's picture

24-11-2018, 20:39

i bet it was done by loading the 2K of fonts into proper address of VRAM. i'm actually thinking of making the simple util to do this - because i have some programs made for Russian MSX Yamahas and it is kind of unusable on Japanese computers (menu and help screens is unreadable)

By Grauw

Enlighted (7840)

Grauw's picture

24-11-2018, 23:42

Oh turboR there is a tool to change the font permanently using DRAM mode.

By larsthe18th

Master (153)

larsthe18th's picture

24-11-2018, 23:50

You can find example code of a font loading tool Here
it loads the Moonblaster font in to VRAM no mather if you are in Mode 40 or Mode 80

The font looks like this

By Pencioner

Paladin (843)

Pencioner's picture

25-11-2018, 00:37

@larsthe18th thanks mate! then i need only to change the data to whatever font i want and compile Smile

By NYYRIKKI

Enlighted (5173)

NYYRIKKI's picture

26-11-2018, 07:07

You can put MSX system font to any address on any slot and then just point to it. It will be activated on next screen mode change. This is not specific to MSX-DOS, but if you store the fonts in RAM you have to more carefully think where you keep them since MSX-DOS uses all 64K or RAM where MSX-BASIC typically uses only 32K of RAM. You may want to restore original font on exit to prevent problems, but if you use this method you don't need to actually think where the fonts are stored in VRAM in some specific screen mode. (Width 40/80/SCREEN 1)

Please see this video:
https://www.youtube.com/watch?v=0_hSDhrZrOI

By hit9918

Prophet (2825)

hit9918's picture

26-11-2018, 19:41

and there is an issue with mapped RAM. the font address is missing the mapper segment.
on a 128k machine you might have some free untouched memory but it isnt reachable by the font address.
in BASIC you could slide the mapper in page 0 page 1 but not in DOS.

By DamnedAngel

Expert (104)

DamnedAngel's picture

29-11-2018, 15:24

NYYRIKKI wrote:

You can put MSX system font to any address on any slot and then just point to it. It will be activated on next screen mode change.

Will it work with screen 8, open"grp:" and print as? In such case, print as accesses it directly from RAM or from some VRAM area populated by the screen mode change process?

By NYYRIKKI

Enlighted (5173)

NYYRIKKI's picture

30-11-2018, 20:45

DamnedAngel wrote:
NYYRIKKI wrote:

You can put MSX system font to any address on any slot and then just point to it. It will be activated on next screen mode change.

Will it work with screen 8, open"grp:" and print as? In such case, print as accesses it directly from RAM or from some VRAM area populated by the screen mode change process?

Yes, naturally it will work also on those cases. There is no VRAM copy of font in any bitmap modes (including screen 8)

My MSX profile