Connecting a Commodore MPS803 dot matrix printer to a Windows PC in 2021?

Read in: IT 🇮🇹   EN 🇺🇸

In this video, with an exceptional guest, Francesco Sblendorio of Retrocampus, let's see how connect a Commodore MPS803 dot matrix printer to a modern PC with Windows 10 operating system!

Subscribe my YouTube channel ValorosoIT. Retro technology, vintage audio, retro computers, experiments and tests. Retroprogramming, Basic. Commodore, IBM, Atari, Apple, Texas Instruments, Amstrad, MSX.

If you are interested in assembling the XUM1541 kit, you can consult this article. To install the OpenCBM software and XUM1541 drivers, you can refer to this article.

In addition to the Commodore MPS 803 printer, printers can also be connected to the PC with the procedure described below:

  • Commodore MPS 801;
  • Commodore MPS 1200.

Connect a Commodore MPS803 dot matrix printer to a PC with the XUM1541

Per collegare la stampante ad aghi Commodore MPS803 ad un PC, con sistema operativo Windows 10, utilizziamo l'interfaccia XUM1541. La stampante Commodore MPS 803 è dotata di un connettore seriale IEC e, tramite l’adattatore XUM1541, la possiamo collegare alla porta USB di un normale PC.

XUM1541 USB adapter interface serial cable IEC floppy disk drive Commodore 1541 Teensy2

I recommend connecting all cables with the PC and drive turned off. Behind the printer is a small selector for impostare l'address: per l'esperimento deve essere impostato su 4. After connecting everything, you can turn on the PC and the printer.

OpenCBM CBMage CBMtext Francesco Sblendorio, connect the Commodore MPS 803 printer to the PC computer with Windows 10 operating system, IEC connector, USB, XUM 1541

Tra una stampa e l'altra, può capitare che la stampante rimanga bloccata. In questo caso, è sufficiente scollegare e ricollegare il connettore dello XUM1541 al computer, nonché spegnere e riaccendere la stampante.

Software for printing text and images

To print texts and images with the Commodore MPS803 dot matrix printer (or Commodore MPS 801, Commodore MPS 1200), connected to a Windows 10 PC, you need various software. First, you need to have Spiro Trikaliotis OpenCBM installed, as we saw in this article. Bisogna installare anche i driver dell'interfaccia XUM1541.

Secondly, we need to create a subfolder in C:OpenCBM. Nell'esperimento ho creato la cartella C:OpenCBMSblendorio. All'interno di questa cartella, vanno inseriti tutti i file presenti in fondo a questa pagina (per Windows 10 a 64 bit), scompattando l'archivio compresso:

  • i due batch print-img.bat and print-txt.bat;
  • programs to convert files to print: cbmage.exe and cbmtext.exe, by Francesco Sblendorio;
  • the files you want to print.

cbmage.exe and cbmtext.exe are open source projects that Francesco Sblendorio has published on his Girub. Through this page, you can also download the 32-bit Linux, Mac OS and Windows executables.

Follow me on Instagram channel. Retro technology, Commodore, vintage audio, retro computers, experiments and tests. Retroprogramming, Basic. Commodore, IBM, Atari, Apple, Texas Instruments, Amstrad, MSX.

Stampare un'immagine con la stampante Commodore MPS803 collegata ad un PC Windows 10

Il primo esperimento effettuato nel video riguarda la stampa di un'immagine. Il formato raccomandato per le immagini da stampare è il PNG. La stampante Commodore MP S803 lascia bianche tutte le parti bianche dell'immagine (bianco puro &HFFFFFF). Qualsiasi altro punto di colore differente dal bianco puro viene stampato nero.

Per l'esperimento, ho preparato il logo del mio sito internet, AV.PNG. Ha uno sfondo tutto bianco e il logo scuro.

OpenCBM CBMage CBMtext Francesco Sblendorio, print a bitmap image with the Commodore MPS803 printer connected to a Windows 10 PC, IEC connector, USB, XUM1541

Francesco Sblendorio's program cbmage.exe Reduly any image that has a resolution greater than 480x480 pixels. 480 pixels is, in fact, the maximum resolution that the MPS 803 can print, in graphic mode.

The batch file is used to start printing print-img.bat, seguito dal nome dell'immagine da stampare.

OpenCBM CBMage Francesco Sblendorio analysis program to connect the Commodore MPS803 printer on a Windows 10 laptop, XUM1541, IEC connector, USB

The batch file print-img.bat contains the following commands:

@echo off
rem www.valoroso.it, Amedeo Valoroso
rem Print image file -> Commodore MPS803
rem cbmage by Francesco Sblendorio
rem opencbm by Spiro Trikaliotis

if not exist "%1" goto FileName
echo Printing "%1" …
cbmage "%1" >file.prt
if %ERRORLEVEL% NEQ 0 goto Error
..\cbmctrl lock
if %ERRORLEVEL% NEQ 0 goto Error
..\cbmctrl listen 4 0
..\cbmctrl write file.prt
..\cbmctrl unlisten
..\cbmctrl unlock
..\cbmctrl reset
goto End

:FileName
echo Please specify an existing PNG or JPG file to print.
goto EndX

:Error
echo Error during printing process.

:End
del file.prt >nul
:EndX

Through cbmage.exe, a partire dall'immagine da stampare, si crea il file file.prt, which contains all the various bytes to be sent to the printer.

cbmctrl.exe is an OpenCBM package file which, as we have seen before, is located in the folder C:OpenCBM, while all files for printing images are located in C:OpenCBMSblendorio. For this reason it was put .. (two dots and the slash) before the file name.

cbmctrl lock prevents other processes from using the USB. cbmctrl listen 4 0, for those who know the Basic, corresponds to the command open: apre un canale di comunicazione con l'indirizzo 4, che è la stampante.

With the command cbmctrl write file.prt, we input a file that contains the bytes to be physically sent, via the IEC protocol to the Commodore MPS 803 printer. The bytes are found in file.prt, produced first through the program cbmage.exe.

cbmctrl unlisten closes communication with the printer, cbmctrl unlock frees up the USB port for other processes and finally cbmctrl reset it's like turning the printer off and on again.

Print a text file with the Commodore MPS803 printer connected to a Windows 10 PC

Through the Commodore MPS803 dot matrix printer (or Commodore MPS 801, Commodore MPS 1200), connected to a modern PC, it is also possible to print TXT text files. The files may also contain accented letters, as they are of the program cbmtext.exe by Francesco Sblendorio takes care of converting special characters into pixels to be sent to the printer.

OpenCBM CBMage CBMtext Francesco Sblendorio, as unicode text printing, with special characters, with the Commodore MPS803 printer connected to a Windows 10 PC, IEC connector, USB, XUM 1541

Per l'esperimento, ho preparato un paio di file TXT da stampare. Per avviare la stampa, si utilizza il file batch print-txt.bat, followed by the name of the TXT file to be printed.

Follow me on Instagram channel. Retro technology, Commodore, vintage audio, retro computers, experiments and tests. Retroprogramming, Basic. Commodore, IBM, Atari, Apple, Texas Instruments, Amstrad, MSX.

The batch file print-txt.bat contains the following commands:

@echo off
rem www.valoroso.it, Amedeo Valoroso
rem Print text file -> Commodore MPS803
rem cbmtext by Francesco Sblendorio
rem opencbm by Spiro Trikaliotis

if not exist "%1" goto FileName
echo Printing "%1" …
cbmtext "%1" >file.prt
if %ERRORLEVEL% NEQ 0 goto Error
..\cbmctrl lock
if %ERRORLEVEL% NEQ 0 goto Error
..\cbmctrl listen 4 0
..\cbmctrl write file.prt
..\cbmctrl unlisten
..\cbmctrl unlock
..\cbmctrl reset
goto End

:FileName
echo Please specify an existing TXT file to print.
goto EndX

:Error
echo Error during printing process.

:End
del file.prt >nul
:EndX
OpenCBM CBMtext Francesco Sblendorio, analysis of the program to connect the Commodore MPS 803 printer to the laptop PC Windows 10, IEC connector, USB, XUM 1541

As compared to print-img.bat, l'unica riga che cambia è quella in cui viene richiamato cbmtext.exe using the text file as an argument. In place, therefore, of cbmage.exe, we have cbmtext.exe perché, anziché un'immagine, dobbiamo stampare un file di testo.

The TXT text file is converted to a sequence of bytes in file.prt, compatible with the IEC protocol, which are sent to the printer via cbmctrl.exe by OpenCBM by Spiro Trikaliotis.

Per convertire i caratteri speciali, Francesco Sblendorio ha dovuto disegnare, a mano, tutti i caratteri che mancano alla stampante Commodore MPS803, come ad esempio le lettere accentate, l'alfabeto greco e russo.

OpenCBM CBMage CBMtext Francesco Sblendorio Commodore MPS803 character definition, definition of special characters

The native character set of the Commodore MPS803 is indeed very limited.

Download cbmage, cbmtext, driver XUM1541 e OpenCBM per Windows 10

The ZIP file containing OpenCBM and the drivers to use XUM1541 on PC, is located at the bottom of this article.

Here is the package that includes the files to print images and texts with the Commodore MPS803 dot matrix printer, connected to a PC with Windows 10 64-bit operating system. It also works with Commodore MPS 801 and Commodore MPS 1200 printers.

Commodore-MPS803-CBMAGE-CBMTEXT.ZIP

Follow me on Instagram channel. Retro technology, Commodore, vintage audio, retro computers, experiments and tests. Retroprogramming, Basic. Commodore, IBM, Atari, Apple, Texas Instruments, Amstrad, MSX.

Credits: in the video tutorial, SID music is Turrican 3 (1993) level 1-1 theme by Chris Hülsbeck.

To be notified when I publish more tutorials, experiments and reviews related to retro computers and vintage electronics, I invite you to subscribe to the YouTube channel and activate the notification bell!

Subscribe my YouTube channel ValorosoIT. Retro technology, vintage audio, retro computers, experiments and tests. Retroprogramming, Basic. Commodore, IBM, Atari, Apple, Texas Instruments, Amstrad, MSX.

Posted in Retro Computer, Retro Technology and Vintage Electronics, All articles.

Leave a Reply

Your email address will not be published. Required fields are marked *