Skip to content

Print a picture from a modern PC with an old-fashioned Commodore MPS 803 compatible printer

License

Notifications You must be signed in to change notification settings

sblendorio/cbmage

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 

Repository files navigation

cbmage 0.1

Print a picture from a modern PC with an old-fashioned Commodore MPS 803 compatible printer

Purpose

This utility outputs raw bytes for printing on a Commodore MPS 803 compatible printer. It should be used with opencbm package by Spiro Trikaliotis to redirect the output to the printer, connected through a XUM1541 cable, such as ZoomFloppy.

Contents of package

  • source - Source code in Turbo Modula-2 (despite the name ".BAS")
  • binaries - Compiled .COM executable files for CP/M-80
    • win32/cbmage.exe Precompiled binary executable file for Windows XP
    • win64/cbmage.exe Precompiled binary executable file for Windows 10
    • macOS/cbmage Precompiled binary executable file for macOS, 64 bit
    • linux64/cbmage Precompiled binary executable file for Linux (x86_64)

Requirements

  • macOS or Windows (32/64 bit) or Linux
  • XUM1541 / ZoomFloppy
  • opencbm package installed
  • gcc if you want to compile from sources

Install opencbm

To install opencbm you can use the installer from its website, or if you use a debian-based version of Linux, you can install it with:

sudo apt-get install opencbm

on macOS you can use a similar command:

brew install opencbm

Compiling cbmage

Once you have gcc installed, just enter the "source" directory and launch:

make

An executable file named "cbmage" will be generated: it's ready to use.

Using cbmage

Synopsis:

cbmage <image file name>

This is the basic syntax: it will simply write on stdout (so, the termainal window) the raw bytes that should be interpreted by the MPS 803 printer. Quite useless.

Let's use it with opencbm

The typical sequence of command you should use to do the task is:

cbmctrl reset
cbmctrl lock
cbmctrl listen 4 0
./cbmage picture.png | cbmctrl write
cbmctrl unlisten
cbmctrl unlock

In particular, the 4th line (./cbmage picture.png | cbmctrl write) produces the raw byes (launch it without "./" if you run on Windows), which are redirected to the printer through the piped cbmwrite command

Restrictions

Maximum width of the picture is 480 pixel, the printer is a black and white one. The recommended format is PNG: every single dot which is white (total white: #ffffff in hex) will be left blank, every other pixel color will result in a black dot on the printer.

Sample printed PNG files

MPS 803 - 1 MPS 803 - 2 MPS 803 - 3

About

Print a picture from a modern PC with an old-fashioned Commodore MPS 803 compatible printer

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published