- GW-1244-1, a Maintainable Replacement for the Dallas DS1244 32K NVRAM/RTC 2018 MAR 17 in vintage-misc
- XT-IDE rev 4 2017 NOV 23 in xtide
- Graphing 95th Percentile in Munin 2017 OCT 19 in coding
- GW-48T02-1, a Module for Rebuilding the 48T02 RTC/NVRAM 2017 AUG 01 in sun
- Rebuilding the Dallas DS1387 RTC/NVRAM Module 2017 JUL 27 in vintage-misc
- Jekyll Plugins, Custom Liquid Tags and Blocks 2017 JUL 25 in coding
- Repairing Sun SPARCstation IPC Power Supplies 2017 JUL 24 in sun
- Building a Mail Server with OpenBSD, OpenSMTPd, and Dovecot 2017 MAY 12 in coding
- A Universal RAM Board for OSI, GW-OSI-RAM1 2017 MAY 03 in osi
- Installing DEC Handles 2017 APR 25 in dec
- A Multi-IO Board for the 8085 SBC 2017 APR 24 in i8085
- The OSI 560Z Processor Lab 2017 FEB 26 in osi
- Slot 8 Support on XT-IDE rev 2 2017 FEB 05 in xtide
- IBM XT Slot 8 Support for XT-IDE 2017 FEB 03 in xtide
- Removing Cookies and Sessions from Rails 5 2017 JAN 16 in coding
- Cisco Aironet Access Points 2016 OCT 06 in network
- Building a Lego TC Logo 9767 Interface 2016 SEP 12 in vintage-misc
- XT-IDE rev 3 2016 JUL 06 in xtide
- TEI MCS-CPU 8080 CPU Board 2016 MAY 31 in s100
- Expanding to a 64K RAM Board 2016 MAY 17 in osi
- Building a 32K RAM Board 2016 APR 23 in osi
- Cloning the OSI 495 Prototype Board 2016 APR 22 in osi
- Cleaning up the Challenger III 2016 APR 20 in osi
- Ferroelectric RAM Part 1 Prototyping 2016 MAR 29 in s100
- Quick EPROM Timer Script 2016 MAR 21 in coding
- Upgrading BDV11 ROMs 2016 MAR 19 in dec
- S-100 Systems Repair (Altair, IMSAI, SOL-20, et c.) 2016 FEB 09 in services
- IBM FSU RAM Board for the S-100 Bus 2016 JAN 20 in s100
- A DC Power Supply for Rack Gear 2016 JAN 03 in hardware
- Configuring MariaDB Replication 2015 DEC 23 in coding
- OpenBSD, Hurricane Electric, and Dynamic IPs 2015 NOV 04 in coding
- Reporting Dropwizard Uptime via Metrics 2015 JAN 23 in coding
- Configuring an access log for Dropwizard projects 2015 JAN 22 in coding
- Multipart HTTP POSTs with Groovy's HTTPBuilder 2014 SEP 24 in coding
- Cromemco CDOS Tools 2014 FEB 07 in vintage-misc
- Cromemco 4FDC Floppy Controller 2014 JAN 30 in s100
- Pragmatic Designs DBM-1 EPROM Simulator 2013 NOV 16 in s100
- Power On Jump Board for the S-100 Bus 2013 APR 17 in s100
- Isolated 24V Relay Controller 2013 FEB 28 in news
- External 5.25" Disk Box 2013 JAN 11 in vintage-misc
- Intel SDK-85 Checkout and Cleanup 2013 JAN 02 in i8085
- Quad Port Gigabit PCI Ethernet Card Roundup 2012 AUG 03 in news
- Sabernetics I2C OLED Display Testing and Demo 2012 JUN 28 in news
- New Static Site Layout with Jekyll 2012 APR 20 in news
- A 1702A ROM and 2101 RAM Board Using the IO-2 2012 JAN 30 in s100
- The Dajen SCI -- A System Central Interface for the S-100 Bus 2011 NOV 03 in s100
- 8085 Single Board Computer Revision 2 2011 OCT 29 in i8085
- A Debug Board for the S-100 Bus 2011 SEP 01 in s100
- Modifying the XTIDE and Industrial Flash Modules 2010 DEC 16 in xtide
- 48 Hours of Apple IIe Hacking 2010 NOV 09 in vintage-misc
- Walnut Creek CP/M Archive CD-ROM via BitTorrent 2010 OCT 25 in vintage-misc
- Scrolling LED Displsy 2010 SEP 19 in i8085
- Building an 8085 Single Board Computer 2010 SEP 02 in i8085
A piece of legacy networking hardware was losing its NVRAM on poweroff, and turned out to contain a Dallas DS1244 NVRAM with Phantom RTC. This module is still made, but is expensive and has its lithium power source potted in the module. Rather than buying an unmaintainable replacement, I designed a compatible replacement module.
After assembling many XT-IDE rev 3 boards, there were a few tweaks required to make the layout a little cleaner and ease assembly. Alan Hightower reported a race condition when developing his NetPi-IDE interface, which revision 4 corrects. Silkscreen is standardized and improved, and extra test points were added for Slot 8 Support installation.
Like many ISPs, my colocation ISP bills bandwidth usage as 95th percentile. The ISP sends weekly and monthly bandwidth graphs to help in planning for bandwidth costs. While this is a common thing, it's not something that Munin supports out of the box, though rrdtool does.
With a large number of vintage Sun machines in the shop, I was stuck with having to repair or replace dead batteries in the 48T02 RTC/NVRAM modules used on many early SPARC systems. Modern replacements are not 100% compatible, so the old modules have to be repaired. There are clearance issues in some Sun systems, so gluing a coin cell holder onto the old module was not an option. I decided to lay out a small PC board to completely replace the "CAPHAT" section of the 48T02.
A 486 industrial computer on the repair bench had a dead DS1387 RTC/NVRAM, which is no longer produced. The DS1387 is a potted module containing a DS1385 IC, a crystal, and a lithium cell. Over time, the lithium cell dies, and the module will no longer keep time or NVRAM contents. Fortunately, others before me had figured out the locations of the buried battery pins and provided their solutions. Here's my fix!
During a recent bit of site maintenance, I DRYed up the Jekyll project for glitchwrks.com by creating custom Liquid tags and blocks for the site. These reduce code duplication, simplify and centralize configuration, and make the Markdown for writeups nicer.
A recent equipment pick-up included many Sun "lunchbox" form factor computers, including two SPARCstation IPCs. Both of the IPCs had dead power supplies, a result of failed capacitors. After recapping, they functioned perfectly. We'll cover which capacitors are valid replacements, clean-up, et c.
I recently replaced a paid email service for a this small site with OpenBSD, OpenSMTPd, and Dovecot. OpenSMTPd is OpenBSD's internal SMTP server project, though as with OpenSSH it is also released in a portable form for other UNIX-like operating systems. Documentation is good, and configuration was pretty easy.
A common issue when restoring, repairing, or building up an Ohio Scientific system is a lack of dense, reliable RAM. OSI boards do exist that provide 64K of static RAM on a single low-power board, but these are rare. There are even fewer options if you want 12-bit support for the 560Z Processor Lab in PDP-8 mode. With two prototype RAM boards built, I decided to lay out a universal OSI RAM board to meet the needs of as many OSI systems as possible.
Many DEC cards and modules use plastic extractor handles. These handles can become damaged, and some cards (new made prototype boards, for example) often come with no handles. DEC attached them with tubular hollow rivets, while most hobbyists are stuck with pop rivets or bolts. Here's how to properly rivet handles on!
Since the 8085 SBC was designed to be expanded, the first step was in building an I/O board. This board includes an Intel 8255 PIA for parallel I/O and Zilog 8530 SCC for dual serial channels. With the Glitch Works Monitor, it provides a basic, usable 8085 system.
The Ohio Scientific 560Z "Processor Lab" is an unusual coprocessor board for the OSI bus -- it allows interfacing a Z80 and IM-6100 PDP-8 on a chip and controlling them with the 6502 through a driver package. This package not only allows you to load and examine memory for the coprocessor(s), but also controls timing, single-stepping, slow stepping, and I/O emulation. It's a very rare board, with only one known functional board in existence, until now!
Part of the purpose in provinding Slot 8 Support as an optional daughterboard was to allow it to be added to other revisions of the XT-IDE. Installation on XT-IDE rev 2 is almost as simple as with later rev 3 boards, and works with all of the rev 2 features -- ROM, IDE, and serial port.
The IBM 5160 PC/XT has eight ISA expansion slots, but slot 8 has slightly different electrical requirements. As a result, many boards do not work in slot 8, and those that do usually require a jumper to enable/disable slot 8 support. While the XT-IDE rev 3 was designed with slot 8 support omitted, I decided to design a daughterboard to provide it. In the course of designing it, I was also able to apply it to the earlier XT-IDE designs!
In transitioning from Sinatra to Rails for site services, I ended up removing pieces of Rails 5 that were not relevant to my project. This post covers removing cookies and sessions and their related configuration options, and what can and cannot be removed.
I picked up some used Cisco 802.11 access points a few months ago, and finally got around to hacking on them. They're available for cheap as used equipment, especially if they're loaded with LWAPP firmware. This is my experience with getting them up and going in autonomous mode.
The VCF Museum at InfoAge Science Center recently acquired a Lego TC Logo kit. While it included the IBM PC compatible ISA interface, the Lego 9767 interface card was missing. Fortunately, it is a simple card and is already well-documented on the Internet. A good excuse to lay out an Apple II protoboard though!
When a request for assembled XT-IDE boards came up on the VC Forums, I took the opportunity to make some changes and improvements to the XT-IDE rev 2 design. Mostly a board respin, this project's goals were to make the XT-IDE easier for hand assembly, more self-documenting, and easier to configure.
I picked up a TEI MCS-CPU 8080 board at the Vintage Computer Festival East XI. The board came with no documentation, and no documentation was available online. It mostly worked, but had a few functions that weren't behaving correctly.
The 32K RAM board project was built with expansion in mind. Here we expand it to 64K with another 32K x 8 static RAM using the same 4K segment selection as the 32K board. Provisions for memory management allow for expansion beyond 64K using Ohio Scientific's memory management strategy.
With a quantity of 495 prototype boards in hand, it was time to build up a RAM board for the Challenger III. My implementation uses a single 32K x 8 static RAM in DIP packaging, which is split up into eight 4K segments, each of which can be enabled or disabled individually. It's also expandable to 64K and beyond due to a few design decisions.
The Ohio Scientific bus is pretty easy to interface with, except prototype boards are hard to find! Chunks of perfboard large enough are expensive, the insertion/extraction force of the Molex KK-156 connectors required soldered connections, and Ohio Scientific's 495 protoboard is unobtainium. When I finally found an OSI 495 board, I decided to clone it.
I've had a Challenger III for a few years and apparently never documented it! I pulled it out this week to work on an OSI related project only to find it was in bad need of a cleaning. I fixed a few problems along the way. It's now back up and running with a 510 triple CPU board and 48K of RAM.
This board has taken so long to get together, my sample ICs are from before Cypress bought Ramtron! Ferroelectric RAM is basically core on silicon, using tiny magnetic domains deposited on silicon -- it's even destructive read. I've used it in several projects, and have been working on interfacing it to the S-100 bus.
I was erasing a pile of UV EPROMs today and got tired of interrupting what I was doing to go unplug the EPROM eraser when 20 minutes had elapsed, so I made up a little cable to control one of my relay-switched outlets using the serial handshake lines on a serial port. A few lines of Ruby later and, problem solved!
My MINC-23 came with a BDV11 loaded with the standard turnkey boot ROMs, which requires manually entering bootloaders for things like TU58 and MSCP boot. The BDV11 can be upgraded to more complete boot ROMs using images from a PDP-11/23+.
Complete S-100 systems service for Altair, IMSAI, SOL-20, Cromemco, CompuPro, and more. From individual board repair to whole system refurbishing, including custom S-100 boards, reverse engineering, and board duplication. Hundreds of hours of direct experience with many S-100 products, from the earliest MITS Altair 8800 boards to multiprocessor IEEE-696 systems.
Wait...an IBM made S-100 RAM card, using IBM FSU static RAM modules?! Apparently, yes. Here's a look at the card and the story about why this even exists.
I've got a few DC powered devices in the server rack, and wanted a way to get rid of multiple plug packs, wall warts, and/or power bricks. This is Part 1 in a larger project to provide remote power cycling and load monitoring of the stuff sitting in the rack. A surplus linear supply is gutted and refitted with modular switchmode supplies.
MariaDB/MySQL replication provides an easy way to do realtime database backup, or allow for high-speed LAN access to a read-only reporting DB. Here's my method for getting a new replication slave running from an existing live DB.
Hurricane Electric allows dynamic updates for your end of the IPv6 tunnel, but OpenBSD needs to be made aware of the changes too. Here's a simple script to accomplish that.
Another simple configuration task with insufficient documentation! Get your actual application uptime from Dropwizard's metrics.
One would think that access logging would be a common task for any application, but getting here took half a day of digging through incorrect documentation.
Groovy's HTTPBuilder, an extension of Apache Commons HttpClient, allows multipart HTML POSTs, but documentation and useful/recent examples are lacking. Here's an example using non-deprecated methods to send multiple files and a few string params to a RESTful service and handle a returned binary.
With a Cromemco 4FDC and no boot media, getting a functional system was not entirely straightforward. Tools exist for bare-metal bootstrapping CDOS with a 16FDC, but they're incompatible with the 4FDC. Fortunately, there was enough existing work and experience in the area to hack together a solution!
This one goes back to my first bit of S-100 hacking -- getting a Cromemco 4FDC up and running. Five years later, my 4FDC finally formats a floppy! Here we will discuss some of the tips, tricks, resources and myths about the lowly 4FDC.
I picked this board up from a popular online auction site with no documentation or cables. It's an EPROM simulator -- it can replace two 1K EPROMs or a single 2K EPROM with RAM for rapid development without the need to program/erase EPROMs. A handy board, but no one has information on it!
One of my S-100 systems uses a CPU board that doesn't have a power-on jump function. The ROM board doesn't have it either. It's a turnkey system with no front panel, so I had to come up with a way to get the CPU to jump into the ROM board's address space without starting the ROMs at 0x0000.
Anyone else have a pile of relays in the parts bin with 24V coils? I do, so I've designed an isolated controller board that includes the power supply, current loop drive circuit, and a DIP16 footprint relay. Now I can make use of my large stock of relays without building a point-to-point power supply and controller every time.
This disk box was purchased to serve as a universal disk box for various projects. It came without drives and required a bit of creativity to safely mount both linear power supply boards.
The Intel SDK-85 is the official Intel 8085 development system for the evaluation of MCS-85 family parts. I finally found one in reasonable shape for a decent price, cleaned it up, and brought it back into service.
I was recently tasked with building a new pfSense box for the office. We needed three or four Ethernet ports, and wanted to use a 1U Intel Atom based server. Finding a quad port card was a little challenging, so here's a writeup on picking the right card for your build.
The Kickstarter-funded Sabernetics Technology OLED Display arrived yesterday. Before committing it to a project, I wanted to ensure the display was functional and get a feel for its daylight readability. The Bus Pirate was the obvious choice for prototyping.
I finally finished rewriting the site using Jekyll, a blog-aware static site generator written in Ruby. Although the process required reformatting all existing site content, the move appears to have been well worth it! Expect a higher frequency of updates now that writing an article only involves creating a textfile and executing a script.
Building up a Solid State Music IO-2 board as a 1702A PROM reader and 2101 static RAM board using period components. Useful for reading 1702As and testing 2101 SRAMs for use in other projects.
The Dajen SCI is a relatively unknown S-100 board with a ton of highly useful features! Documentation and information on repairing, using and modifying the SCI.
The 8085 SBC has been revised, now including 64K of memory devices on-board, a cleaner layout, thicker traces, a few more expansion bus signals, and corner mounting holes!
Details on my S-100 debug board. This board is the result of much testing (and fixing) with my original debug board, which was far less thought out. An essential device for low-level debugging without a front panel, especially if you've got a CPU card that may or may not be working!
This page is a composite resource for using industrial Flash modules as hard disk replacements in vintage PCs, as well as a modification I performed to the XTIDE controller board.
I finally got time to play with an Apple IIe I'd picked up cheaply. Getting CP/M running with a Microsoft SoftCard clone was easy...but getting new files to CP/M wasn't!
A friend of mine sent me a full image of the last Walnut Creek CP/M archive distribution on CD-ROM. I've created a BitTorrent tracker for it and uploaded it on 25 October 2010 -- 16 years from its release.
Interfacing a PDSP-1881 LED character display with the 8085 SBC. I wrote software to scroll a message across the display for the 2010 Maker Faire in NYC, utilizing a circular array and FIFO.
Designing and building an 8085-bases single board computer, then turning it into a proper etched PCB! This page documents its construction and testing.