C64 Soft-80

  • In text mode, the VIC-II can display 40 columns and 25 rows (the screen is 320×200 pixels and each character is 8×8). This is not adequate for some applications, particularly terminal emulators and word processors, where 80 columns is normal.

    To work around this, some programs used the VIC-II graphics capabilities to implement a simulated 80×25 character screen. These programs change the VIC-II to hi-res mode and implement the text display entirely in software; each character as 4×8 pixels. This technique has become known as “soft-80”.


    The programs in this section patch the C64 KERNAL so that the BASIC environment is usable in 80 column mode.


    80COLUMNS provides a full-color display and blinking block cursor. Its author is unknown. It was uploaded to the GEnie file library on March 26, 1995. The screen editor has no obvious quirks. Switching upper/lowercase with PRINT CHR$(14) and PRINT CHR$(142) mode changes the entire screen as it does on the C64’s 40 column text screen. Changing the background color with POKE 53281,X is detected and changes the entire background as it does on the 40 column screen. 80COLUMNS is noticeably faster than Screen-80, especially when scrolling.

    80COLUMNS.PRG – C64 program file

    COLOR 80

    COLOR 80 was a commerical program sold by Richvale Telecommunications (RTC). It is similar to 80COLUMNS as it also provides a full-color display with blinking block cursor. Switching upper/lowercase changes the entire screen. Changing the background color with POKE 53281,X is not detected and only changes the background color of characters printed after the command. COLOR was 80 originally found on CSDB.

    COLOR80.PRG – C64 program file
    Announcement – Transactor magazine, July 1983
    Advertisement – TORPET magazine, Jun-Aug 1984


    Screen-80 is a soft-80 implementation that was published in the September 1984 issue of Compute’s Gazette. It is monochrome only and uses an underline cursor that does not blink. In the screen editor, backspace at column 0 does not wrap to column 79 of the previous line. Switching upper/lowercase modes behaves like on the C128 in VDC mode: both can exist on the screen at one time, and switching does not change characters already on the screen.

    Compute’s Gazette Disk, Sep 1984 – D64 image that contains Screen-80
    80 Columns For The 64 – Screen-80 article, Compute’s Gazette, Sep 1984


    The programs in this section have a soft-80 display but do not work in the BASIC environment.

    ACE 64

    Craig Bruce’s ACE operating system provides a soft-80 screen. If ACE detects an REU, it will automatically be used to accelerate scrolling.


    Nick Rossi’s Novaterm was a very popular terminal package for C64. The last commercial version, 9.6, provides three soft-80 drivers: stock C64, REU accelerated, and CMD SuperCPU accelerated.

    Novaterm 10 was to be the successor to 9.6 but unfortunately it was never completed. Nick eventually released the source code to both 9.6 and 10. Errol Smith made a number of improvements to version 10. These include implementing a sprite cursor for soft-80 display and a new 80×33 character mode (4×6 pixel characters).


    SOFT80.COM is unique in that it is a CP/M program that runs under the C64 CP/M Cartridge. It was written by Chris Lampton and uploaded to CompuServe in 1984. When run, it patches the BIOS on both the Z80 and 6510 sides, and installs its soft-80 driver code (primarily written in 6510 assembly language).

    SOFT80.COM – C64 CP/M executable (untested)
    SOFT80.TXT – Documentation in plain text (renamed from SOFT80.DOC)