MODE 12
MODE 12 is the unofficial title of a low-resolution screen MODE, selectable with the *MODE command or the NewModes sideways ROM module.[1]
The MODE 12 code adapts the MODE 5 screen to provide a small-memory
version of MODE 1, 40 × 32 characters in 4 colours. It does this by
redefining the character set to provide thin characters.
Type | Bitmapped | |
Resolution | Text | 40 × 32 characters |
Graphics | 160 × 256 | |
Character size | 4 × 8 pixels | |
Pixel aspect | 2:1 (wide) | |
Bits per pixel | 2 | |
Default palette | Logical colour | Actual colour |
---|---|---|
0 | 0 (black) | |
1 | 1 (red) | |
2 | 3 (yellow) | |
3 | 7 (white) | |
Memory | allocated | 10240 bytes |
on screen | 10240 bytes | |
Address range | Model B etc. | &5800..&7FFF |
Configuration | Video ULA control register | &84 |
Video ULA palette register file | &07 &17 &26 &36 &47 &57 &66 &76 &84 &94 &A0 &B0 &C4 &D4 &E0 &F0 | |
CRTC register file | &3F &28 &31 &24 &26 &00 &20 &22 &01 &07 &67 &08 |
MODE 12 can be created manually with the following code running in the I/O processor.
BASIC: MODE 5 :REM Base MODE ?&30A=39 :REM Characters per line ?&34F=8 :REM Bytes per character *FX154,132 6502: LDA #22:JSR OSWRCH LDA #05:JSR OSWRCH \ Base MODE LDA #&27:STA &30A \ Characters per line LDA #&08:STA &34F \ Byte per character LDA #154:LDX #84:JSR OSBYTE \ Cursor width
The character set needs to be redefined to be four pixels wide, such as with the one used with NewModes.
See Also
References
Screen display MODEs |
---|
MODE 0 | MODE 1 | MODE 2 | MODE 3 | MODE 4 | MODE 5 | MODE 6 | MODE 7 |