• Live on GitHub

    adam.klotblixt06/25/2022 at 09:16 0 comments

    The PZ1_Pico project is now available at GitHub: https://github.com/NollKollTroll/PZ1_Pico

  • It works!

    adam.klotblixt06/23/2022 at 06:49 0 comments

    I wrote some low-level tests to make sure the buffers worked properly before implementing the simplest system. A version of EhBasic running in 16KiB ROM (in the Pico) and 48KiB of the external SRAM with one serial port via the Pico USB connection. Runs at a bit faster than 2.5MHz without optimizations or overclocking of the Pico.

    I didn't think I'd get it correct on the first try, but the PCB really works as intended, YAY!

    I'll wrap it all up neatly and make a decent Github repository of code/PCB/docs before going back to porting Fuzix.

  • Real HW, Pico edition

    adam.klotblixt06/17/2022 at 09:26 0 comments

    I got the PCBs from China yesterday! 5 pcs, 75x100 mm, 4 layer. They are REALLY nice and professional looking, a far cry from the double-sided stuff I did in the kitchen 25 years ago :)

    So far everything seems correct. Power supply lines are correct and the first 74LVC373 buffer works correctly. More soldering to be done and a lot more test-SW to write.

    PCBs front, back and partly soldered

  • Taking a break

    adam.klotblixt05/24/2022 at 06:12 0 comments

    I got stuck in trying to debug what went wrong in the Fuzix boot.

    To combat that frustration I've been working on learning Kicad 6 properly, while also trying to design a PZ1 PCB around the Raspberry Pi Pico instead of the Teensy.

    The Pico is really cheap and readily available but has too few gpio pins, so I use five 74-chips to expand the usage of the available pins. This should work well but requires more cycles on the Pico.

    Kicad 6 is really nice to work with, though the bus/wire concept in the schematic capture could really be more streamlined and documented better. I also got Freerouter running, so the resulting PCB is a 75x100mm 4-layer card. Compared to the commercial package I used before 2000, this is a very powerful, quick and easy tool to use!

    I'll do a few more inspections spread out over a few days before I feel ready to order a PCB.

    This revision of PZ1 has a proper 65C02 CPU and 512KiB SRAM with the Pico acting as glue logic and 6502-I/O. The 74-chips are gpio-expanders to the Pico.

  • Fuzix lives!

    adam.klotblixt03/01/2022 at 10:55 1 comment

    Long time since last update, life got in the way.
    Now I am back coding again, and I got some life-signs from my port of Fuzix:

    FUZIX version 0.4pre1
    Copyright (c) 1988-2002 by H.F.Bower, D.Braun, S.Nitschke, H.Peraza
    Copyright (c) 1997-2001 by Arcady Schekochikhin, Adriano C. R. da Cunha
    Copyright (c) 2013-2015 Will Sowerbutts 
    Copyright (c) 2014-2021 Alan Cox 
    512kB total RAM, 448kB available to processes (15 processes max)
    Enabling interrupts ...

     It hangs at this point, but I have something to work on!

  • OS-work

    adam.klotblixt08/22/2021 at 05:43 1 comment

    I've started porting Fuzix to PZ1, which is very exciting. Much of my own scheduler ideas can be used in some fashion in the Fuzix kernel, but first I need to get it running.

  • A simplification!

    adam.klotblixt08/11/2021 at 05:32 0 comments

    I happened to read the sticker under the keyboard I'm using and it actually specs the supply voltage to 3.3-5V. This means I can get rid of the level converter.

    Fewer components, YAY!

  • Big mess of wires

    adam.klotblixt08/11/2021 at 05:27 0 comments

    This is what it looks like right now. The left-most chip on the right board is the ATF22LV10C SPLD, next to the memory. The left board is a Raspberry pi Pico that together with 4 74LVC244 buffers form a 32-bit input bank. The Pico has only 26 usable GPIO, which is not really enough for what I need. Maybe more on that in the future.

    The Pico runs a very simple program that reads CLK/RW/address/data from the 65C02 and the outputs from the SPLD so I can see what goes on as I single-step the clock from the Teensy. It is very useful to have a static CPU like the 65C02 that CAN actually work at human-readable speeds!

  • SPLD fault finding

    adam.klotblixt08/10/2021 at 05:38 0 comments

    It took far too much time to track down the problem with programming the ATF22LV10C SPLDs.

    I started out with the afterburner programmer trying to get the ATF750LVC to program, but failed. The chips are seemingly not compatible enough with ATF750C.

    After getting the smaller ATF22LV10C I tried using them instead. The software claimed programming and verifying worked but the chips did NOT work properly in my testbench. I spent a lot of time searching for what was wrong. In the end I succeeded when recompiling all the code for the programmer from the main branch, that lacks support for ATF750C. Oh well, it sometimes takes a long time to travel small distances.

    I am very happy to finally being able to program SPLDs, it makes the project so much easier to do properly.

  • SPLD woes

    adam.klotblixt08/02/2021 at 12:19 0 comments

    I've built an atfblaster/afterburner that can now program my ATF22V10 chips. WinCUPL is not the most expressive software when trying to understand what is wrong in the source, but it works under wine/linux.

    My main problem now is that I created a test setup with a Pico and the 22V10 to test the function, but I can't seem to get anything to work. More debugging and trial/error to go.