• Please review our updated Terms and Rules here

IBM Displaywriter

Maybe there's a simpler way -- does maintenance manual explain how the devices are mapped in memory?

The various IBM maintenance manuals (and troubleshooting guides) are either user-focused or field-service technician focused and lack specific implementation details, although surprisingly you find details like connector pinouts, function-block architecture diagrams and so on. The product update bulletins sometimes hint at low-level implementation details (to explain a fix or workaround) but they are rare occurrences.

info in CP/M-86 reference manual for DW (http://www.nostalgia8.nl/cpm/ibm/cpm6dwrm.pdf) -- f.e. that Control-End causes a power-on-reset, brief description of video memory layout in Section 6...
Agree, very useful tidbit; power-cycling such an old machine to do a hard-reset is very much hand-in-mouth-tense exercise. That manual though looks like a generic DR document with a few DW edits. I wonder if we will find a copy of the released CP/M-86 product (even though it doesn't appear to have any new functionality other than bug fixes). What we have is labeled a "demo" and looks like a fast hack by DR to show to IBM.
 
thanks Shattered for the reminder about that document, it is useful reading for Displaywriter enthusiasts. That manual is frustratingly tantalising, it almost but not quite describes many low-level details but too often stops a few steps short of specifics (the level of detail is uneven across the system). This product support manual has useful theory-of-operation for many of the components (and useful reading for anyone new to 8-inch floppy disk operations).

http://bitsavers.trailing-edge.com/pdf/ibm/6580_Displaywriter/S241-6248-3_Displaywriter_Product_Support_Manual_Feb83.pdf
 
IBM's patents refer to a "Displaywriter System Manual" which should have everything we need :)

Firmware accesses these port ranges. I've identified some of them:
Code:
    AM_RANGE(0x0000, 0x0007) AM_DEVREADWRITE8("pic8259", pic8259_device, read, write, 0x00ff)
    AM_RANGE(0x0008, 0x000f) AM_WRITE (pic_latch_w)
    AM_RANGE(0x0010, 0x0017) AM_DEVREADWRITE8("ppi8255", i8255_device, read, write, 0x00ff)
    AM_RANGE(0x0020, 0x002f) AM_UNMAP
    AM_RANGE(0x0030, 0x003f) AM_UNMAP
    AM_RANGE(0x0040, 0x004f) AM_UNMAP
    AM_RANGE(0x0050, 0x005f) AM_UNMAP
    AM_RANGE(0x0070, 0x007f) AM_UNMAP
    AM_RANGE(0x0120, 0x012f) AM_UNMAP
    AM_RANGE(0x4000, 0x400f) AM_UNMAP
    AM_RANGE(0x5000, 0x500f) AM_UNMAP
    AM_RANGE(0x8060, 0x807f) AM_UNMAP
    AM_RANGE(0x8150, 0x815f) AM_UNMAP
    AM_RANGE(0x81a0, 0x81af) AM_UNMAP
    AM_RANGE(0xc000, 0xc00f) AM_UNMAP
    AM_RANGE(0xe000, 0xe00f) AM_UNMAP
    AM_RANGE(0xe010, 0xe01f) AM_UNMAP
    AM_RANGE(0xe020, 0xe02f) AM_UNMAP
 
Last edited:
Some diagnostics are passing (and others I've simply skipped via debugger hack :) ) and...



(It's saying that keyboard test is failing.)

Character generator ROM is not dumped (and it's in EBCDIC), I've used a generic PC font + translation table. Actual font looks like this:

 
Thanks to Al Kossow (who dumped the remaining ROMs) and nigwil (hands-on tests -- I don't have the hardware), here's some progress (key tests are still failing -- this screenshot required a debugger hack to ignore these failures). EDIT: this is how semi-graphics mode looks like (looks close enough to https://commons.wikimedia.org/wiki/File:Close-up_Display_Writer.JPG):



(+ Animated version).

btw, in Netherlands this system was marketed as Visitext or Visietekst (Visitekst): https://ub.fnwi.uva.nl/computermuseum/inventory_part2.html#B010
 
Last edited:
upd765 chip is actually available on system bus (ports 8158, 815A) and with a few hacks I forced firmware to IPL; there are still a lot of unknowns and nothing completely boots yet. This is Textpack A crash message:

 
It's great to see you guys making progress. At this rate, you'll have it all figured out by the time I get my machine.
 
It may pay for you to do some weight training beforehand. :)

I take it they're heavy, then? ;)

Loading them up won't be too hard - it's all on a pallet, shrink wrapped and my buddy will just forklift it into the bed of my truck. Unloading, OTOH...

I actually got a little more than was in the CL post. A couple extra monitors, base units, I think. I won't know for sure until I get it all unloaded, though.

Here's a pic of the pallet being wrapped.

displaywriters.jpg
 
I take it they're heavy, then? ;)

Loading them up won't be too hard - it's all on a pallet, shrink wrapped and my buddy will just forklift it into the bed of my truck. Unloading, OTOH...

I actually got a little more than was in the CL post. A couple extra monitors, base units, I think. I won't know for sure until I get it all unloaded, though.

Here's a pic of the pallet being wrapped.

View attachment 35266

were there any floppies with it?

the main thing we're missing now is the terminal emulation software and more sophisticated versions of the word processor
 
the main thing we're missing now is the terminal emulation software and more sophisticated versions of the word processor
Adding some detail to Al's comment, some of what we know remains missing, but likely not an exhaustive list (I will do another run around of the documentation and update if I find more):

Textpack6 - TP4 + automatic footnotes, automatic outlining, automatic column reference and column heading display, keystroke store, recall and editing, background/trail printing, electronic spelling dictionary, keystroke save
Magnetic Card Conversion - utility to copy from Magcard to floppy diskette?
* Reportpack (AEK has this on Bitsavers now)
IBM 3270 Data Stream Compatibility
IBM Displaywriter System Asynchronous Communications Program
IBM Displaywriter Binary Synchronous Commucations Program
Languagepack 1
Languagepack 2
 
Last edited:
Displaywriter development tools/utilities hosted on VM or MVS and IBM Series/1

Displaywriter development tools/utilities hosted on VM or MVS and IBM Series/1

This was found recently too, buried in an internal IBM PC newsletter:

http://bitsavers.trailing-edge.com/pdf/ibm/pc/pc/personal_computer_newsletter/19811201.pdf

Code:
8103-09 PC PROGRAM DEVELOPMENT TOOLS ON S/370

There is an extensive set of program development tools available
for those who may need to develop large modules of code in PC
assembler language, and who want to work in a VM or MVS environment.

The tools were developed to support the Displaywriter, which is
driven by an 8086 microprocessor. (The 8088 used in the PC is
software compatible with the 8086.)
Items available include:

• an H-type assembler and macro processor
• a linkage editor
• a system builder (for building Displaywriter diskettes)
(these run under both MVS and VM)
• utility for reading and writing diskettes on a Series/1 (runs on a Series/1)
• a fullscreen debug tool for the Displaywriter (runs on a Displaywriter)

Abstracts from documentation:
1. 8086 MICROPROCESSOR SOFTWARE SYSTEMS MANUAL (355 pages) This
is a description and user guide for an 8086 microprocessor
assembler and linkage editor. These development tools are hosted on S/370 under MVS or CMS and are incompatible with
Intel supplied tools. The assembler is an optimizing assembler, and is a modification of Assembler H. The linkage editor
is a modification of the OS linkage editor. 

2. 8086 PRINCIPLES OF OPERATION (230 pages) This document lists
and discusses the 8086 instruction set using the mnemonics
used by the 8086 assembler (i.e., not Intel's mnemonics). The
instructions are grouped according to function. 

3. 8086 REFERENCE CARD This is a summary of the Software Systems and Principles of Operation manuals. 

4. SERIES/1 DISKETTE UTILITIES FOR THE IBM DISPLAYWRITER (41 pages)
This manual describes utility programs for the
Series/1 computer under the EDX operating system, which support
a diskette interface between the IBM Displaywriter and a
S/370 host. The primary functions of these utility programs
are to create program IPL diskettes for the Displaywriter and
to read and transmit Displaywriter dump diskettes. 

5. DEVELOPMENT NATIVE DEBUG TOOL - IBM DISPLAYWRITER (53 pages) 
This debug tool is used in IBM Displaywriter software development.
It executes on the IBM Displaywriter processor and
uses the Displaywriter keyboard/display to interface with the
programmer. It can be adapted to run on other 8086 systems. 

For copies of documentation and code (all distributed by VNET),
site coordinators should contact:
Earl Franklin, VM(AUSVM2/A132449), Austin, 8+678-9825
 
were there any floppies with it?

the main thing we're missing now is the terminal emulation software and more sophisticated versions of the word processor

I foolishly failed to keep a copy of the original CL post, but I don't recall any being mentioned. That said, if there are any (in the drives, for example) it might be wise to mail them to you or another member for copying before I try to read them in a drive of unknown functionality. I don't have any known good 8" drives at this time - though that could change, if I get randomly lucky.

I still don't have a definite date for when I'll be collecting all of this. Time, work commitments, SWMBO's schedule and the weather (I really hate the Raton Pass) are all complicating factors. But I'll keep you all posted once things firm up.
 
It's great to see you guys making progress. At this rate, you'll have it all figured out by the time I get my machine.

... but exposure to this much IBM over-engineering may leave permanent scarring :)

Seriously though, at this point a logic analyzer could help a lot to improve high-level emulation of floppy board.
 
... but exposure to this much IBM over-engineering may leave permanent scarring :)
Any resemblance between an IBM PC and an IBM Displaywriter stops at the badge :)

Seriously though, at this point a logic analyzer could help a lot to improve high-level emulation of floppy board.
I will try to help acquire some traces, but this will be very much a learning exercise for me.
 
... but exposure to this much IBM over-engineering may leave permanent scarring :)

I have two AS/400e systems and a stack of 5150s (my second stack - I lost the first stack when we moved across the pond). Not to mention various ATs, PS/2s, etc. I briefly owned an RS 6000, but somebody treated themselves to a five fingered discount before I could get it off site. And, over 30 years ago, I took required classes in 360/370 assembler - though I don't remember any of it. I think I'm already scarred for life. :)

Seriously though, at this point a logic analyzer could help a lot to improve high-level emulation of floppy board.

I might actually have one of those, somewhere. Not sure if I have any test leads for it though. Not my strong suit (unlike my buddy, who designed a well known European company's first logic analyzer) but if I can find some leads I'll give it a whirl.
 
Getting there... bit 6 in floppy status port (8150) apparently reflects 'idle' status of MCU and upd765 both. Diagnostics disks are now usable and CCP/M boots. Textpack does not yet.

 
Adding some detail to Al's comment, some of what we know remains missing, but likely not an exhaustive list (I will do another run around of the documentation and update if I find more):
IBM Displaywriter System Asynchronous Communications Program
IBM Displaywriter Binary Synchronous Commucations Program

Found both of these, will get them imaged soon (fingers crossed they image ok...)

By the way, the UCSD p-System Runtime for IBM Displaywriter diskette set:

https://drive.google.com/drive/folders/0B56jJyqriCmvZlpISXZaUkZRN28?usp=sharing

Look under IBM/Displaywriter

I will add the DBMS (DataBase Management System) known as Logiquest III soon.
 
Last edited:
Back
Top