• Updated 2023-07-12: Hello, Guest! Welcome back, and be sure to check out this follow-up post about our outage a week or so ago.

ImageWriter II 32K buffer card cloning project

sivolc73

Member
Hi, I'm currently using an old ImageWriter II on my machine to print small sized envelope, I find it very convenient since it doesn't have strict paper size limitation!

My problem is, mine doesn't have a buffer card, I use it via a serial adapter at very low baud rate to avoid filling the buffer...

Does any of you have schematic or even just high-resolution photos of the original buffer card? I know there is the Q-buff card, the ImageWare Orange Micro ImageBuffer and also the OEM apple 32k buffer card that exist, the original apple one is by far the simplest one and I would like to clone it.

The only photo I found of it is from the top only and a bit blurry so it doesn't help much with the retro-engineering...

So, if you got one and would like to share photos it would be greatly appreciated!

Thank you!
 

sivolc73

Member
Thanks :) @Paralel

Would you have a photo of the back too? And could you confirm the inscription on U5?

It confirm to me that 3-10 are data lines, I suspect most of the pins upper of 13-15 is only for more advanced functions like local talk, 1-2 +VCC and 25-26 GND. U4 is a programmable array which is bad news for me 😅 but the original buffer card seems to use only 74LS series chips to get the same result so I still have hope!
 

Paralel

Well-known member
Looking at the original image of the card I can say that the markings on U5 are "142308" & "M5M5256BFP-85L"

Unfortunately that card was given to a friend, and the back was not photographed. I'll try to get ahold of him and see if he can either photograph the back or can lend me the card.
 

NJRoadfan

Well-known member
What is the current application? These cards were made obsolete by printer spoolers on the host computer. The ImageWriter II is slow, this isn't going to make it faster. Printing straight text using the built-in fonts is going to be faster then using graphics or fancy fonts rendered as graphics like any Mac or modern printer driver will output.
 

Paralel

Well-known member
What is the current application? These cards were made obsolete by printer spoolers on the host computer. The ImageWriter II is slow, this isn't going to make it faster. Printing straight text using the built-in fonts is going to be faster then using graphics or fancy fonts rendered as graphics like any Mac or modern printer driver will output.

I'm guessing his host system can't use a spooler?
 

sivolc73

Member
What is the current application? These cards were made obsolete by printer spoolers on the host computer. The ImageWriter II is slow, this isn't going to make it faster. Printing straight text using the built-in fonts is going to be faster then using graphics or fancy fonts rendered as graphics like any Mac or modern printer driver will output.
The support for spooling across a RS232 to USB adapter and the printer driver itself is very bad, I can't exactly blame the linux devs to not support this 30 years old printer haha so I never got it to work, I can slow down the communication baud rate to almost the minimum but then the printer can print way faster than the input ant it's super slow. I don't print super long things on this but a full page can overflow the built in buffer (in graphic mode) So a buffer card could just solve my problem if they were not this sparse and expensive online.

So it's a classical case of turning a problem easily fixable by a 100 bucks purchase into a three weeks project that will certainly cost the same 😅 but also If I can create a simple buffer card based on modern hardware it could easily be a sub 10$ PCB available for any hobbyist :)
 

NJRoadfan

Well-known member
Sounds like a cabling problem if you are having buffer overflows. Many cheap cables omit the hardware flow control pins. Hardware Flow Control should be enabled on the printer and set the DTR line to false. On the software side, as soon as DTR is detected as false, it should stop sending data to the printer.

Cable specs are here: https://archive.org/details/AppleImageWriterIITechnicalReferenceManual/page/n203/mode/2up

Ensure you have a properly wired cable, and set SW 2-3 to open to use hardware handshaking. Make sure your USB-to-RS232 adapter is set to 9600baud and has hardware flow control turned on.

Note: The actual plug-in card interface specs, including the memory refresh timings aren't in the ImageWriter II tech ref. They ARE in the ImageWriter LQ Reference which I can scan if needed.
 
Last edited:

NJRoadfan

Well-known member
Here are some terrible cell phone photos of the specs. That should be enough to reverse engineer a card.
 

Attachments

  • IW Interface Specs.pdf
    5.3 MB · Views: 12

sivolc73

Member
Yes it's the same photo that let me assume it would be reasonably simple to copy
Sounds like a cabling problem if you are having buffer overflows. Many cheap cables omit the hardware flow control pins. Hardware Flow Control should be enabled on the printer and set the DTR line to false. On the software side, as soon as DTR is detected as false, it should stop sending data to the printer.

Cable specs are here: https://archive.org/details/AppleImageWriterIITechnicalReferenceManual/page/n203/mode/2up

Ensure you have a properly wired cable, and set SW 2-3 to open to use hardware handshaking. Make sure your USB-to-RS232 adapter is set to 9600baud and has hardware flow control turned on.

Note: The actual plug-in card interface specs, including the memory refresh timings aren't in the ImageWriter II tech ref. They ARE in the ImageWriter LQ Reference which I can scan if needed.
I might try to use the printer with a computer that have a built in serial port, the adapter I made is based on this pinout from the manual, DIP switch like you said and driver configured with flow control, maybe the USB adapter is crap, I still find it a nice project to try to build a buffer card tho :)
 

sivolc73

Member
@NJRoadfan I have an almost complete circuit desing, Is there a mention about the address space somewhere? since the ram chip have 15 address lines and the data bus transmit twice at 8 bit width I'm not sure if I drop the first or the last bit, I would guess the first since it must be used to access the ROM, integrated RAM and registers of the CPU, also, the low-order bits are sent every cycles, any thoughts? It's my first hardware project with vintage hardware and logic level stuff :)
 

NJRoadfan

Well-known member
What you see there is it and the RAM chips should have 16 address lines. See page 4 of the manual, the ALE provides A0-A7, while A8-A15 is provided by the page select register. You can only transfer data to a RAM card in 8K increments since you can only directly read/write the lower 8 address lines. The upper 8 are your bank number.

I'm not an EE, so I'm not familiar with the hardware details on how to actually do it. The ImageWriter II isn't a very complicated machine, so don't overthink it. The damn thing can't even provide detailed messages over AppleTalk, it literally spits out the Printer Status Register in response to PAPStatus packets!
 
Top