Overview
Amiga Forever and C64 Forever include different emulated printers with live 
preview, as well as the ability to send data directly to the PC printer 
("passthrough" mode).
The output can also be saved as a file. 
TrueType fonts to view and edit the output with 
applications like Microsoft Word or Adobe 
Acrobat are 
included.
Configuration
To choose a printer right-click a title, select Edit, go to the Configuration tab and select the 
desired device options. On Amiga systems, printers can be attached to the parallel and serial port. 
On PET/CBM systems the printers are connected as Unit 4 and Unit 5. 
Each emulation environment can use up to two printers 
at the same time. 
An additional (optional) emulated 
PostScript printer can also be used. This 
requires the Ghostscript package to be 
installed on the Windows side.
Windows printer options can be adjusted when 
the 
Print dialog opens. Defaults can also be set under 
Tools/Options/Emulation.
Built-in Emulated Printers
As of version 11, Amiga Forever and C64 Forever feature the 
following emulated (virtual) printers:
- EpsonQ - A laser-quality ESC/P2 
color printer that works well with the EpsonQ 
printer driver that is preset in the 
Printer Prefs of most Amiga systems.
- MPS 803 - The iconic 6x7 dot matrix 
printer, perfect for 8-bit systems like 
the VIC 20 and C64. Combines 8-bit 
printing with modern precision. On the 
Amiga it can be used as a plain text 
printer with the Generic driver, or 
using CBM/MPS control codes.
- CBM 8026 - A laser-quality emulation 
of an 8-bit daisy wheel printer, 
enhanced to support text style 
variations. Perfect for ASCII art and 
PET/CBM listings. On the Amiga it can be 
used as a plain text printer with the 
Generic driver, or using CBM/MPS control 
codes.
At runtime, select the printer icon in 
the status bar at the bottom of the playback 
window to access built-in features like 
printing a listing (for 8-bit systems), or 
to open the printer dialog.
After the page content has been 
rendered by the emulated printer, you can make various adjustments, 
and 
then optionally send the output to the actual printing destination on the PC. 
This may be a "real" printer, a "Print to 
PDF" printer, or a file. Different 
combinations of emulated and destination 
paper sizes are supported, including 
multiple pages per destination sheet and 
double-sided printing.
The quality of text rendered via the 
EpsonQ and CBM 8026 virtual printers matches 
that of PostScript, as these emulated 
printers also use vector fonts. Results in 
graphics mode may vary and depend on the 
intentions.
The MPS 803 virtual printer is 
designed to recreate the original dots using 
modern vector technology. The results are 
perfect for a retro-looking greeting card, 
but can also be scaled up to poster size.
If you find any discrepancies relative to 
the actual output of the respective "real" 
printers, please report them via the 
software (Help/Send Feedback).
Enhanced Features
The built-in virtual printers support 
high-quality vector rendering with live 
preview, a loudspeaker (for 
"bell" signalling) and an extended character 
set, including European and Japanese 
characters used in different C128, C64, VIC 
1001 and VIC 20 
models.
By default, a narrow-carriage printer is 
emulated, and the behavor of the original 
printer is emulated for paper sizes up to 
10" (254 mm).
When a paper size wider than 10" is set, 
the emulated printers switch from 
narrow-carriage ("80 columns") to 
wide-carriage ("132 columns") mode.
When a paper size wider than 15" is set, 
the emulated printers switch to "infinite 
carriage" mode. This can be useful for 
generating banners and poster-size printouts 
in a way that was not possible with "real" 
printers.
EpsonQ Emulation
The virtual EpsonQ color laser printer 
acts as a generic ESC/P2 device. This is the 
recommended emulated printer for Amiga 
systems. It is also compatible with many 
8-bit applications.
The ESC/P2 specification covers a wide 
range of features, many of which are 
tailored for specific hardware. The 
emulation implements a practical subset, 
aiming for compatibility with the Amiga 
"EpsonQ" drivers as well as with "Epson FX" 
printers used by CBM 8-bit systems. In 
raster graphics mode, densities up to 360 
dpi x 360 dpi are supported, with automatic 
stripe merging to reduce banding artifacts. 
Barcodes, user-defined characters and some 
fonts introduced in later printer models are 
not supported. The emulation includes 
support for some ESC/P commands that were 
deprecated in ESC/P2, like those for text 
justification.
The default configuration has a narrow 
carriage ("80 columns"), which can be 
switched to wide ("132 columns") or 
"infinite" carriage mode by changing the 
paper size.
For a quick test, start "Amiga 4000 
Enhanced 3.X" from the Systems folder, click 
Clown.pic at the bottom, then select Print 
from the Project menu. Press Ctrl + Scroll 
wheel to zoom in and out. To preview in 
color, make sure the selected Destination 
printer supports it (e.g. Microsoft Print to 
PDF). Prefer a slower experience where you 
can literally watch yellow, magenta and cyan 
stripes appear one by one? Start "Amiga 2000 
Enhanced 1.3", then launch GraphicDump 
(inside Utilities). Be patient, as this 
configuration emulates a CPU running at the 
speed it had 40 years ago.
If you miss specific ESC/P2 features, 
please send your feedback via the software 
(Help/Send Feedback).
MPS 803 Emulation
This virtual dot matrix printer aims to 
accurately implement the complete 
specifications and behavior of the popular 
MPS 803 hardware, including the original 
dot-matrix font and additional characters.
This 7-pin printer is ideal for 
accurately rendering text and graphics from 
systems such as the VIC 20 and C64. Combined 
with the optional replica of fanfold paper, 
complete with realistic cuts and 
perforations, it provides an authentic and 
nostalgic printing experience ideal for 
education and retrocomputing enthusiasts. 
The high-quality "vector dots" further 
enhance the visual fidelity, allowing 
unparalleled realism and scalability.
In the default narrow-carriage 
configuration, the print head cannot be 
positioned after character 80. If additional 
printable data is received, the print head 
moves to the next line. Control sequences to 
move the head beyond the printable limit are 
ignored. The maximum character position that 
can be set via a DLE control sequence, i.e. 
CHR$(16), is 79. The maximum dot position 
that can be set via an ESC DLE control 
sequence, i.e. CHR$(27) followed by 
CHR$(16), is 479 (not 639 as stated in some 
editions of the documentation).
In wide-carriage mode, each line may 
contain up to 132 characters. The print 
position can be set up to character position 
99 via a DLE control sequence, or up to dot 
position 791 via an ESC DLE control 
sequence. Character positions larger than 99 
cannot be set via a DLE control sequence, as 
that only allows for exactly two ASCII 
digits.
In "infinite carriage" mode, the print 
position can be set up to character position 
99 via a DLE control sequence, or up to dot 
position 65535 via an ESC DLE control 
sequence.
Whether you're curious about how this 
iconic 6x7 dot matrix printer worked or 
looking to introduce a new generation to 
vintage computing, check out the "MPS 803 
Printer Playground" title in C64 Forever 
(under Applications). It includes the MPS 
803 User Guide and all sample listings, 
ready to load from disk. When you run an 
example, the Print dialog opens 
automatically to display the output shown on 
the corresponding manual page.
CBM 8026 Emulation
This virtual daisy wheel printer aims to 
accurately implement the complete 
specifications and behavior of the original 
CBM 8026 hardware, using a Pica Courier (10 
cpi) or an Elite Courier (12 cpi) print 
wheel. Enhancements include "quote mode", 
reverse, PETSCII and other special 
characters.
Without the limitations of its hardware 
counterpart (high costs, low speed, limited 
character set), this virtual printer is the 
best choice to render high-quality listings 
on CBM 8-bit systems.
The default configuration has a narrow 
carriage ("80 columns"), which can be 
switched to wide ("132 columns") or 
"infinite" carriage mode by changing the 
paper size.
PostScript Options
Newer versions of the Amiga operating system, as well as Amiga graphics, word processing, DTP
and other applications, also support the PostScript page
definition language, which allows for higher-quality graphics mode output 
compared to EpsonQ raster graphics. Even 8-bit systems like the C64 support 
PostScript, via applications like geoPublish and geoWrite that use the GEOS 
laser printer drivers.
Once you are able to produce PostScript 
output from the application running in the emulated system, this can be rendered on any printer 
attached to the PC. To allow for this, in 
the title settings configure the printer 
port to one of:
- PostScript emulation (to print to 
a non-PostScript printer, to PDF, or to 
print to file)
- Passthrough (if printing to a 
"real" PostScript printer)
The optional emulated PostScript printer requires the Ghostscript
package (a third-party application) to be installed on Windows, making it possible to 
interpret the PostScript output and convert 
it into a format that can be processed by the 
(non-PostScript) Windows printer. On a 64-bit 
version of Windows, both the 32-bit and the 
64-bit versions of Ghostscript need to be 
installed. Once 
Ghostscript is installed, additional features 
like "Save as PDF" 
become available in the Print dialog of Amiga 
Forever and C64 Forever. As this is not a 
built-in emulated printer, live preview and 
other features may not be available.
PostScript Emulation is a high-quality option 
that can be used when the 
Amiga or 8-bit application is able to generate PostScript 
output, but the PC does not have a 
PostScript printer attached. If instead the 
PC has a supported PostScript printer 
attached, you should try to use Passthrough 
mode first (there is no need for PostScript 
emulation).
The Amiga Printer Preferences include a
simple PostScript printer driver. If your
Amiga application (e.g. PageStream or 
Professional Page) offers built-in support for PostScript, we recommend,
as a general rule, that you choose the latter print option instead
of the PostScript driver in the Printer Preferences.
Passthrough Mode (Native Printing)
If the Amiga or CBM 8-bit title has a driver for the 
device that is attached to the PC, you can select 
"Passthrough" (formerly "Native") mode. This 
includes printing in PostScript to a modern 
PostScript printer that is directly 
supported by application that is generating 
the print job.
As Passthrough mode does not use a 
built-in emulated printer, live preview and 
other features may not be available in the 
Print dialog.
While the Print dialog is open, the 
printer data is accumulated until the Print 
button is pressed. This makes it possible to 
select a different destination printer, or 
to save the file.
Printer Drivers
The emulated printers render the page as 
if it was printed by the printer being 
emulated, not by the device that is attached 
to the PC, which may be of a different type. 
The Amiga or 8-bit software only needs to 
have drivers for the virtual printer being 
used. It does not need to support the actual 
printer connected to the PC (unless it is 
printing in Passthrough mode). The 
"translation" from the emulated printer to 
the physical printer is done by Amiga Forever 
or C64 Forever. 
All 8-bit programs and some Amiga 
applications (e.g. SBase) output 
directly via their own drivers (rather than 
the Amiga Prefs printer driver). In that 
case, select a driver that most closely 
resembles the emulated printer. If adjusting 
these settings manually, also remember to 
set the output to the desired port (parallel 
port on the Amiga, or Unit 4 or 5 on CBM 
systems).
When Passthrough mode (rather than an emulated printer) is used, the Amiga 
or 8-bit software needs to have the correct drivers for the printer connected 
to the PC. Even on Amiga systems, it may not always be easy to find an up-to-date printer
driver for a modern printer. Third-party Amiga packages like 
Studio Professional and TurboPrint include a wider choice of high-quality Amiga 
printer drivers than the Amiga operating system.
The default ports for printing are the 
parallel port on the Amiga, and Unit 4 on 
PET/CBM systems.
If you do not have an Amiga driver for 
the PC printer, leave the Amiga 
configuration set to EpsonQ to use the 
emulated EpsonQ printer. The emulated 
printer also supports additional ESC/P2 
commands and graphics densities used by 
third-party drivers like EpsonQPlus by Wolf 
Faust.
Most PET/CBM systems should work fine 
with the CBM 8026 printer, while printing 
applications for systems like the VIC 20 and C64 
generally support the MPS 803. The CBM 8026 
printer is the best option for printing 
listings on these systems as well.
Save Emulation Data to File
The Print dialog in Amiga Forever and C64 
Forever also features a Save to File option, 
which saves the data stream received from 
the emulation session to a 
file. This may be useful for archiving 
purposes, or whenever it is not possible to 
directly send the printer output to a local 
port.
Two formats are supported [note: 
.rp-print is still under development]:
- [planned] Printer Package (.rp-print) saves 
the raw printer data along with details 
that include computer and printer model, 
character set information, and other 
metadata. The resulting file can be 
opened by Amiga Forever and C64 Forever 
to run the print job again, or to save 
the data in a different format.
- Binary (.bin) saves the exact byte 
stream as generated by the printing 
application, without additional 
character set information or other 
metadata. This format is comonly used to 
save PostScript files. This format does 
not fully preserve 8-bit printer 
data because the character set 
information provided by the secondary 
address of the OPEN command, as well as 
other encoding options set at runtime 
(e.g. via ASCI/CC on the C128) are lost. 
Other than for this limitation, the 
resulting file can be opened by Amiga 
Forever and C64 Forever to run the print 
job again, or to save the data in a 
different format.
Print Destination Pages to File
In some cases it is desirable to save the 
rendered page output (rather than the raw 
binary stream) to a file format such as PDF, 
XPS or RTF, which can then be opened and/or 
edited with other page-oriented 
applications.
If a virtual printer like Microsoft Print 
to PDF, Adobe PDF, or Microsoft XPS Document 
Writer is installed, it can be selected as a 
printer destination. The built-in emulated 
printers will render content in vector 
quality, producing a result of 
uncompromising visual precision.
In PostScript emulation mode, an 
additional "Save as PDF" virtual printer 
becomes available. This converts the 
PostScript data to PDF using the same 
Ghostscript engine as the PostScript 
emulation. This is the recommended option to 
convert Amiga PostScript to PDF. When other 
virtual printers like Microsoft Print to PDF 
or Adobe PDF are used, the conversion is 
done via an intermediate bitmap, losing the 
vector layer.
A limitation of the virtual printer 
approach is that font metadata information 
and exact spacing are not preserved for copy 
and paste purposes (e.g. copying from the 
resulting PDF and pasting into Microsoft 
Word may not automatically use the correct 
font). To overcome this and make editing 
easier, a "Save as RTF" (.rtf) format is 
under development. This will generate a formatted 
document that can be opened, edited and 
printed by applications like Microsoft 
Word. This format will only be available when 
printing with the built-in emulated 
printers.
Related Links