An 8 bit counter with 7-segment display implemented on a CPLD using VHDL

It looks like my problems with the counter were down to the 555 timer.  Replacing the crufty old 555 with an Atmel ATMega8 generating the clock signal caused the counter to start working properly. Here is the ABEL code: MODULE counter // Defined inputs CLOCK                pin 1;RESET                pin 2; // Defined outputs Q3..Q0       … Read more »

Adventures with Programmable Logic

      No Comments on Adventures with Programmable Logic

So I have received the following goodies: XC9572 x 3 (PLCC44) Platform Cable USB programmer (Model DLC9G) Some PLCC44 PCB sockets (through hole) PLCC44 to DIP44 converter for the breadboard PLCC extraction tool The XC9572 is a simple part, by modern programmable logic standards.  Not exactly capable of running a soft processor, the ‘9572 can still be used for one… Read more »

Hardware problems, XMODEM, and musings on programmable logic

In my last post I mentioned the problems I’ve been having with powering my computer. A multimeter on various ICs shows a big drop across the power pins on some of the ICs. The AY 3 8912, for instance, was getting only about 3V. I have worked around these problems by using an additional power source to counter the voltage… Read more »

Sound, and running programs from CF

      No Comments on Sound, and running programs from CF

My investigation into MinixFS has revealed a nice and simple filesystem; probably the simplest filesystem which you could implement which has UNIX-like semantics.  It has inodes, permissions, and all the usual UNIX things, but (luckily for me) the first iteration of Minix-FS mostly uses 16 bit datatypes.  This means it is “fairly” easy to interpret the data structures which make… Read more »

SPI, IDE, and a PCB!

      2 Comments on SPI, IDE, and a PCB!

It’s been another couple of months with no blog update. Busy busy. Anyway. In the few hours here and there (work lunch times, early morning, etc) I have managed a fair bit of progress. Firstly I’ve laid out the circuit again on some fresh breadboard slabs. I’m fairly sure the breadboard I used previously had some bad links, because the… Read more »

An I2C EEPROM programmer with an ATMega8

To learn about I2C I have implemented a serial EEPROM programmer using the same AVR based ATMega8 as my old school paralled programmer. I2C, like SPI, is nice because all signalling between the microcontroller and the memory is along only a handful of wires. This also, at I2C speeds at least, makes it slower but adequate for many applications like… Read more »

Monitor progress

      No Comments on Monitor progress

So far the monitor can do four things: Dump memory contents in hex and ASCII (d command) Write memory contents in hex (w command) Exit the monitor and run¬†arbitrary¬†code (e command) Show the registers as they were just before the monitor was reentered (r command) For ease of parsing each command is a single character. Monitors are generally implemented as… Read more »

Serial communications and the start of a “monitor”

“Monitors” were pouplar tools for debugging programs, along with other useful facilities. Some were also powerfull enough to be considered development environments in there own right. They provided the user with the ability to read memory content, modify memory contents and registers, execute external code, set breakpoints etc. Some had built in assemblers and dissasemblers. I will be writing my… Read more »