PDA

View Full Version : S-100 Front Panel (Bus Monitor) project



NobodyIsHere
March 25th, 2010, 04:29 AM
Hi! As you probably already know John and I are working on an S-100 Front Panel (Bus Monitor) type project. The board is ready for the prototype stage and I will be ordering a couple PCBs tonight for the initial round of build and test. Those are internal units only meant to shake out the bugs before a PCB manufacturing order to take place some time in the hopefully not too distant future.

One key point is although this board is used as a display panel on the front of an S-100 system it is actually functionally closer to a "Bus Monitor" if that is a meaningful distinction. Normally I associate "Front Panel" devices as those like the original Altair/IMSAI used to boot strap a ROMless S-100 CPU and has the ability to inject data values into arbitrary memory locations. The Bus Monitor functions more like the Jade Bus Probe which provides status of the various bus lines and reset/run/stop/single step, etc but *not* the ability to boot strap.

Either a "Front Panel" or "Bus Monitor" will provide a meaningful and useful display on the front of your S-100 box but the functionality is different. I have a Jade Bus Probe and absolutely love that board and it is extremely useful in diagnosing broken systems and even just watching working ones. The historical "Front Panel" bootstrap functions really only appear on the earliest and most simple S-100 systems and are uncommon on the later designs. I believe this due to high cost and complexity and generally not being very useful when a boot ROM is available.

The differences between a "front panel" that can bootstrap and a "bus monitor" is not really the purpose of my post though. Regarding the S-100 front panel (bus monitor) project, what sort of displays has been a design issue since the beginning such as HP5082-7340 hex displays, TIL311s, LED bars, or even a uC based unit with integrated displays. Since each type has its own strengths and weaknesses we were never really able to settle on a single variety and went with a "display mezzanine" board approach instead. Basically this means is there is a base board that plugs into the S-100 bus and a row of three 26 pin dual row headers which export the control and display signals to a mezzanine board. Initially the mezzanine board will be implemented as a HP5082-7340 based unit *or* with 74LS273's and LED bars. In fact, the initial prototype PCBs will include *both* display mezzanine units as a single PCB. They will be manually cut up using a bandsaw or other device to separate out the display mezzanines which are then manually mounted on the base board. The display mezzanine boards do not have to be mounted directly on the base board and can be extended using ribbon cables from the bus "card cage" to a separate front of the computer control and display area.

Given the background, here is my question; how to handle the multiple PCBs needed for this project? Normally the S100computers and/or N8VEM related boards have been single independent units. The S-100 front panel project requires *at least* two; the base board and a display mezzanine. There are some ramifications of this approach in ordering PCB manufacturing of multiple units will affect cost. I believe combining the three PCBs we currently have into one massive unit the hobbyist cuts up on their own will be more economical than two or more separate PCBs. However, the cost is the hobbyist is responsible for "slicing and dicing" their own PCBs. The cuts should not be difficult to make since there is 0.1" separation between the boards for blade width.

I don't have a bandsaw and am not going to get into the business of cutting up multiple PCBs so this issue of one versus many boards is important. Can hobbyists tolerate their own PCB cutting? It is really easy to do with simple handtools if necessary but obviously a bandsaw would be better. I don't imagine this will be a problem but I would like to hear from other hobbyists before the final design.

It comes down to this; which is better? One less expensive PCB that requires cutting or several more expensive PCBs that with no cutting required? It is not going to be both ways so please let me know your thoughts.

Thanks and have a nice day!

Andrew Lynch

glitch
March 25th, 2010, 09:16 AM
I'd go for the "composite" board with all boards as a large panel. We order them this way at work. There, we cut them up using our metal shear, which cuts PCB material just fine. Before gaining access to a shear, I used to score the boards by hand with either a rotary cutter bit or a gouge -- the kind you get for scoring Plexiglass works well with PCB material, but will dull faster. You then snap them on the score using something like the square corner of a desk, which gives a nice, even edge.

NobodyIsHere
March 26th, 2010, 04:00 AM
Hi! That's my preference too but I'd like to know how it would be received by the community and if it is going to be a "showstopper" issue.

The prototype board is 15.4" x 6.2" so it is a fairly healthy sized PCB. Its not gigantic but bigger than the usual fare.

Thanks and have a nice day!

Andrew Lynch

NobodyIsHere
April 14th, 2010, 03:49 AM
Hi! Here is a quick update on this project. John has the prototype PCBs and has done build and test of the first unit. It seems to work well and everything has checked out. John has written up a really nice webpage on the S-100 Front Panel Bus Monitor at S100Computers.com

As usual there will be some minor updates to the design and then making a manufactured PCB. As I understand it the prototype is fully functional without any cuts and/or jumpers but does need some rearranging. No ETA on when the manufactured PCBs will be available but sometime after the S-100 SRAM boards which should be fairly soon.

Thanks and have a nice day!

Andrew Lynch

monahan_z
April 14th, 2010, 11:18 AM
Here is a quick link to the write-up will elaborate later:-
http://s100computers.com/My%20System%20Pages/S100Bus%20SMB%20Board/S100%20Bus%20SMB.htm

monahan_z
April 14th, 2010, 10:12 PM
The board has the following features:-

HEX LED display of all Data and Address lines. At all times the address of the master (or slave) CPU's program counter is displayed as a Hex LED display. If an 8 bit CPU is controlling the bus the current 8 bit instruction it is reading is displayed. If a 16 bit CPU is currently the master the 16 bit bidirectional data bus is displayed. Note because most 16 bit CPU's pipeline their instructions the data in and address bus may be slightly ahead of the actual instruction the CPU is executing.

Hardware Breakpoint Switches. The board has a row of 20 small dip switches and circuitry such that if the CPU ever goes to a specified address it will stop. From there it can then be single stepped forward one CPU instruction at a time displaying the current 24 bit address and 8/16 bit data in being read on the bus. This is very useful for both hardware and software debugging. Unlike software debuggers it is memory location and CPU type independent. It will work anywhere in the 24 bit S-100 memory address space with a master or any slave CPU.

Stop and Single Step Circuitry. This circuitry allows one to stop the current running master CPU at any time and restart from that location again or single step the CPU forward one instruction at a time. It works with both 8 and 16 bit CPU’s

Hardware Reset and Slave Clear Circuitry. In the past I have had problems with the length of time a low going reset signal was presented on the bus. For example the SD Systems 8024 Video board will not reset its onboard CRT controller in time if the signal is too short. It is also important to have a single sharp square wave reset signal for CPU's like the 80286. Finally many older S100 CPU boards do not have a Slave Clear option. For these reasons I have added two 555's to allow precise control of the S-100 Reset and Slave Clear functions. These can be triggered by push button switches.

An IOBYTE Port. This is a simple 8 bit switch/input port that allows the user to configure the consol, printer reader etc for IO in hardware. It's a carry over of the early Teletype days and was used in early versions of CPM, but it is useful is setting BIOS options because the data is not lost when the power is removed. The port can reside anywhere within the range of E8-EFH

Master/Slave Switching Circuitry. This is an input port that allows one to bring low the S-100 TMA0 or TMA1 bus lines, useful for CPU master/slave switching. The port can reside anywhere within the range of E8-EFH

A System Tick Clock. This is just a simple timer that allows one to pulse one of the S-100 interrupt lines ~10 times a second. This is useful for CPM-86 background processing and multi-user systems. Again a 555 time is used but the "normal" circuitry is modified (with a diode) to give a narrow sharp low going pulse which can be jumpered to any one of the S-100 vector interrupt lines V0-V7. The clock it reset by the S-100 INTA or by inputting from a port (one of E8H -EFH) via a jumper.

A 2MHz signal for the S-100 Bus line #49. This line is not often used but when it is, it is typically used for things like a UART baud rate generator. The IEEE-696 specs specify exactly and always 2MHz. Some older S-100 boards tap into the master CPU clock (4MHz) and divide by two. This limits these boards to being always used at 4MHz.

Inverse of the Master Clock signal (S-100 line #25). Some older S-100 boards count of the pSTVAL signal being a simple inverse of the main clock signal. The IEEE-696 signal is not exactly like this. The most well known example of this is the SD Systems Versafloppy II FDC board. There are modifications that can be made to that board to get it to work but the simplest thing to do is just supply the inverse clock signal on an unused S-100 bus line and redirect the Versafloppy to that line. I use the unused S-100 line #27, "RFU".

For more information about the board see:-
http://s100computers.com/My%20System%20Pages/S100Bus%20SMB%20Board/S100%20Bus%20SMB.htm

NobodyIsHere
April 26th, 2010, 04:36 AM
Hi! Busy week for John and I on the S-100 projects. I placed a manufacturing order for the second SMB prototype and also the first prototype of the Bus Extender. The SMB was fairly close on the first attempt so the second ought to be pretty good with few if any changes other than optimized trace routing before getting some manufactured PCBs. The Bus Extender is a much simpler design so my hope is it can go from design to manufactured PCBs with only a single prototype PCB version. Electrically and electronically the Bus Extender is pretty simple stuff but the hard part has turned out to be the mechanical aspects so we'll see how that goes.

This weekend we spun up a rough first prototype PCB for the PIC/RTC board. I expect we'll see some changes on that board so probably there will be another prototype round with it just due to the complex nature and timing sensitivities of the interrupt system on the S-100/IEEE-696 bus.

The plan is to work off the build and test of the three prototypes in work (SMB, Bus Extender, and PIC/RTC) on their way to manufactured PCBs. At the same time, received and distribute the 4MB SRAM boards on order and expected delivery in mid May sometime. My goal is to get those out to the hobbyists by the end of May and start chugging through the list of other boards in the queue. I sent out an update of the S-100 board waiting list over the weekend and have noticed it is starting to grow. That's good as it will help get sufficient quantity as to make manufactured PCBs affordable for most if not all hobbyists.

Next up in the queue is the first round prototype PCB for the Z80 CPU board. It is a very complex board and we expect it to be quite a challenge. I'm letting it sit in the optimizer for an extended period to hopefully simplify the trace routing and make it easier to build and test. Don't know when that will happen but it should be relatively soon.

Thanks and have a nice day!

Andrew Lynch

NobodyIsHere
May 12th, 2010, 03:30 AM
Hi All! More good news! John received his prototype boards for the second round SMB base board. It certainly looks great but he hasn't had a chance to build and test the unit. The PCB is nearing completion of its trace routing optimization and with any luck the SMB will soon move from "in work" to "available". Still there is some work needed on the display mezzanines.

The first round S-100 PIC/RTC prototype board arrived too. We'll see how that goes. It was a quick job so it probably has "issues". Due to its timing sensitive nature that is not surprising. I suspect it will be a while before this board is available although its been chugging away on the trace route optimizer for a while now.

Finally, the first round S-100 bus extender prototype board arrived. John built and tested his and found some changes are needed. The good news is that it is a relatively simple board so after the rearrangements are done it should be done fairly quickly.

That's all for now! Thanks and have a nice day!

Andrew Lynch

NobodyIsHere
May 23rd, 2010, 08:01 AM
Hi All! John just built the second S-100 SMB prototype board and it is looking good. Also I just ordered the second round of S-100 SMB display mezzanines for build and test.

Assuming the display mezzanine testing goes well, I will then place a PCB manufacturing order for the S-100 SMB. Please note it requires *two* PCBs for a complete unit.

http://s100computers.com/My%20System%20Pages/S100Bus%20SMB%20Board/S100%20Bus%20SMB.htm

The display mezzanine board contains three sub boards the builder separates themselves. There is one display mezzanine board for each HP5082-7340s, LED bars, and TIL311s.

Thanks and have a nice day!

Andrew Lynch

NobodyIsHere
June 22nd, 2010, 03:40 AM
Hi! Here is a quick update on the S-100 System Monitor Board project. The second round of prototype PCBs for the base board and display mezzanines are built and tested. There were some corrections to all the boards but I think we've got it now. I will be ordering manufactured PCBs in the near future. What remains is to update the trace routing on the SMB base board and display mezzanines and then place the order.

Functionally the S-100 SMB is like an updated version of the Jade Bus Probe extended to S-100/IEEE-696 8 and 16 bit modes. The Jade Bus Probe is a useful board for debugging a broken system or to get a working system up and running and I think the S-100 SMB will be too. Sadly the Jade Bus Probe is essentially extinct and only very rarely do units become available -- maybe once every couple of years or so. When they do surface on eBay, they'll reliably fetch more than $200 regardless of condition and bid competition will be strong. Its hard to say anything about JBP statistics though since they are so rarely available.

The S-100 SMB is quite complicated and requires *TWO* PCBs to operate; the S-100 SMB base board which looks like a typical S-100 board, and the display mezzanines which can optionally connect to the base board and contain the displays (LED bars, HP5082-7340s, or TIL311s) and various mode switches (run/stop, reset, etc).

If you would like to get in on the initial order, please let me know soonest to get on the waiting list. I'd like to get quantity up to a level that I can keep the PCB unit cost reasonable. My target cost is $20 for the base board and $20 for the 3 display mezzanines. The 3 display mezzanines come as a single PCB the builder cuts themselves using a saw or razor blade. I estimate to need order about 30 units of each to reach target unit costs.

Since this is an initial manufactured PCB order, there is always some risk of finding "issues" with the board. However, after two rounds of internal prototype PCBs I think we've probably hammered out the really big bugs and we know the board *does* work. There may be additional discoveries once testing spreads to a broader range of systems. If that is a concern you can wait for later rounds of manufactured PCBs however there is no guarrantee there will be other rounds or when they would happen. If there are other round of PCBs it will be a minimum of several *months* before it happens as both John and I would like to move on to other S-100 boards and projects. PCB respins and reorders are lower priority compared to developing new boards and tend to be delayed.

So that's the state of affairs with the S-100 SMB board project. Please consider and take under advisement. As always, "Caveat Emptor" as per all home brew computing activities. I don't recommend this project as suitable for first time builders for a number of reasons.

Thanks and have a nice day!

Andrew Lynch

NobodyIsHere
July 25th, 2010, 04:46 PM
Hi! After many months of work on the S-100 System Monitor Board, it appears this board will soon be a reality. Basically it is much like a Jade Bus Probe but fits within your S-100 chassis even with the case closed. It has a detachable display mezzanine board. I have ordered manufactured PCBs and they should arrive in mid-August.

A complete set contains two boards; the S-100 base board and a display mezzanine. The S-100 base board is your typical S-100 form factor board. The display mezzanine comes as one board comprised of three sub-boards. Each is a complete display mezzanine using different display components. There is a display mezzanine board for HP5082-7340 (excellent but expensive and rare), TIL311 (still very nice but less expensive and more common), and LED bars (OK but very cheap and common).

You can see John's excellent web page with videos of the prototypes in action here

http://s100computers.com/My%20System%20Pages/S100Bus%20SMB%20Board/S100%20Bus%20SMB.htm

Thanks and have a nice day!

Andrew Lynch

Chuck(G)
July 25th, 2010, 07:31 PM
Nice job, Andrew!

Back in the day, I wondered about building a real front panel for a Z80 (or 8080) system. By this, I mean the ability to see "inside the box" and check registers and status flags, etc. You'd do this by floating the bus and strobing instruction sequences into the CPU. The MITS front panel strobed jump (C3) and no-op (00) instructions onto the bus to perform "examine" and "next" functions, so the idea is very old.

Of course, it's possible to write a ROM monitor to do this, but if you've got a ROM monitor, why build a front panel?

Just idle thought....

NobodyIsHere
July 25th, 2010, 07:47 PM
Hi Chuck! Thanks! The S-100 SMB is not a front panel although it appears similar to one. It is more like a Jade Bus Probe to show the state of the S-100/IEEE-696 bus. It does let the builder single step and set address traps. I think it will be very helpful to builders making their own systems or those interested in repairing and/or restoring vintage computers.

Thanks and have a nice day!

Andrew Lynch

NobodyIsHere
August 14th, 2010, 03:47 PM
Hi! The S-100 SMB PCBs have arrived and are being distributed to their builders. A small number of PCBs remain and due to the specialized nature of this board only it will probably be quite some time before they are reordered. If you would like to build an S-100 SMB please contact me soon while the PCBs are available.

You can see the S-100 SMB in action on John's S100Computers.com website with the pictures and video. Please see the URL above.

Thanks and have a nice day!

Andrew Lynch