Close

Generation 2

A project log for PZ1 6502 laptop

I am building a laptop with a W65C02, lots of memory, SID-sound, decent graphics and a filesystem.

adamklotblixtadam.klotblixt 05/07/2020 at 09:250 Comments

I started looking at adding an external parallel SRAM to fulfil my RAM requirements, but quickly abandoned the idea when I realised how many pins had to be soldered and also the fact that I might have to use an external register to get enough signals. Parallel access to pins in Arduino is something that is hard to do, which also weighed against this approach.

After some search and thought I bought a Teensy 4.0 which is a real beast! 600MHz of 32-bit cpu goodness with HW floating point, 1024kb RAM plus all the peripherals I would need. And cheap enough. Only problem: NOT 5V compatible which is problematic when using the text-display I had laying around, and ps2-keyboard interfacing.

At this point I started connecting HW to the Teensy one at a time, to solve the HW & SW interfacing. The Arduino environment was REALLY nice to use, most things had decent libraries ready to use, I just had to tweak them a bit to use on the Teensy.

Turns out most PS2-keyboards are happy to be driven by 3.3V but the one I have does not like it. It works most of the time, but fails sometimes. A BSS138-based level converter solved that.

The 40x3 text LCD I had lying around was a salvage from old corporate desktop telephones. I have more than 50 of them and have always wondered what to do with them. Would be a shame to recycle them. The contrast voltage is 8-12V, so I bought a cheap variable DC-DC step up converter. Unfortunately the display does NOT like 3.3V and I really didn't want to use 8 level converters. Instead I used an old Arduino Mini Pro I had laying around, which IS 5V-based. After some fiddling and timing optimization of the library it worked really well!

Discussions