Jump to content
JoSch

Proof of concept printer emulation support.

Recommended Posts

Hi.

 

I have finished my first milestone for printer emulation: Implementing an Atari 1027 emulation.

It has international character support, underline support and prints on any native printer.

On Windows, my Deskjet driver always prints an empty first page. I don't know, whether that's a driver issue, but on OSX this never happens.

I have attached an Windows binary for testing.

Also, you now can have up to four printers.

 

My source code can be found here: https://github.com/josch1710/RespeQt/tree/printers.

 

Next milestone would be further refactoring, and finding a way to fill the empty last disk slot on the right column and saving the preferences.

Then I like to implement some further printer like 1020, 1029 (someone knows a source for the manual?) and the like. Help is welcome.

 

Bug report are welcome, too.

 

The old text printer window support is still in there, just select the text printer in the printer list and open the text window.

For the Atari 1027, select the printer in the list, press the printer icon and select your native printer.

Now print from your Atari. When you are finished, just press the eject button, and your native printer should begin printing.

If you want to print something, just press the printer icon, again.

RespeQt-Printer.zip

  • Like 10

Share this post


Link to post
Share on other sites

I implemented an Atari 1020 emulation and got the attached prints from the sample programs on the 1020 master disk.

random.pdf still has some glitches. But at least, the emulation works mostly.

I have to test the text facilities and then I commit everything and build executables.

graph.pdf

random.pdf

sample.pdf

Edited by JoSch
  • Like 6

Share this post


Link to post
Share on other sites

 

Then I like to implement some further printer like 1020, 1029 (someone knows a source for the manual?) and the like. Help is welcome.

 

 

Atari 1029 Manual.pdf

  • Like 2

Share this post


Link to post
Share on other sites

I don't recall - was the 1029 capable of producing dot-matrix graphics for use in something like The Print Shop? Man, wouldn't it be fun to make some old signs like that again? Of course, most of us no longer have tractor-feed printers, so mult-page banners would need some physical cutting and pasting, I imagine. :)

Edited by DrVenkman

Share this post


Link to post
Share on other sites

I don't recall - was the 1029 capable of producing dot-matrix graphics for use in something like The Print Shop? Man, wouldn't it be fun to make some old signs like that again? Of course, most of us no longer have tractor-feed printers, so mult-page banners would need some physical cutting and pasting, I imagine. :)

Print shop is the entire reason I keep my old dot-matrix hooked up to my 8-bit. A few weeks ago I finally fixed my MPP 64kB print buffer. Turns out the power supply went bad. Had enough voltage to power the LEDs, but not let the self test run.

Share this post


Link to post
Share on other sites

Print shop is the entire reason I keep my old dot-matrix hooked up to my 8-bit. A few weeks ago I finally fixed my MPP 64kB print buffer. Turns out the power supply went bad. Had enough voltage to power the LEDs, but not let the self test run.

 

I had a Star SG-10 as a kid but that was a very long time ago. Somewhere buried in storage I have an Atari tractor-feed printer and power supply but it's horribly yellowed. I got it in a giant lot at least 15 years ago and I've never even tried it. I should dig it out and see if it works sometime. Of course, if RespeQt printer emulation gets there, I'll at least be able to fake it. :)

Share this post


Link to post
Share on other sites

Well, at least when I (or somebody else for that matter) will implement an ESC/P emulation, we will have most of the bases covered, I think.

Share this post


Link to post
Share on other sites

If you are open to requests- Epson 9-pin (is that the same as ESC/P mentioned above?). That was a popular standard then. Maybe Okidata Okimate 10, as that was a popular (but crappy) color printer

  • Like 1

Share this post


Link to post
Share on other sites

The system is fully open to integrate any printer, but ESC/P (e.g. FX-80) is supported by a lot software, so I will do them before any other printer type, because I only have so much time to work on that.

Apart from that Epson is open about publishing ESC/P documentation, because they still sell these impact dot printers.

So, if you want these printers, please give us a manual with the codes, so me or somebody can implement them.

And some software that would support them, would be nice.

Edited by JoSch

Share this post


Link to post
Share on other sites

The Star NX1000c is compatible with the Epson JX80 color printer.

  • Like 3

Share this post


Link to post
Share on other sites

I wanted to implement an output window, but everything works except, there is nothing to see :-/

For now, I will deactivate the window as out selection in my code, but perhaps somebody look over the WindowOutput class and tell me, what I am doing wrong.

Share this post


Link to post
Share on other sites

I'm wondering ... has JoSch or anyone else done any more work with emulating printer output?

 

I pulled my Atari 1025 out of storage and tried it this weekend. I've had this for about 15 years but never even plugged it in. Unfortunately, it appears to be non-functional. I plugged it in and the power LED lights up immediately, regardless of the position of the power switch; that can be good, eh? :) Nothing but a strange hum, and that only when the switch is set to OFF (what?!?). So, yeah ... Until I get up the inclination/motivation to take it apart and investigate, then learn the inner workings of 33 year old printers, I'm not sure this one will ever print again.

 

​Anyway, that got me wondering if anyone had done any further work with printer emulation. My teenaged-self had a cracked copy of The Print Shop and - surprise! - it still boots up today. :) It sure would be fun to "print" to an output file that could then be printed on a modern inkjet or laser printer.

  • Like 2

Share this post


Link to post
Share on other sites

I'm wondering ... has JoSch or anyone else done any more work with emulating printer output?

 

I pulled my Atari 1025 out of storage and tried it this weekend. I've had this for about 15 years but never even plugged it in. Unfortunately, it appears to be non-functional. I plugged it in and the power LED lights up immediately, regardless of the position of the power switch; that can be good, eh? :) Nothing but a strange hum, and that only when the switch is set to OFF (what?!?). So, yeah ... Until I get up the inclination/motivation to take it apart and investigate, then learn the inner workings of 33 year old printers, I'm not sure this one will ever print again.

 

​Anyway, that got me wondering if anyone had done any further work with printer emulation. My teenaged-self had a cracked copy of The Print Shop and - surprise! - it still boots up today. :) It sure would be fun to "print" to an output file that could then be printed on a modern inkjet or laser printer.

I got sidetracked by other projects and I hope to finish the stuff, I have at the moment (i.e. text printer, Atari 1027 and 1020), soon. Stay tuned.

  • Like 6

Share this post


Link to post
Share on other sites

This might be useful. I found it a couple of days ago when looking for an ESC/P emulator.

 

https://github.com/RWAP/PrinterToPDF

 

Well spotted - this is one of my projects and a spin off from my Retro-Printer project - www.retroprinter.com

 

The PrinterToPDF is the public domain version of the conversion code - it is written in C and tested running on a Raspberry Pi. It can of course be incorporated into another project such as Epson printer support to emulators.

 

It handles most of the ESC/P2 control codes so is more versatile than many of the older projects you can find out there.

  • Like 3

Share this post


Link to post
Share on other sites

 

Well spotted - this is one of my projects and a spin off from my Retro-Printer project - www.retroprinter.com

 

The PrinterToPDF is the public domain version of the conversion code - it is written in C and tested running on a Raspberry Pi. It can of course be incorporated into another project such as Epson printer support to emulators.

 

It handles most of the ESC/P2 control codes so is more versatile than many of the older projects you can find out there.

When will Retro-Printer be available? I've been watching the web page for a few years and I definitely want one!

Share this post


Link to post
Share on other sites

It is a shame that people have been waiting, although this is something I envisaged back in 1997, so there are probably not many who have waited as long as me!

 

Hardware development was a little slowed recently as we struggled to work out why some equipment was saying the printer was not connected even though we were supplying all of the necessary centronics signals! Thankfully, we appear to have resolved that and as you have seen, we have worked hard on improving the software side of the project.

We have just sent out a small batch of the v2 Retro-Printer for final testing across a range of equipment and platforms. Assuming the feedback is positive on this, then we aim to have some for sale in October.

  • Like 2

Share this post


Link to post
Share on other sites

Some progress was made and here is the result for Windows: https://www.dropbox.com/s/m9ki8dnbjsw9pn0/respeqt_printers_win.zip?dl=0

Under the disk drives, you will find four panels for P1: - P4:. There you choose the Atari printer, you want to emulate, and the destination for the print.

At the moment, we have emulations of Atari 1020 and 1027 as well as a text printer (I don't know whether we still need that).

For the destination, you have the option of output for SVG, text window and any printer defined in your system.

The SVG output creates an SVG file. The text window is the split window, we already had.

To start the print capturing, you have to press the connect button. There you have to select the SVG file or the printer configuration. The text window will open.

After that, you can print on the emulated printer.

When you're done, it's important to press the disconnect button, on the far right of the printer panel. When pressed, the SVG file or print job will get finished.

TODOs:

- Saving the configuration.

- Verifying that quitting the application, disconnects the output devices, which guarantees that print jobs are closed correctly.

- More printers

 

Any questions? Bugs, suggestions? Pose them here, I will try to answer them.

  • Like 2

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...