KiCad Design Files for the LH5801 Sharp Microprocessor

I’m currently working on a custom development board, based on a quarter of a century old microprocessor, the Sharp LH5801. This microprocessor is the heart of the Sharp PC-1500(A) Pocket Computer, also known as Tandy TRS-80 Model II.

I’ve got plenty of documentation on the processor and the Sharp PC-1500, but what I did not have was a spare processor to play with. Recently, I got hold of a dozen of them, so no excuse anymore for not playing with them. ūüôā

I started the design process by measuring out the package size¬†in mm and wondered about the strange results I got… Well the size of LH5801 package is – bang on – 0.7 inches. It also has an odd number of pins for such a package size: 76 pins. Both make it pretty impossible to use the standard footprints provided by various package libraries. At least a short round of googling for packages for Eagle CAD or KiCad was unsuccessful.

So I had to design my own footprint which was smoother than expected. I used a already present layout with the correct footprint pitch and adapted copied/adapted the pins.

The part was made with KiPart (based on a CVS table).  The pin description and layout was taken from the Sharp PC-1500 Technical Reference Manual.

The resulting KiCad part and footprint is in my Sharp PC KiCad Library at GitHub.

Covox Board – 8 Bit Audio not only for Legacy Computers

The 80’s called: they want their audio back…

That’s what happens when you’re drinking a few beers¬†and being in¬†a nostalgic mood:¬†Already¬†over a year ago I had designed a generic Covox Breakout Board (Wikipedia link) based on an¬†old well established design.

Covox Board PCB

The whole design is based on two TTL ICs (74HCT373 and 74HCT164) and an¬†R-2R resistor ladder¬†(7.5k and 15k Ohm). The result is a simple DAC with 8 bit parallel and¬†serial input and a few control pins.¬†I’ve uploaded the PCB (back then I still used Eagle Cad) and the Gerber files to my Github¬†Covox Repository.

Sure, I could have taken a cheap audio¬†DAC, address it¬†for example¬†via SPI, and let the dedicated chip do all the heavy lifting. But that would not have been half of the fun of designing the board and (bit)banging the audio signal… ūüėČ

The design is pretty generic and when I built it I thought I could use it in combination with a Sharp PC to generate audio output. I started with a few lines of code, but in the mean time¬†other private tasks¬†became more important. So I’ve reduced my testing of the Covox card to connecting it to an Arduino board and output simple (square and saw tooth) waveforms on my oscilloscope. Maybe if there is enough interest I will try to create a video with some¬†mod-tracker like¬†audio output…

Started to build my Raspberry Pi PiDrive System (for RetroPie)

I’ve started to rework my Raspberry Pi ‘dial-up’ interface. Instead of just handling my external VPN and SSH connections¬†I’ve extended it to also function as an intermediate file server and Git repository (both via NFS+SSH). I’ve also inserted the Raspberry Pi into a new case and added a 1 TB 2,5″ drive. I think it¬†can handle additional load so I plan to extend its capabilities to also serve as a RetroPie console.

By the way: the case and the connector cable between the drive and the Pi are both from WD Labs. The hard drive is not a PiDrive but a refurbished USB 3.0 1 TB disk¬†(it was a recertified My Passport Ultra) before I’ve dismantled¬†it. For me it was cheaper that way. If you’re looking for a similar setup and need an additional power supply and SD card maybe you should think about buying a Nextcloud Box¬†(free shipping;¬†handled by WD). You might¬†not need to use its ‘cloud’ functionality but still get all hardware I’ve previously mentioned which I think is a¬†pretty good bargain.

Sharp PC ROM File Collection (with Hashes)

This short¬†post is¬†to document Sharp PC ROMs I’ve come across so far. I’ve used MD5 and SHA1 checksums to allow their¬†comparison. It would be nice if you could notify me of any ROMs out there that do not match the ones documented here… In an earlier¬†post I’ve described¬†a simple way to¬†dump the ROMs.

  • Sharp CE-150
    Serial 31015xxx
    Memory Area A000-BFFF (8 kB)
    MD5 eb9aa5156c6849890b137799efc50a4b
    SHA1 a3aa02a641a46c27c0d4c0dc025b0dbe9b5b79c8
  • Sharp PC-1500
    Serial 20007xxx
    Memory Area C000-FFFF (16 kB)
    MD5 fbc55a9a8743e619b7709721ff5bcbff
    SHA1 d706d2e69cabbbbbe24f708cb3bc921fa1a2b704
  • Sharp PC-1500 / Sharp PC-1500A
    Serial 20011xxx (Sharp PC-1500)
    Serial¬†31070xxx –¬†57012xxx (Sharp PC-1500A)
    Memory Area C000-FFFF (16kB)
    MD5 8ebec8b0ef358645df14807c31df7d06
    SHA1 51a9e37a670b6cf199f0814e96a7e4fda6f44b60

Feel free to contact me and provide me with ROM file I do not (yet) have in my collection. I will also try to make the ROM files available in the next weeks.

Sharp PC-1500/1600 ROM Dump Method 2: Desoldering the ROM Chips

To make it clear from the beginning: this is a (possibly) destructive method of reading ROM chips. The process of extracting and possibly a resoldering of¬†the memory chip might fail.¬†In my case I’ve tested it on two Sharp CE-150 PCBs¬†I’ve declared to be spare parts. It is only a proof of concept as there are simpler non-destructive ways of ROM extraction on a Sharp PC. I was just curious and so I’m describing my experiences.

Well… At first I did not want to desolder the ROMs: I started with the intention to use a¬†set of probes attached¬†to the individual pins of the chip to read the content of the Sharp PC / CE ROM chips. This did not work due to the narrow leg distance of the QFP chips (0.8 mm).

Probe Connection Problem

Desoldering QFP chips can be done rather quickly with a¬†hot air gun. At least that’s the most comfortable way I know of. I usually add some flux and in some cases larger quantities¬†of¬†leaded solder. The latter decreases the melting point and speeds up the process. I don’t care about solder joints as the chips¬†and the pads can easily be cleaned after the¬†removal. Excessive amounts of¬†solder can be removed with flux and a clean soldering iron tip.
Continue reading “Sharp PC-1500/1600 ROM Dump Method 2: Desoldering the ROM Chips”

Sharp PC Audio Output (CMT-OUT) Simulation in LTspice

This was a little test out of curiosity… I’m currently playing around with an amplifier circuit for the Sharp CE-150 audio output (CMT-OUT) and wanted to see if the signal I’m getting is already distorted when leaving¬†my Sharp PC, or if my circuit and/or sound card is causing the distortions.

The CE-150 uses Frequency Shift Keying (FSK) to transfer binary data via audio signal (e.g. to a tape recorder). It¬†sends¬†four pulses of¬†1.27 kHz for a binary “0” and eight pulses of 2.54 kHz for a “1”.

Sharp CMT-OUT LTspice Schematic

To test the circuit I’ve taken the original design and simulated the circuit in LTspice¬†(running under Linux with Wine). This tool allows the simulation of various analog (and digital) circuits – perfect for my test.

Sharp CMT-OUT LTspice Plot

Sharp CMT-OUT Audacity Plot

The result was – to be honest – pretty surprising¬†for me. The upper screenshot shows the LTspice simulation of the output signal, the lower screenshot was taken from a WAV file in Audacity. I¬†was not only able to simulate¬†the circuit but also to use the resulting signals as a good approximation for my amplifier circuit (not shown). ūüôā One minor fix (also not shown) left was to adapt the transition time between a “0” and a “1” to better fit to the original curve.

Sharp PC-1500/1600 ROM Dump Method 1: Audio Transfer via CE-150 Extension

In this post I’m¬†describing a¬†method which is widely used to Dump RAM and ROM images on Sharp PC-1500 and PC-1600 systems.¬†This method is non-destructive and can be used on most Sharp PC ROMs and extension cards.¬†It only requires a Sharp CE-150 extension, an audio cable, and a computer¬†with a microphone input (i.e. sound card).

Besides a plotter, the CE-150 Color Graphic Printer also provides two audio interfaces (line-in and microphone output). These were (and still are) used to transfer code or data between Sharp PCs and tape recorders. Today, such recorders are mostly outdated but the method works nonetheless with sound cards. Software tools are freely available (e.g. pocket-tools) that allow the transformation of recorded audio files into binary dumps and even further into BASIC code.

Continue reading “Sharp PC-1500/1600 ROM Dump Method 1: Audio Transfer via CE-150 Extension”

Sharp PC 1500/1600 Schematics Collection

To facilitate the access to Sharp Pocket Computer schematics I’ve started to collect and mirror some of them on my web site. This should allow¬†Sharp PC 1500/1600 enthusiasts to update, modify, and especially to repair their hardware.

The Sharp PC 1500/1600 series are obsolete hardware. Their schematics are already freely available on the internet and therefore considered to be in the public domain. Please inform me if you own a copyright on some of this material and do not want it to be available on my web site.

Dumpster Dive: Sony Digital Mavica MVC-FD73 (Floppy Digital Camera)

Another day, another dumpster dive, another¬†hit… a digital camera that uses 3.5″ floppy drives as storage device. A Sony Digital Mavica MVC-FD73.

My first surprise was that I was still able to charge the cameras battery. The second surprise was that it was still working flawless. And when doing some background research there was a third surprise that Sony still provides a manual (PDF). I did not expect any of these points.

Max. resolution 640 x 480 (0.4 megapixels)
Sensor type CCD (ISO 100)
Optical zoom 10x (focal length ~ 40-400 mm)
Screen size 2.5"
Screen dots 84,000
Min shutter speed 1/60 sec
Max shutter speed 1/4000 sec
Weight (inc. batteries) ca. 500 g
Dimensions (ca.) 138 x 103 x 62 mm
Continue reading “Dumpster Dive: Sony Digital Mavica MVC-FD73 (Floppy Digital Camera)”