Microlog Hi-Res Graphics Card

This card seems to have been manufactured by Microlog, but to be fair, my only evidence of that is that Microlog appears in the ROM. And the sockets are blue like some other Microlog boards.

I have no manual for this card, and that’s a problem for what appears to be quite a complex card. It has 128kB of RAM which seems like a lot for what i assume is a monochrome card. The NEC uPD7220 graphics processor chip is particularly interesting.

Initially, this card appeared to me to be a graphics card – a processor would access it via the STD bus. In light of my experience with the Little Video Card, i had a closer look and the STD bus interface seemed to be limited to some I/O, and it did appear to have a serial port. A 6809 processor (itself a little unusual) seems to hold the thing together.

I popped the card into an STD backplane, and had a look at the video output. The syncs were clearly present and at 50Hz / 15kHz. I connected a monitor, and a cursor was visible in the top left corner.

Then i buzzed out the serial port. It appeared to be a similar setup to the Little Video Board, so i thought that it may play nicely with a Pulsar Little Big Board, but it just caused the LBB to hang. I tried the Microlog MC52 card instead, but this had the added complexity that it needed a couple of spaces to automatically set the baud rate. At this point, i realised that the card should have a keyboard input. I suspect that there is DIL header for an ASCII keyboard, which i don’t yet have.

I improvised and used my trusty IBM terminal with the MC52 and forked the transmit line from the MC52 to the Hi-Res Graphics Card. After the obligatory RS232 trial and error, i was happy to see the MC52 basic prompt come up on both the terminal and the monitor.

I had already dumped the ROM. I figured i would probably have to disassemble it to get all the answers, but there was one clue in plain sight:

There seemed to be a dialogue that would allow entry into the graphics mode. There were also some tantalising numbers that looked a lot like pixels.

I didn’t have a clue as to how to provoke the dialogue, though. I hoped the card might just emulate a Tektronix 4010 or something similar, but i could not get any of the sequences to do anything – other than move the text cursor as might be expected for, say, a televideo text terminal emulation.

Out of desperation, i prodded somewhat randomly and did indeed get the prompt to come up – and it was a very tidy graphics prompt. With some brute force, i discovered that ESC D was the magic key combination. I got no response from entering Q or E, but it was definitely in graphics mode.

Fortunately, the magic sequences in the ROM also worked through the serial port so they told me some of the graphics commands.

Eventually the penny dropped that the response to the prompt was not simply “Q” or “E” but “Q,” and “E,”. The comma is an important delimiter.

I worked out several of the commands through trial and error, and i used ChatGPT to help analyse the ROM to confirm/clarify them. ChatGPT could not find ASCII commands for an Arc or to set the fill pattern as might be expected from the uPD7220 manual. ChatGPT could not unravel the C command, but said that it was copying sections of memory.

B,Bell
C,Not sure. It does some funky stuff.
D,x0,y0,<x1,y1> ….Draw line from current position to x,y to x1,y1 etc etc
E,Erase screen
F,a,x,y,As for R but with a filled rectangle.
H,Home 0,0
L,p,Changes the line pattern to the binary value from 0 to 255.
M,x,yAs per P but is there a subtle difference? Yes, it is relative.
O,r,Draw a circle centred on current position and with a radius of r
P,x,y,Set the current position to x,y
Q,Quit to text mode
R,a,x,y,Draw a rectangle starting at the current position with sides equal to x and y. A sets the orientation in 45 degree steps. At 45,135,225, 315 degrees the rectangle is bigger – the sides are set to the diagonal length.
W,<text><CR>Writes text.
X,s,n,Draw x axis. Space s, Number N
Y,s,n,Draw y axis. Space s, Number N
Z,s,Set text size. S= 0 to 15.

I wrote a little basic program to try out some of the commands. Having the character stream go to both the terminal and the card allows text mode at the same time as graphics mode, but with the side effect that just typing in or listing the program would create commands. Separate ports are probably a better idea.

The next step will be to rig up a ASCII keyboard eg PS/2 keyboard and an arduino. Then this card can go into a standalone box for use as a terminal on any of several different computers.

Microlog Little Video Board

I have several of these cards in various states. The board clearly has a minimal STD bus interface; it only uses the bus for power. That made me think that they were probably terminal boards. They are marked with LVB and one card has a ROM labelled Little Video Board.

Comparing the cards, i could see only one that was fully populated. Of the six cards, three were never completed, two were completed but have been used as spares boards. The complete card has been modified with extra connectors.

Having lots of other things to do and no doco for these cards, they sat around for several years in the “too hard” basket. While wading through a box of manuals looking for something else, i found an information sheet that shed a little light on their purpose.

The Little Video Board (LVB) is a terminal card intended for use with Pulsar Little Big Boards. The LVB emulates a Televideo 912 terminal. It operates with an ASCII keyboard and a video monitor. Communication parameters are set by the DIP switch.

The video output was obvious, so i powered the card up and had a look with the scope. The syncs were there at 50Hz/15kHz so i connected a monitor and got a blank screen with a cursor in the top left corner. This all seemed quite positive.

I traced out the video port and connected it to a Little Big Board and after messing around a little i got the TurboDOS prompt to appear on the monitor. At that point, proceedings were terminated because i don’t have an ASCII keyboard!

Pro-Log 7864

The 7864 is an 8088 processor card with RAM and ROM intended for a multiprocessor environment. The ROM may contain a monitor, but i have no information on it. It is even possible that it uses the 7303 Keyboard & Display Card.

I do have a manual for this board, but with so much undisclosed programmable logic it would be difficult to find faults. I would probably start with an off the shelf monitor and customise it for this board and a suitable serial card.

This card was originally set up as a slave, but i have converted it to a master. The resistor pack is a bit rough.

I tried this card with the only likely serial card match, but i did not get a prompt.

Pro-Log 7885

The 7885 is a 8085A card with 2k of static RAM expandable to and provision for an 8k EPROM.

I have not been able to find a lot of information on this card. It appears to be an enhanced 7801 with higher density and, perhaps, bus sharing.

It includes a serial port that uses the 8085 serial channel. It did have an EPROM installed but, i suspect that like the other cards, it requires a 7303 Keyboard & Display Card.

I attempted to use the SDK-85 ROM as per the 7801 card, but to date i have not achieved a sign-on message. There may be some additional initialisation required.

Pro-Log 7803

The 7803 is a Z80 CPU card with 1k of static RAM expandable to 4k and provision for 8k of ROM as 4x 2716 EPROMs.

This board carries an MP4 monitor ROM which operates with a 7303 Keyboard & Display Card. That’s a nuisance because i don’t have a 7303. To operate this card, i will either need to find an off the shelf monitor and modify it, or i will need to emulate a 7303.

This card did not have a Z80 IC card, so i have added one.

Pro-Log 7801

The 7801 is a very simple 8085A card with 1k of static RAM expandable to 4k and provision for 8k of ROM as 4x 2716 EPROMs.

The 8085A includes a simple serial port, but this card has no level shifters, so the levels are TTL.

Currently, this board has no ROM, but its memory map is the same as the SDK-85, so its monitor ROM may be suitable.

Pro-Log also developed a monitor ROM. I have a copy of this ROM, but it relies on having the 7303 Keyboard & Display Card, and i don’t have one. I have ordered some STD prototype cards with a view to creating a 7303 emulator.

Intel SDK-85 monitor ROM was suitable. It uses the 8085 serial terminal for user interaction – albeit at 110 baud (with 7 bits and no parity).

The SDK-85 monitor checks the state of the RX line on startup. If it is high, then it will use the SDK-85 keypad and seven segment displays (which the 7801 does not have). If it is low, then it uses the serial lines.

The 7801 does not include level shifters, so i removed a couple of ICs from a 7301 RS232 card, so i could use it to do the level shifting.

This was sufficient to show that the 7801 card is quite viable.

Rather than use such cumbersome level-shifting arrangement i thought a little TTL-RS232 converter off ebay would be a bit simpler. It did not go as smoothly as expected ….

It turns out that my test setup was somewhat fortunate in that the transmit line was not inverted. It seems that the serial transmission using the SDK-85 ROM is inverted with respect to the receive. This meant that i had to modify the 7801 to remove the TTL-TTL inversion at U10 (74LS240). This meant lifting pin 3 out of the socket and then connecting pin 17 to pin 3. I also had to add 5V to one of the unused pins on the connector socket, J1, so that i could power the level shifter. I used pin 8.

Maple Enterprises SC180STD

This card uses a Hitachi 64180R microprocessor, which is a direct replacement for the Zilog Z180, which itself evolved from the Z80 microprocessor.

The card was made in about 1988 and is branded with Maple Enterprises. I have not found any information on this company. It may have been related to Maple Systems, which currently manufactures industrial computing equipment.

The processor includes two asynchronous communication controllers. Fortunately, this card has a serial monitor in EPROM. The monitor program is the 1010SC ByteWyde Systems. The ByteWyde monitor was customised for various systems. I was able to find a manual for a similar version.

ByteWyde probably also customised their BASIC for this board, but i do not have a copy of it. Sigh.

I have no documentation for the board itself, but it is clear that the card has a 16k ROM and 48k of static RAM. At one time the RAM was battery backed, but the battery has been removed. There is a little residue from the battery leaking which will need to be cleaned up. [I subsequently found a schematic in amongst some old notes.]

The memory space can be positioned on any of four 64 byte blocks. The monitor assumes that it is at 00 to 3F. I would probably need to change the base address on some cards to use this card.

I was able to work out the serial port pinout for tracing some signals from the processor. The board has a 20 pin footprint for the level shifters but the MC145406 only has 16 pins and is offset by two positions from pin 1. To further complicate matters the board has been modified P1-5 is grounded (not DCD) P1-2 is DCD (not 9V), P1-6 and P1-7 have been shorted so that RTS and CTS are connected on the board.

P1-3: Rx

P1-4: Tx

P1-5: Ground

After a little clean and re-seat the card came up fine. Serial port is 9600,8,N,1.

The manual for the Monitor mentioned that some commands require the use of a ByteWyde Hardware Debug Card. As it turned out i had one of those in amongst my cards. I suspect it will need a good clean before use.

Microlog MC52

The Microlog MC52 is an STD bus single board computer that uses an Intel 8052AH-BASIC microcontroller. This microcontroller includes a masked ROM containing a BASIC interpreter.

I have not been able to discover much about Microlog, which is a shame because they were a local Adelaide company.

Based on IC date codes, the board was manufactured around 1988. It includes 32 of static RAM, an EPROM socket, parallel port, programmable interval timer, and a serial port.

User interaction is via a terminal connected to the serial port. After power-up, the operator has to type a couple of spaces so that the baud rate can be detected.

I have no manual for this board, but i expect that it is similar to one of the configurations described in the Intel MCS BASIC-52 User’s Manual, eg the one in Figure 2A.

It clearly has some differences, including the STD interface and a P8255 Peripheral Interface – probably connected to the 40 pin connector on the front of the card.

One of the unusual features of this BASIC is that the interpreter allows programs to be stored in and executed from EPROM. Looking at the board, the programming voltage seems to come from an external supply.

I thought this card may be quite handy for testing some of the STD cards that i have, but i will need to work a few things out first, including addresses. The STD bus has an I/O space, but i don’t think the 8052 has such a thing, so i’m guessing it’s mapped into memory somewhere. So i did a bit of buzzing out ….

I found that the top 3 address lines are decoded into 8k chip selects. The bottom 4 (0,1,2,3) are used for the 8k static RAM chips (HM6264). The next two (4,5) are used for the EPROM so it can be a maximum of 16k ie 27C128. The next one (6) is used to enable the second decoder. The last one (1) selects the STD bus I/O space. There doesn’t appear to be a mechanism to access the STD memory space.

0000-7FFFStatic RAM
8000-BFFFEPROM
C000-DFFFSecond decoder
E000-FFFFSTD I/O
C000-C0FF8255 Programmable Peripheral Interface
C400-C4FF8253 Programmable Interval Timer

The second decode breaks C000 to C7FF into 8 x 256 byte spaces. These are mirrored in the remaining space.

External memory is accessed from BASIC using XBY “function”. I tried the Pro-Log 7601 Input/Output Card and was able to read and write the registers at 00-03 using XBY(0E000H+i).

I also briefly tried the 7301 Serial Card which registers at C0 and C1 using XBY(0E0C0H+i). That also responded as expected.

The MC52 is definitely useful for testing I/O boards. Memory cards are a different problem.