MAXI000 build complete and thinking about next steps

The physical construction of MAXI000 is complete: It looks good with the SIMM installed. I first attached the joystick parts. Testing the 9 pin Atari joystick went exactly as expected, as did testing the buttons on the Game port joystick I have. After writing a quick test routing for the SPI based MCP3002 (PDF) ADCs, I quickly encountered a problem… Read more »

A Pi based music player, a MISTer and a new PC

      No Comments on A Pi based music player, a MISTer and a new PC

Before getting back to work on the MAXI000 board, I thought it would be interesting to document three other little projects I’ve been working on, none of which required the picking up of a soldering iron, or writing any programmable logic. None the less they are pretty neat and were a lot of fun. I’ve been a Logitech SqueezeBox user… Read more »

A 16 bit softcore processor: Software

      No Comments on A 16 bit softcore processor: Software

I settled on CustomASM for the re-targetable assembler for my processor, after briefly playing about with the somewhat unconventional axasm. CustomASM allows you to define a processor’s instruction set in a configuration file and then assemble assembly source code using that definition. This is easiest to explain with an example. Here is the definition of the LOADI instruction: load.{width:loadtype} {dst:reg},… Read more »

A 16 bit softcore processor: Implementation

      No Comments on A 16 bit softcore processor: Implementation

In my previous blog post I talked about some of my goals for a simple 16 bit processor implemented in VHDL and running on an FPGA. Here is a diagram showing the top level design, as generated by the Quartus tools: For clarity the Control Unit and associated muxes are not shown; the remaining parts, plus the muxes, constitute the… Read more »

A 16 bit softcore processor: Introduction

      1 Comment on A 16 bit softcore processor: Introduction

During my A-level electronics class I studied many interesting topics including: Basic analogue electronics including Ohm’s law and bipolar transistor switching and amplification circuits Boolean algebra Digital design using 74 series parts Assembly programming with the 6502 The 6502 assembly programming was particularly interesting because it was hands on using some teaching boards that consisted of a 6502, a tiny… Read more »

More MAXI000 construction and progress towards an EmuTOS port

The absolute minimum hardware requirements to port EmuTOS to a 68000-based micro are straightforward enough: all that is needed is upwards of 512KB of RAM, about 256KB of ROM and some kind of character IO device. Of course such a setup would not be very useful as it would have no GUI or storage, only a not-very-useful command-line, called EmuCON,… Read more »

Sound and video; more MAXI000 bring-up

      No Comments on Sound and video; more MAXI000 bring-up

The build of the MAXI000 board continues. The first job was to finish the quad UART construction. The RJ45 and RJ10 sockets and the MAX238 (PDF) with its associated tantalum capacitors were all attached without any difficulty. After fixing a dodgy joint, caused by there being not enough paste on a corner pin on the MAX238: success. The bootloader was… Read more »

MAXI000 bring-up progress

      No Comments on MAXI000 bring-up progress

The build of the MAXI000 board is proceeding fairly normally. There have been a few issues along the way, all caused by either bridges or open pins on PLCC parts. As predicted these packages are a pain to rework with the iron; fixing them up after reflowing paste has been somewhat tricky. The biggest headache is not fixing bridges but… Read more »

MAXI000 initial bring-up and some workbench improvements

The bring-up of MAXI000 is still in the very early stages, despite the relatively large amount of bench-time that’s gone by since the boards and other parts arrived. I ended up using jlcpcb.com in the end, as they were a fair amount cheaper then allpcb.com. The bare boards look great: And the back: The reasons for the slowness in getting… Read more »