Added the following new machines:

- Olivetti M19.
- Olivetti M240.

Implemented mainboard jumper settings for Olivetti M24 machine:
- Like on a real M24, onboard video card can be disabled, and other video cards can be installed.
- Renamed m_olivetti_m24.c to m_xt_olivetti.c, as it handles all XT-class Olivetti machines.

Decoupled Olivetti OGC (640x400 extended CGA) from M24 machine code:
- OGC exists both as 16-bit proprietary card and 8-bit ISA card (GO708).
- Implemented underlined text handling in 80x25 character mode.
- Like Compaq CGA, replaced code portions common to CGA with calls to vid_cga.c.
This commit is contained in:
EngiNerd89
2020-12-05 20:15:53 +01:00
parent 57ff5a0441
commit 9daf161aee
13 changed files with 1798 additions and 1007 deletions

View File

@@ -1038,7 +1038,21 @@ loadfont(wchar_t *s, int format)
for (c = 0; c < 256; c++)
fread(&fontdat12x18[c][0], 1, 36, f);
break;
}
case 10: /* Olivetti M19 */
fseek(f, 90, SEEK_SET);
for (d = 0; d < 4; d++) {
/* There are 4 fonts in the ROM */
for (c = 0; c < 256; c++) /* 8x14 MDA in 8x16 cell */
fread(&fontdatm[256*d + c][0], 1, 16, f);
for (c = 0; c < 256; c++) { /* 8x8 CGA in 8x16 cell */
fread(&fontdat[256*d + c][0], 1, 8, f);
fseek(f, 8, SEEK_CUR);
}
}
break;
}
(void)fclose(f);
}