FPGABee is a hardware emulation of a Microbee - the classic Aussie home computer of the 80's!

Building FPGABee v2 - PCU Firmware Working

Tuesday, July 23rd, 2013     #version2 #everything

Today I finished writing enough of the PCU firmware that it now supports disk switching.

Floppy Disk Switching

On pressing F12, the PCU menu appears like this:

DSC_0096.jpg

Here you can see directory listing of HDPREMD1.DS40:

DSC_0097.jpg

Back in the PCU menu, I can choose a different disk image:

DSC_0098.jpg

and here's a directory listing of the new disk: (CP/M requires pressing Ctrl+C to read the new disk info)

DSC_0100.jpg

It works! I still need to do some clean up and write the changed disk information back to the SD card so that the selected disk will survive a reset, but it's basically there.

And speaking of reset...

Reset Menu Item

I've also implemented the ability for the PCU to invoke a reset. To do so, the PCU code writes any value to port 0xFF, upon which FPGABee's hardware asserts the Z80 and 6545's reset line for about 8 clock cycles (using a simple shift register).

The nice thing about this is that you can now perform a reset while holding other keyboard keys. Previously this wasn't possible since a PS2 keyboard it sends events as keys are pressed and released. If you press a key before turning on the machine there's no key press event and the PS2 to Microbee keyboard decoder can't report the key pressed.

Since the soft reset doesn't reset the PS2 logic, or the Microbee keyswitch decoding logic a reset with boot key held is now possible. eg: to get into the Monitor, you can bring up the PCU menu, move to the reset command, hold 'M' and press enter.


« Older - Setting up FPGABee on a Nexys 3 Newer - Building FPGABee v2 - PCU Supporting Hardware »