Monday, September 13, 2021

How not to build a computer, step 2: Chassis

 


 There are many ways to enclose a computer and the support equipment, anything that can enclose a box 10"x6"x8.5" for the N8VEM backplane. A good choice would be a 4u server case. They are more than spacious enough, either come with power supplies or standardized mounting and are fungible. No one is going to cry if you drill holes in a new server case. Another good choice would be a standardized equipment case. There is a larger variety in size and if you aren't using an ATX power supply you aren't losing much vs a server case. I'm going with a third option, laser cut acrylic. My basic design will be acrylic over an aluminum. This is a trade off of expense for modularity. 

The beauty of the S100 bus is that it is customizable in ways that modern computers can't be. CPUs, front panels, IO, video among others. Given I have no idea where I am taking the machine once built, flexibility is desirable. Acrylic is a flexible material to work with, laser cutting also is available for a variety of plastics, metals, wood, fabric and paper. 

I could make a case with a handful of gussets on the edges and corners; I'm choosing to use beams for esthetic reasons. Aluminum beams are used in robot projects, 3d printers and other open source hardware projects. There are a plethora of suppliers of small aluminum parts, I am going with goBILDA and ServoCity because the 8mm pattern is easy to work with and ServoCity provides STEP files with all of their parts. This makes it easy to layout components, create cut templates and generate a Bill Of Materials (BOM) of the needed parts. The picture above is my chassis in an intermediate "proof of concept" state with my mini-ITX power supply mounted. As it stands, the chassis is extremely rigid and is amazingly light.

Saturday, September 11, 2021

Caveat emptor



 Putting together a S100 backplane at the very minimum requires hard to find edge card connectors. 0.125" pitch is no longer in common usage. The N8VEM V4 backplane uses a LM4250 op amp which is obsolete. Zilog still produces the Z80, but that's the only CPU that I know still in production. Legacy boards have "who knows what" on them. S100 computers will be an exercise in second market, small electronic shops, eBay and New Old Stock (NOS).

Here is my experiences chasing down three parts, the edge card connector, the LM4250 and a SII164CTG64.

Thursday, September 2, 2021

How not to build a computer, step 1: Planning


 

Building an S100 computer requires more decisions upfront compared to modern computers. While the classic S100 machine was a Z80 based machine, CP/M only used the i8080 subset of instructions. The S100 architecture allows for multiple CPUs to share system resources, you could choose any of the following as the system primary board (master) available from S100computers

  • Zilog Z80
  • Intel i8080
  • Intel i8086
  • Intel i80286
  • Intel i80386
  • Intel i80486
  • Intel Edison
  • Motorola 68000/68010
  • Motorola 68030
  • MOS Tech 6502
  • Digital PDP-11
A Z80 is an excellent place to start, there are a number of board options available. Another excellent choice would be a replica MITS Intel i8080 board. One of the 16 bit CPUs would be an ok choice, I recommend waiting until you have a working system before moving on to a different CPU. The 32 bit CPUs (the '030 and the i486) require a second memory card; I highly recommend any other CPU first. I don't know enough about the PDP-11, 6502 and Edison CPUs to make a recommendation there. My choice is the Z80 FPGA SBC and an additional 4MB RAM card.

The next decision is a case for your system. S100 cards are 10" wide, 5.5" tall and are spaced every ¾ inch. A recycled 4u server case could work nicely. S100Computers has a very good article on choosing a good case. I am going with an aluminum and laser cut case, details to follow.

There are three main systems that take up space in your case:
  • The mainboard, cards and card cage
  • Power
  • Storage
Power is also interesting in S100 computers. Prior to low cost kilowatt grade switching power supplies, state of the art was large transformers and linear regulators. To 'simplify' the power supply design, unregulated power is distributed and individual cards are required to regulate their own power. I am going with a 300W Flex ATX/Mini ITX power supply and two buck/boost converters to generate the +8V and ±16V supplies.

Finally there is storage. To begin with, I expect to use an IDE to CF converter card. I am going to create mounting points for two drive cages, a 3.5" and a 2.5" cage. I am not anticipating or planning on mounts for any 8" drives.

One last thing to keep in mind, there should be enough space for ventilation. Modern cards with modern regulators should run pretty cool. Legacy cards have a reputation of generating a lot of heat. I am going with oversized fans for cooling.


Disclaimers:
  • I am not receiving any form of compensation from any of these sites. I am just enumerating the places I find useful or have discovered. 
  • The opinions listed here are my own and do not necessarily reflect the official policy or position of my employer, Apple Computer.


Wednesday, September 1, 2021

How not to build a computer, step 0.



So you want to build a computer, this is the first part of a series on how not to do it.

Here's a better list of computers to buy or build instead of a home-brew S100 machine:

  • Raspberry Pi 4
  • Arduino
  • SBC ARM
  • SBC Z80
  • A retro machine (TRS-80, Apple ][, Atari 400-800 or ST, Commodore 64 or Amiga, etc...)
  • A pile of modern parts ordered from pretty much anywhere.
  • Any modern laptop, desktop, all in one, SFF or the like.
Really, building an S100 computer will involve a lot of searching for obsolete parts, working around designs that are decades old and generally spending a lot of time, money and resources on a computer that the thermostat in your house can outrun.

Still with me? Now here's the reasons to build one.
  • The Altair 8800 was the FIRST commercially available home computer
  • The IMSAI 8080 from War Games
  • Geek cred!
  • You can build from components a real computer capable of real computing (slowly)
  • The absurdity of building a computer from the mid 70's (sorta) nearly 50 years later 
For me, it's a "bucket list" entry. I'm just a little young for S100 computers, my first machines were the classic 8 bit machines.

If you are still interested, here's a good list of resources of parts, plans, information, and help that I'm using (Sept 2021).

One of the reason for the large number of parts suppliers is that older hardware tends to vary in price quite a bit from one supplier to another. Shipping times also vary greatly. I can get parts from Jameco or Arrow overnight via USPS to the Bay Area, for instance. One part to search for a bit harder than the others is the S100 Card Edge connector. The EDAC 346-100-520-802 is the one I ordered. Things to look for, 100 connectors, 0.125" pin pitch. Seriously, double check. 0.1" pitch is far more common and fewer connectors are common as well.  Depending on your initial setup, you may need a LOT of these connectors. They run $14±2 USD from the usual suspects, three pages down on my search results I found them for $5.18 from dgarbha, free shipping over $40, no tax 😀 (Sept 2021)

⚠️ This is evidently a scam site. I paid via PayPal so I'm covered, now I'm waiting for my refund ⚠️

Disclaimers:
  • I am not receiving any form of compensation from any of these sites. I am just enumerating the places I find useful or have discovered. 
  • The opinions listed here are my own and do not necessarily reflect the official policy or position of my employer, Apple Computer.

Tuesday, August 31, 2021

"Spring" cleaning



*cough*

*cough*


Dusting off my "nothing" of a hardware blog and adding content.



Friday, June 27, 2014

Breakout board for Terasic Cyclone V GX Starter kit

Project
I wanted to be able to use the PMODs I bought for my Digilint Nexys2 with my new Terasic Cyclone V GX Starter kit. Also I would like to be able to hook up a keyboard.

Design criteria
The HSMC connector is not particularly hobbyist friendly, I could only find one place that sold them and they are cost prohibitive. The GPIO connector looks good, but shares most of its lines with either the Arduino Shield connector or the 7 segment LED module.

The PS/2 connector uses two of the six unshared data lines. The four PMOD connections use all 14 of the LED display lines plus two of the unshared lines

Assembly notes
Make sure to put the key on the 40 pin connector towards the edge of the board.

1) Solder 40 pin connector to board
2) Solder PMOD connectors to board
3) Solder PS/2 connector to board

Programming
PS/2
Clock - GPIO[0]
DATA - GPIO[1]

PMOD
A1 - GPIO[23..20]
A2 - GPIO[27..24]
B1 - GPIO[31..28]
B2 - GPIO[35..32]

Manifest

Total cost: < $20

Afterthoughts:
  • If I make another version of the board, I should make the board a little wider; the PS/2 port is a little crammed
  • It would be nice to add jumpers to select between 3.3V and 5V for the PMOD and PS/2 connectors
  • There are still 2 unused data lines that could be repurposed for a I²C connector
  • Why do all these starter boards include rather wasteful 7 segment LED display designs. At least the Nexys2 board was multiplexed, only using 12 data lines for the display. The C5G board uses 48 data lines and doesn't even give you access to the DP line. With I²C I could drive 32 digits with two data lines.
  • It was cheaper to design a custom adapter board than to buy proto board and cut down to size.
  • I should get the files into some sort of SCM instead of on google drive