DIY 8-Bit Z80 Single Board Computer

แชร์
ฝัง
  • เผยแพร่เมื่อ 28 ก.ย. 2024

ความคิดเห็น • 301

  • @cadmilus
    @cadmilus 2 ปีที่แล้ว +3

    Your video stability is fantastic... no jitter, no tearing, no weird colour artifacts, rock solid! Looking forward to the future installments of this project!

    • @solisted
      @solisted  2 ปีที่แล้ว +1

      Thank you Clayton! It was not so stable initially and took some time to optimize PLD file to maintain low input-to-output gate delays in CPLD. But overall, this is due to 4 layer board design and relatively high speed capabilities of ATF1508 CPLD (>100 Mhz when VGA clock is 25.175 Mhz) and IDC7005 dual port SRAM (15ns). Additional inverters/buffers before the R2R DAC also helped to clean up signals fed into the DAC from the CPLD. VGA signal is a bit smeared and wavy if you feed sync and color outputs of the CPLD into the DAC directly.

    • @midixiewrecked7011
      @midixiewrecked7011 ปีที่แล้ว

      Color, not col- "hour"

  • @AntonioBarba_TheKaneB
    @AntonioBarba_TheKaneB 8 หลายเดือนก่อน +1

    OMG! It doesn't look like a homebrew project but a professional high end machine from the era :O

    • @solisted
      @solisted  7 หลายเดือนก่อน

      Thank you, I tried to replicate that look and feel of 8-bit home computer era.

  • @adamkelly2256
    @adamkelly2256 2 ปีที่แล้ว +47

    Your board is so well laid out. Very compact, but yet it feels spacious!

    • @solisted
      @solisted  2 ปีที่แล้ว +8

      Thank you, Adam! This board was my first learning experience in relatively complex PCB routing and layout. First few revisions were autorouted and did not look so good :)

    • @chaoticsystem2211
      @chaoticsystem2211 9 หลายเดือนก่อน +1

      it's gorgeous

  • @tolkienfan1972
    @tolkienfan1972 2 ปีที่แล้ว +3

    Very nice! It really takes me back. A great way to honor those early home computers.

    • @solisted
      @solisted  2 ปีที่แล้ว

      Thank you!

  • @TheZeofobic73Channel
    @TheZeofobic73Channel 2 ปีที่แล้ว

    Beautiful improvement on the Z80 flat keyboard

    • @solisted
      @solisted  2 ปีที่แล้ว

      Thank you! Yes, this one feels much better :)

  • @joefish6091
    @joefish6091 2 ปีที่แล้ว +6

    Very nice, complex serious design, well above the common Z80 sbc most people make, so one question why not use HD64180 or Z8S180. these are super Z80 ,fast and feature packed.
    Using the 180 type of Z80 with their dual channel inbuilt DMA that just inserts into normal machine cycles, , it's possible to have invisible screen memory transfer to a separate frame buffer and GPU,

    • @solisted
      @solisted  2 ปีที่แล้ว +4

      Thank you Joe! I was looking into various 8-bit CPUs including Z180 and decided to go with Z80 to replicate (with some convinience tweaks) look, feel and architecture of home computers of that era. Most of the inspiration was taken from the first computer I had when I was a kid - Sinclair ZX Spectrum.
      Also, I wanted to use parts that are DIY friendly (DIP/PLCC) and easily obtainable. Z180 variants in PLCC packages are usually not stocked at major IC vendors, unlike Z80 that is always availabile in huge quantities. I suspect it is still widely used a lot in automation controllers.
      Third, I did not implement any hardware blitters, sprite engines and DMAs to make it more fun and challenging writing software for this computer :) At least, In my view. I like programming graphics in software. Do cycle counting to optimize graphics, music and game logic routines :)

    •  2 ปีที่แล้ว

      Z180 is nice, however if you plan to run/port existing Z80 software, you're in trouble, IIRC for example Z180 does not support some "unofficial" Z80 features used by many software like the ability to use IX and IY as two 8 bit registers in the form of IXL/IXH and IYL/IYH. At least I have already run into this problem once, while I tried to use Z180 inside an Enterprise-128 (Z80 based) computer just to fun to try another kind of "Z80-like" CPU to be fancy for just fun.

    • @wayland7150
      @wayland7150 2 ปีที่แล้ว

      Toshiba do one with serial ports built in and timers for interrupts.

  • @kippie80
    @kippie80 ปีที่แล้ว

    Since learning arm assembly, I’m reluctant to put time to the simpler cpus these days .. I like the llvm linker for build chain and options from that! Still, nice work!

    • @solisted
      @solisted  7 หลายเดือนก่อน

      Thank you!

  • @SaarN1337
    @SaarN1337 2 ปีที่แล้ว

    A watered down Supaplex game, cool.
    That looks like a fun project, though, very clean.

    • @solisted
      @solisted  2 ปีที่แล้ว

      Thank you, Saar! I would say, Supaplex is beefed up version of the original Boulder Dash game which is replicated for this computer :)

  • @OIP_1
    @OIP_1 2 ปีที่แล้ว

    fantastic project! really clean layout and implementation

    • @solisted
      @solisted  2 ปีที่แล้ว

      Thank you!

  • @CodexPermutatio
    @CodexPermutatio 2 ปีที่แล้ว

    This is truly excellent. Keep up the good work.

    • @solisted
      @solisted  2 ปีที่แล้ว

      Thank you!

  • @blurigard447
    @blurigard447 11 หลายเดือนก่อน

    Stunningly well done, sir.

    • @solisted
      @solisted  10 หลายเดือนก่อน

      Thank you!

  • @kenturkey1971
    @kenturkey1971 ปีที่แล้ว

    Very neat!! I'm working on a retro project currently with a Z180 which is an odd variant of the Z80.

    • @solisted
      @solisted  ปีที่แล้ว

      Thank you! Cool!

  • @spacetrucker62
    @spacetrucker62 6 หลายเดือนก่อน

    This is very cool, I think I'm going to have to build myself one! I've downloaded the emulator - have you published any of the demo code anywhere to have a play around with?

  • @theobserver9805
    @theobserver9805 ปีที่แล้ว

    Вань, красота!

    • @solisted
      @solisted  ปีที่แล้ว

      Спасибо!

  • @tseckwr3783
    @tseckwr3783 2 ปีที่แล้ว

    Excellent work!! Thanks for sharing.

    • @solisted
      @solisted  2 ปีที่แล้ว

      Thank you!

  • @lawrencerubanka7087
    @lawrencerubanka7087 ปีที่แล้ว

    Beautifully done. Thanks!

    • @solisted
      @solisted  ปีที่แล้ว

      Thank you, Lawrence!

  • @jjolleta
    @jjolleta 9 หลายเดือนก่อน

    is it just me, or apart from the fact that the screen looks great, the computer is incredibly fast ??

    • @solisted
      @solisted  9 หลายเดือนก่อน

      Thank you! I’m working right now on the MKII version of this computer.

  • @rdalemd76
    @rdalemd76 2 ปีที่แล้ว

    Nice, Waiting for that Windows Emulator.

    • @solisted
      @solisted  2 ปีที่แล้ว +1

      Thank you! Currently, making Z80 CPU emulator library in ANSI C.

  • @yafz
    @yafz 2 ปีที่แล้ว +1

    Beautiful!

    • @solisted
      @solisted  2 ปีที่แล้ว +1

      Thank you, Emre!

  • @paulwratt
    @paulwratt 2 ปีที่แล้ว

    thats how the MSX vidoe memory is organised, maybe the attribute table come 1st, same screen size too. Funny thing, if you program the MSX screen right to left, bottom to top, you can get 4 colors per byte, F+B per nibble, instead of 2 colors per byte.

    • @solisted
      @solisted  2 ปีที่แล้ว +1

      The only thing frustrated me about programming graphics on MSX is a need to write to graphics buffer through I/O registers. It is much slower than having it memory mapped for direct CPU access.

    • @paulwratt
      @paulwratt 2 ปีที่แล้ว

      @@solisted hence the use of DMA as an option from th VDU side. There is a "mod" in BlueMSX (and OpenMSX?) that "opens" VDU RAM as 16K PAGE MAPPED, based on a real world mod, not well known because is conflicts with some other common hardware (MSX-AUDIO or MSX-MUSIC) that the guy did not own at the time. I am glad your design doesnt need such hacks :)

    • @solisted
      @solisted  2 ปีที่แล้ว

      @Paul Wratt Interesting mod, will check that out.

  • @jps99
    @jps99 2 ปีที่แล้ว

    Elegant design!

    • @solisted
      @solisted  2 ปีที่แล้ว

      Thank you!

  • @samuelcorreabueno9784
    @samuelcorreabueno9784 2 ปีที่แล้ว

    Really amazing ! Congats !

    • @solisted
      @solisted  2 ปีที่แล้ว

      Thank you!

  • @GaleazzoMussolesi-ff4oq
    @GaleazzoMussolesi-ff4oq 9 หลายเดือนก่อน

    So cool

    • @solisted
      @solisted  7 หลายเดือนก่อน

      Thank you!

  • @juliocesarm.espinola2463
    @juliocesarm.espinola2463 ปีที่แล้ว

    hows name that operating system which work that processor?

    • @solisted
      @solisted  ปีที่แล้ว +1

      This computer has small monitor program in its ROM that allows to perform basic operations, like dumping memory and loading binary data from serial port.

  • @10p6
    @10p6 2 ปีที่แล้ว +1

    Very nice 🙂

    • @solisted
      @solisted  2 ปีที่แล้ว

      Thank you!

  • @gasparinizuzzurro6306
    @gasparinizuzzurro6306 2 ปีที่แล้ว

    Nice! would have been wonderful to have a full bitmap mode without color clash @16 colors. It would have required 32kvram

    • @solisted
      @solisted  2 ปีที่แล้ว

      Thank you!
      I have graphics engine based on the same CPLD that implements this mode. But it's impractical to put such mode with 8-bit CPU like Z80 @ 10Mhz. There would be very poor fill rate for any decent game animation - too much data to move around for such CPU. It will ruin the balance between the CPU and graphics subsystem. Also, video buffer would take a lot of RAM and will require external banking to be implemented. 16/256 color modes for 8-bit CPU is usually implemented using tiled/sprite mode, without linear framebuffer. But in this mode you cannot draw arbitrary graphics (yes MSX has 768 tiles in tiled mode you can fill entire screen with and do some bitmapped drawing, but it's very quircky to work with).

    • @paulbraun5657
      @paulbraun5657 2 ปีที่แล้ว

      @@solisted I also think it's really disappointing about the Spectrum type attributes/colour bleed. I prefer graphics modes which don't suffer from this, like on the Amstrad CPC, BBC Micro, etc. The Timex Sinclair TS2068 and some other ZX Spectrum clones have an additional graphics mode without the attributes/colour bleed. Can you explain how this is done? Of course, the TS2068 CPU is clocked at 3.5Mhz, so wouldn't it be much easier at 10Mhz?

    • @solisted
      @solisted  2 ปีที่แล้ว

      @@paulbraun5657 I don't know about BBC Micro, but Amstrad CPC has double width pixels which gives resolution 160x200 that takes 16k of VRAM and CRTC controller that can consume main RAM for the video buffer at the arbitrary address. With smart programming of this controller you can achieve smooth animation with double buffering and/or per pixel scrolling, but at small frame rates. Also 16k VRAM is not a big deal since Amstrad CPC supports memory banking and additional memory. It's a bit more advanced. ZX Spectrum 48k has only one bank of memory and no video hardware assistance of any kind. For this computer, such video layout was a necessity, I think.
      I tested another prototype with 256x192x16 color per pixel video mode with Z80 clocked at 10Mhz. It took 24k for the video buffer out of 64k address space and I could not achive smooth animation due to low throughput of the CPU even at these frequencies. To have smooth animation, you will need second back buffer and it's another 24k - somthing this computer cannot afford to have. Hardware assistance was needed for games to feel fast and snappy, at least some sprites or hardware blitter of some sort.
      At the end, I decided to make another computer with 256x192x16 color video mode and W65C816 CPU that has 16M address space. And keep this computer with ZX Spectrum-like video mode to preserve the original balance.

    • @paulbraun5657
      @paulbraun5657 2 ปีที่แล้ว

      @@solisted the Amstrad CPC has three graphics modes which each take 16K. It uses the same 6845 graphics chip as the BBC Micro. However, the BBC Micro graphics have no border and the screens are 256 pixels high. I think this means the BBC Micro graphics modes each take 20K. The Spectrum and Commodore 64 graphics screens each take up 8K. I'm not aware of Amstrad CPC or BBC Micro games running much slower than Spectrum games, so I think there must be a flaw in your computer's design! I think it's very depressing seeing that large areas of Spectrum graphics screens have the same background and foreground colours. Sinclair tried to make everything as cheaply as possible and this is the result. I can't see the point of copying this limitation 40 years later, though.

    • @solisted
      @solisted  2 ปีที่แล้ว

      @@paulbraun5657 What can I say, I don’t agree. I tested everything thoroughly on the prototype and was not happy with the performance with color per pixel mode. CPU was running at the full speed while accessing video RAM, no wait states. Also not agree that attribute clash is some bad thing. When memory is limited to just 64k, this mode totally makes sense, because it leaves as much RAM as possible to a program code. With clever programming you can make pretty good looking games, even with attribute clash. I’m pretty satisfied with my computer design and enjoy programming it.

  • @dgnrlento
    @dgnrlento 2 ปีที่แล้ว

    Gracias. Thanks.

    • @solisted
      @solisted  2 ปีที่แล้ว

      Thank you!

  • @mrq3727
    @mrq3727 2 ปีที่แล้ว +1

    Super but… why? What is a purpose to develop systems from the 80’s?

    • @solisted
      @solisted  2 ปีที่แล้ว +7

      Good question MR Q, thank you! A lot of reasons, actually. A few of them are:
      I'm not a professional electronic engineer. Old computer systems are very easy to design and build for beginners like me. Sub-20Mhz frequencies allow you to use inexpensive debugging equipment like $300 oscilloscopes and $100 logic analyzers. And you will need a lot of hardware debugging when you start something like that. Due to low frequencies you can start on the breadboard with jumper wires and it will still work! We know how noisy circuts are on a breadboard.
      You don't need great soldering and PCB-design skills to build system like that also. At these frequencies it is very forgiving to various signal integrity mistakes you might encounter when designing PCB. First revisions of the PCB for this project were 2-sided and so ugly, because I used autorouter, but still worked well! :) Only final revision was manually routed on 4-layer PCB when I learned to do it well. I'm still not comfortable with SMD-soldering, so choice of old through-hole components helped me to avoid a lot of delays and frustrations caused by lack of advanced engineering knowlege and skills.
      I'm a X-generation computer enthusiast and computers from that era are still produce a lot of warm feelings and nostalgia for computer nerds like me. I'm very frustrated by the situation in the IT industry today with bloated operating systems, overengineered applications and frameworks that consume gigabytes of RAM for the simple tasks like IRC chat with fancy graphics (hello Slack based on Electron framework ;) Computer and network speeds improved by many magnitudes since 80s but still you have to wait couple of seconds for an application to start like you're running it from the floppy :) I'm a programmer and languages like JavaScript and its frameworks make me puke - want to go back to my cave, open text editor and start writing oldschool z80 assembly :) This project is a safe-space for myself as a software developer where I can work alone, without all that toxic scrums and kanban boards :)
      Working with 8-bit systems in assembly language is very easy and straightforward - it works the way you make it work (program), no more no less. Instant compilation times, instant launch, no need to have super powerful workstation for development.
      Also, I like an aspect of that era that you don't need to be Ubisoft or Epic to make a decent game for an 8-bit computer. You alone can make something very decent (matching system capabilities) in a month or so and that will include game graphics, level design and music. And it will be very captive and challenging to play if you do your job well - check how popular is Celeste game for the PICO-8 fantasy console. It was even ported to different modern platforms and selling very well!

  • @b213videoz
    @b213videoz 2 ปีที่แล้ว

    Does it run River Raid?

    • @solisted
      @solisted  2 ปีที่แล้ว

      No, it's not compatible with any existing home computer. But River Raid can be ported to it.

  • @LOrealHardly
    @LOrealHardly ปีที่แล้ว

    Minimum order from JCLPCB is 5 units costing (me) £60 including tax and slowest delivery, be happy to sell on the other four at no profit to myself to any others interested, if OP is Ok with that or can point me to where I might get a single unit printed for a reasonable price. I haven't costed the keyboard yet but maybe the same deal.
    EDIT: Approximately £90 for 5X Mainboard and 5X Keyboard unpopulated PCB's

    • @solisted
      @solisted  ปีที่แล้ว

      Martin, I did order all my PCBs from JLCPCB as well. This is the most convenient PCB vendor I know with low price. OSHPark has minimum order of 3, but they are much more expensive, and I don't like purple PCBs.
      If you want to sell excess boards, make a comment with some information how people can contact you. I have no problem with that and will pin your comment.

    • @LOrealHardly
      @LOrealHardly ปีที่แล้ว +1

      @@solisted The boards have arrived after a very long stint on a slow boat from China. I'll work out the break-even prices and make a comment, soon.

    • @LOrealHardly
      @LOrealHardly ปีที่แล้ว +1

      Hi Ivan, I've tried adding links to my extra boards but my comments keep disappearing, not ure if that is you or YT delting them?

    • @solisted
      @solisted  ปีที่แล้ว

      @@LOrealHardly Seems like it's TH-cam. I have "Block Links" option disabled in channel settings. I temporarily lowered strictness level for comments. Could you please try to make it one more time? Create top-level comment with links and all information needed. To see if it will pass TH-cam filters.

    • @solisted
      @solisted  ปีที่แล้ว

      Martin, I don’t know how to make comment with links pass, but we can do the following. Leave comment without links and refer to the description of the video and email me links to your boards, I will put them in the description of the video.

  • @garethde-witt6433
    @garethde-witt6433 2 ปีที่แล้ว

    I fail to see the point of it

    • @solisted
      @solisted  2 ปีที่แล้ว

      Check one of the previous comments. I explained it in detail in response to a similar question.

  • @tripox_
    @tripox_ 2 ปีที่แล้ว

    В общем норм, только жаль что не на русском

    • @solisted
      @solisted  2 ปีที่แล้ว

      Спасибо. Можно включить русские субтитры, там они доступны.

  • @WessieNC
    @WessieNC 2 ปีที่แล้ว +22

    This is a very nice project. Ive been looking for a while now for a ZX80 project that I can build with easy available components, and this is it! I cannot wait for your project files. Well done!!

    • @solisted
      @solisted  2 ปีที่แล้ว +4

      Thank you Jaco! Project files are published on GitHub in the description of the video.

    • @malx1289
      @malx1289 2 ปีที่แล้ว

      Holy smokes me too

  • @SpikeBlighty
    @SpikeBlighty 2 ปีที่แล้ว +19

    The video output seems very clean. Good job. Great to see the Z80 chip still rockin' after all these years.

    • @solisted
      @solisted  2 ปีที่แล้ว +3

      Thank you! It was captured with a decent VGA to HDMI converter/upscaler. But on the real CRT VGA monitor I have it looks much much better.

  • @davidgood840
    @davidgood840 ปีที่แล้ว +8

    This presentation has a coffee shop musician feel to it, but instead of saying "this next song I wrote when I was living on my best friend's couch" it's "this next program I wrote on my own computer. I hope you like it." 😄

    • @solisted
      @solisted  ปีที่แล้ว +5

      Thank you, David! You got it right :)

    • @cygil1
      @cygil1 6 หลายเดือนก่อน +2

      This is what TH-cam used to be like, and it was better for it. New TH-cam is a bunch of stupid editing and graphics and dumb memes and bad acting stuck in for no reason. He's talking about his computer, so he talks about his computer.

  • @up2tech
    @up2tech 2 ปีที่แล้ว +8

    This is fantastic! Only missing items are:
    A) a storage microSD unit ; B) a BASIC compiler and a Disassembler . Pretty awesome!

    • @solisted
      @solisted  2 ปีที่แล้ว +4

      Thank you, Luis! A and B items are somthing I plan to work on in the near future.

  • @ro.7427
    @ro.7427 2 ปีที่แล้ว +5

    You are criminally under subscribed. Really cool project and first video of yours I've watched.

    • @solisted
      @solisted  2 ปีที่แล้ว

      Thank you, R O!

  • @mortengreenhermansen4489
    @mortengreenhermansen4489 2 ปีที่แล้ว +6

    What an absolute beauty! Classic but with real keyboard. I have been a software developer my whole life but I cannot understand how you hardware guys can create things this complicated! I have have incredible respect for that kind of work!
    Modern computer have CPUs 1000 times as fast but feels 10 times as slow.
    Thanks for sharing this. I really enjoyed it! 😀👍

    • @solisted
      @solisted  2 ปีที่แล้ว +2

      Thank you, Morten!
      Unlike old 8-bit computers where you work with hardware directly, modern computer has 1000s layers of abstraction between hardware and end-user programs. This way corporate offshore teams of developers can quickly put out various applications with minimal development effort :) These abstraction layers are not optimized well, usually and that's why modern computers don't feel as snappy as 8-bit ones with instant launch times and reaction to input.

    • @mortengreenhermansen4489
      @mortengreenhermansen4489 2 ปีที่แล้ว +1

      Thanks for the reply! And because all young people mostly learn stuff at the top of the abstraction layers, if something breaks below they have no clue how to fix it.
      So when all you lower-level guys gets to pension this world is doomed!
      So Ivan PLEASE wear a bicycle helmet… all the time! Please! 😅

  • @pi4630
    @pi4630 2 ปีที่แล้ว +4

    Amazing, wonderful! I love how everything is clean and compact. What about an on/off LED?

    • @solisted
      @solisted  2 ปีที่แล้ว +1

      Thank you, Pasqualino! Just did't think about it at the time.

  • @Theineluctable_SOME_CANT
    @Theineluctable_SOME_CANT 2 ปีที่แล้ว +3

    Just a most beautiful, excellent design and full build! Just beautiful and perfect.
    I'd stick a few 8255 devices on the buss, though. I can't help myself. Maybe 10 of them....

    • @solisted
      @solisted  2 ปีที่แล้ว +1

      Thank you!

  • @c1ph3rpunk
    @c1ph3rpunk 2 ปีที่แล้ว +4

    Would love to see how you made the CPLD’s work, I’ve been interesting in trying some but have read about many challenges using them, mainly trying to program them from a modern host computer.

    • @solisted
      @solisted  2 ปีที่แล้ว +3

      Thank you, Darren! These particular CPLDs from Atmel/Microchip (ATF150x) are not very difficult to work with. You will need simple WinCUPL CUPL language editor/compiler, ATMISP 7.3 programmer software and Atmel's USB JTAG programming cable: ATDH1150USB. All works perfect in Windows 10.
      Please, check here: www.microchip.com/en-us/products/fpgas-and-plds/spld-cplds/pld-design-resources

  • @SteveRaynerMakes
    @SteveRaynerMakes 2 ปีที่แล้ว +3

    You are giving me a lot of inspiration to continue with mine, but you are way ahead of me.

    • @solisted
      @solisted  2 ปีที่แล้ว +1

      Thank you Steve! It took me a few years to get to the final design I showed in the video. Many revisions, first on the breadboard then 4 revisions on PCB with different layouts and perepherials.

  • @janlavcharivmakhgalsuren6127
    @janlavcharivmakhgalsuren6127 8 หลายเดือนก่อน +1

    Wow. wonderful project and cute game.

    • @solisted
      @solisted  7 หลายเดือนก่อน +1

      Hi! Thank you!

  • @brightsourcemedia
    @brightsourcemedia 2 ปีที่แล้ว +1

    ..... But, but, but..... does it play Doom?

    • @solisted
      @solisted  2 ปีที่แล้ว +1

      Z80-based TI calculator can, why not? :)

  • @kirannevaskar7034
    @kirannevaskar7034 5 หลายเดือนก่อน

    Hi Ivan
    I bought boards from Ebay. They are quality product. Looking forward to solder the board.
    May I know source for AY-3-8913 chip and BOM for keyboard?
    Thanks

  • @MaciejKollo
    @MaciejKollo 2 ปีที่แล้ว +2

    Very nice, I remember the good old Z80 days. It was very nice CPU.

    • @solisted
      @solisted  2 ปีที่แล้ว +1

      Thank you, Maciej! I do agree - Z80 is very nice CPU to work with and to program. Instruction set is good, bunch of handy 16-bit operations. Index registers are also very helpful. And block move instructions too.

  • @TheDradge
    @TheDradge 2 ปีที่แล้ว +3

    Excellent video. I designed and programmed many top Spectrum games back in the day and I admire your work on this project. Rearranging the order of the video frame buffer is a huge improvement.

    • @solisted
      @solisted  2 ปีที่แล้ว +1

      Thank you!

    • @TheDradge
      @TheDradge 2 ปีที่แล้ว

      @@solisted you're welcome. Are you going to be publishing/selling the code for the CPLD chip? Which chip(s) are you using?

    • @solisted
      @solisted  2 ปีที่แล้ว +1

      I used Microchip/Atmel ATF1508 for the graphics and ATF1502 for the chipset. Not decided yet if I want to share PLD files.

    • @TheDradge
      @TheDradge 2 ปีที่แล้ว

      @@solisted Interesting. Are you familiar with the Harlequin Spectrum clone? They essentially did the graphics/ULA in discrete TTL.

    • @solisted
      @solisted  2 ปีที่แล้ว +1

      @@TheDradge Yes, very nice project. It can even fit in the original enclosure if I remember correctly.

  • @Theineluctable_SOME_CANT
    @Theineluctable_SOME_CANT 2 ปีที่แล้ว +1

    Any chance someone might do a kit of your design?

    • @solisted
      @solisted  2 ปีที่แล้ว +1

      It's possible, I published gerbers and schematics on GitHub under the MIT license.

    • @Theineluctable_SOME_CANT
      @Theineluctable_SOME_CANT 2 ปีที่แล้ว +1

      @@solisted I think someone should get behind this. But I would put more GP I/O on board for robotics and SCADA type stuff. Probably swap out the sound effects / joystick for motors and DACs.
      Does it have / can it run unmodified BASIC or FORTH?

  • @zment
    @zment 2 ปีที่แล้ว +2

    Nice, your design very similar to my own KAPE 8bit homebrew target design. I'm not there yet tho. Gz on finishing the project!
    You use a CPLD to output to VGA? What CPLD are you using for it? My original idea for my own GPU was to use dualport RAM but getting those chips relatively cheaply for the amount I needed (I wanted to go full 256x192 16 color display, so the framebuffer would've needed to be 24k minimum, so in the end opted for a somewhat unorthodox kludge of AVR MCUs and a bunch of FIFO chips - and also the GPU itself is tile/sprite-based due to memory constraints, but the output FIFO buffer is big enough to handle the full image).
    Also it seems you have the brown-fix implemented? I decided to go for "mathematically correct" 16 color RGBI, just for the simplicity of outputting the RGB lines from a color bit line + intensity bit line, as everything would be symmetrical.
    The method of ROM having a monitor to load games to RAM is what I'm going to go for too. Currently I have only RAM installed in my breadboard prototype, and uploading to RAM is done with an additional Arduino UNO that also handles the proper signals for bus hijacking.
    My choice of system was a 6502 CPU and that ecosystem, so 6551 for UART and 6522 for peripherals. I'll be using an YM2149F for audio output and gameport reading.
    Awesome project, great stuff!

    • @solisted
      @solisted  2 ปีที่แล้ว +4

      Thank you!
      Yes, I use Microchip (Atmel) ATF1508 CPLD and Renesas (IDC) 7005 8Kb dual port SRAM as a base for the video system. Dual port SRAM is expensive, but simplifies system design by a lot. Only thing you need is to feed BUSY output of the SRAM into WAIT input of the CPU to avoid "snow" effect when address collision happens between CPLD and CPU on opposite ports of the SRAM. I also have 256x192 16 color prototype graphics implemented using the same CPLD and 7008 64k dual port SRAM for 2 flippable pages (x86 SBC prototype briefly shown in my other video). It is possible to implement tiled graphics using the same CPLD, but without sprites - 128 is not enough macrocells/flip-flops available in it.
      Generally speaking, I've managed to implement 3 types of graphics engines with this awesome CPLD. Speccy like monochrome linear buffer with color attributes (8k buffer), 16-color linear framebuffer (24k buffer) and 256-color tiled graphics (8k + 16k buffers = 20k total). I think, it is possible to make full featured tile/sprite graphics engine by stacking multiple CPLD and dividing responsibilities between them. One renders tiles, another one overlays sprites, third one renders text-based layer for a scoreboard, for example.
      I have one more SBC prototype of 65c816-based computer with 320x240 8bpp color 8x8 tiled graphics with smooth scrolling (no sprites). But approach there was a bit different. Instead of reading from SRAM and sequencing pixels inside CPLD, that CPLD is driving address bus of one dual port SRAM dedicated to character memory which in turn drives part of the address bus (alongside with CPLD) of another dual port SRAM that holds tile pixels. And second SRAM data bus is directly fed into the R2R DAC (through buffers also).
      Brown/dark gray fix was easy to implement with CPLD, just changed boolean equation that converts IRGB to RRGGBB from:
      R1.d = R;
      R0.d = R & I;
      G1.d = G;
      G0.d = G & I;
      B1.d = B;
      B0.d = B & I;
      to:
      R1.d = R;
      R0.d = I & !G & !B # I & R;
      G1.d = !R & G # I & G # G & B;
      G0.d = I & !R & !B # R & G & !B # I & G;
      B1.d = B;
      B0.d = I & !R & !G # I & B;
      Like I mentioned above, I'm also interested in 65c02/65c816 series of CPUs by Western Design Center and made another prototype with enhanced 256-color tiled graphics with that CPU and 65c51/65c22 peripherals IC.

    • @zment
      @zment 2 ปีที่แล้ว

      ​@@solisted Thanks for the detailed answer! Been looking into PLD's, tho mainly for address decoding (like ATF16V8 or ATF22V10), but doing a whole VDP/GPU out of a ATF1508 sounds dope!
      Great stuff!

    • @sohl947
      @sohl947 2 ปีที่แล้ว

      @@solisted I'd be very interested in learning more about your video circuit design and how you work with CLPD devices to make it come to life.

  • @RetroDepot
    @RetroDepot 2 ปีที่แล้ว +1

    Cool project. Not dissimilar from what I did with my computer - heavily inspired by the MSX architecture. I’ll have to look at your GitHub when I’m in front of the PC.

    • @solisted
      @solisted  2 ปีที่แล้ว

      Thank you!

  • @randaldavis8976
    @randaldavis8976 2 ปีที่แล้ว +1

    add storage !!! and don't do basic, do forth !!!

    • @solisted
      @solisted  2 ปีที่แล้ว

      Will do, but not sure about Forth. Very specific stack-based programming language used back in the day for scientific calculations. I think BASIC will be more interesting for people to play with.

    • @randaldavis8976
      @randaldavis8976 2 ปีที่แล้ว

      @@solisted not limited to scientific programming. Games, word processors, spacecraft, robotics, embedded programs, boot loaders, etc have been done in forth. very compact & flexible language. you can do more in a limited amount of memory than almost any other language, Assembly is faster to run and more compact for small programs, but as complexity increases, Forth beats it.

    • @solisted
      @solisted  2 ปีที่แล้ว

      @Randal Davis I see. I did not encounter Forth in other envirnonments other than scientific, hence responded that way.
      I think 8-bit computer's, with 64K of RAM and a few simple 8-bit I/O registers to interact with keyboard and sound, complexity is the exact match for assembly. And BASIC is simple and straightforward enough for programmer beginner to start toying with the system before jumping to assembly. That was my path in the programming at least.
      But I would not argue. I did not do programming in Forth that much. Just did a few simple programs in DOS on PC back then to educate myself a little about this language.
      Just thinking, BASIC interpreter on power on will be more attractive to people bc it was like that in 80's on home computers experience of which this system is aimed to replicate.

  • @PCBWay
    @PCBWay 2 ปีที่แล้ว +5

    Wonderful sharing, Ivan, 👍super excited to see some cooperation going between us

    • @solisted
      @solisted  2 ปีที่แล้ว +1

      Thank you PCBWay! Will be happy to cooperate for sure!

  • @agencyx1turbo443
    @agencyx1turbo443 ปีที่แล้ว

    面白そう!色も15色使えていいね。Z80だけど10MHz出るんですね。
    Looks interesting! I am interested to see what the specs are.
    Nice to have 15 colors to work with!

    • @solisted
      @solisted  ปีที่แล้ว

      Thank you!

  • @greenaum
    @greenaum 2 ปีที่แล้ว

    Rather than the serial port, I'd add an SD card, it would be so convenient, and with a good enough keyboard and display, you'd be able to develop directly on the Z80, the fun way! I bet your design isn't far from what Sinclair used, except you seem to have added useful colours, rather than just RGB + Bright, which gave a lot of useless duplicated colours, nobody really NEEDS two cyans, when instead things like pink or brown were missing. Then better greys, perhaps including a bright black.
    Of course the Spectrum couldn't do separate brightness for foreground and background colour, it was set per cell. Leaving 1 bit left for the equally useless Flash! Using the Bright and Flash bits to give 16 foreground and background colours would have been infinitely more useful in a machine that was already limited. If Clive had given more thought to it's obvious use for games, he might have thought about making things just a bit more friendly and useful. I'm sure he only put in colour begrudgingly. A modern CPLD and an '80s ULA probably have about the same number of gates to make your circuit from.

    • @solisted
      @solisted  2 ปีที่แล้ว

      Serial port is a universal interface. It does not have to be used just for computer-computer transfers. External storage device can be built with any storage medium, communicating with computer via serial port, for example. And monitor ROM can be extended to support reading sectors from such device via serial port using some simple communication protocol.
      That's how expansion worked on Atari 8-bit computers - floppy drives, printers, modems were all connected to a daisy chained serial port.

  • @jumhig
    @jumhig 2 ปีที่แล้ว +1

    Very cool, was looking forward to this video, and interested in building one.

    • @solisted
      @solisted  2 ปีที่แล้ว

      Thank you, James!

  • @sqlcactuss
    @sqlcactuss 2 ปีที่แล้ว +2

    Would totally buy one.

    • @solisted
      @solisted  2 ปีที่แล้ว

      Thank you Wes!

    • @edabean007
      @edabean007 2 ปีที่แล้ว

      It is a very nice build. Added one to my fantasy shopping list

    • @solisted
      @solisted  2 ปีที่แล้ว

      @@edabean007 Thank you! I may start selling kits of this computer, not decided yet.

  • @hackergrey3255
    @hackergrey3255 2 ปีที่แล้ว

    Is it not compatible with any of the retrocomputers ? Why do we need this project ? It would be interesting to make a computer on Zilog ez80 , 56 MHz CPU, 16 MB memory, 256 colors, with a screen resolution of 320x240

    • @solisted
      @solisted  2 ปีที่แล้ว

      No, it's not compatible with any of the retro computers. This project is meant to educate myself in electronics engineering field and for recreational retro programming.

  • @MichaelLenz1
    @MichaelLenz1 11 หลายเดือนก่อน

    Repton Man!

  • @SpeccyMan
    @SpeccyMan 2 ปีที่แล้ว

    The Sinclair ZX Spectrum is a British computer so it really should be pronounced the British way, phonetically: ZED-EXX SPEK-TRUM. 😉

  • @siriokds
    @siriokds 2 ปีที่แล้ว

    Hi, why you used diodes on keys? Are they necessary? In my ancient computers I never saw it. Usually I see the row/columns traces without anything else. What's the part code of these diodes?

    • @solisted
      @solisted  2 ปีที่แล้ว

      Hi! Diodes in keyboard matrix are used to prevent so called "phantom" key presses when invoking multiple key combinations. Old keyboards were without diodes to reduce cost and limited in key combinations keyboard controller can detect without an error. Usually, standard 1N4148 fast switching general purpose diodes are used.

  • @YanestraAgain
    @YanestraAgain 2 ปีที่แล้ว

    Looks beautiful but has problematic details. I think this is more a proof of your skills as an engineer, because probably nobody wants to use this device - for what anyway?

    • @solisted
      @solisted  2 ปีที่แล้ว

      Thank you! I made it for myself, I want this device to make software for it. Basically, I took ZX Spectrum 48K as an inspiration and improved everything I wanted to be improved in it. Higher clock, quircky VRAM layout, interrupt mode 2 support, RS232 serial port etc. Could you please elaborate more on problematic details you mentioned?

  • @MattKasdorf
    @MattKasdorf ปีที่แล้ว

    The 2 PCBs are listed for £24, but no shipping outside the UK 😔
    What is the total parts cost?

    • @solisted
      @solisted  ปีที่แล้ว

      Hi! These boards made by the channel viewer. He's got extra, bc of the minimum order, so decided to sell the rest. These are very easy to manufacture using Gerbers provided on the projects github.
      I did not compile complete BOM yet, please check my web site for more info.

  • @Nichetronix
    @Nichetronix 2 ปีที่แล้ว +1

    Very nice work! Thanks for sharing it with us.

    • @solisted
      @solisted  2 ปีที่แล้ว

      Thank you, Steve!

  • @apojoga
    @apojoga ปีที่แล้ว

    Unbelievable how fast it is compared to a modern computer.

    • @solisted
      @solisted  ปีที่แล้ว +1

      Thank you! This is because all software is written in an assembly language and directly accessing computer hardware. Zero abstraction layers between end-user software and computer hardware makes it feel really snappy.

  • @cyberlord64
    @cyberlord64 2 ปีที่แล้ว

    It's not a proper computer without a floppy drive

    • @solisted
      @solisted  2 ปีที่แล้ว +1

      I plan to make an external floppy drive or storage card drive that is going to be connected to a serial port of the computer. Like on 8-bit Atari computers.

  • @m00iwi00m
    @m00iwi00m ปีที่แล้ว

    Good job! Is perfect if it able to run the CP/M system.😀

    • @solisted
      @solisted  ปีที่แล้ว

      Thank you!

  • @charliesybert2683
    @charliesybert2683 9 หลายเดือนก่อน

    Is this a kit i can buy from you?

    • @solisted
      @solisted  7 หลายเดือนก่อน

      No, there is no kit available

  • @abyssal-space65
    @abyssal-space65 7 หลายเดือนก่อน

    Are sources for CPLD available somewhere? or it's binary only?

    • @solisted
      @solisted  7 หลายเดือนก่อน

      Did not decide yet if it’s a good idea to publish ROM and CPLD sources, bc it could lead to platform fragmentation. But on the other hand it’s not so difficult to write other variants of the video code and ROM for this computer, so fragmentation is inevitable if this computer becomes popular among DIY builders.

    • @abyssal-space65
      @abyssal-space65 7 หลายเดือนก่อน

      @@solisted I have wrote verilog for my breadboard computer FPGA, but it's altera one, yours interesting that it's running on Atmel CPLD, but at the same time requires expensive programmer cable. Without looking at code and how easy that is I'm not sure I want to invest in that cable :D My take on this, if you make your schematic/pcb and etc open source, then it makes sense to make programming of it open source too, otherwise it's closed system and not sure you can even call that platform. Atmel is interesting for me that it's 5V compatible and doesn't require a bunch of level shifting to 3v3 fpga's. Anyway, your project is really cool. If you decide to share source code for cpld I would gladly read/learn something from it :)

  • @russianvideovlogguy
    @russianvideovlogguy 2 ปีที่แล้ว

    This is very nice man! Are you a “I share my gerbers kind of guy or uh you know 😉” I’d love to try this project!

    • @solisted
      @solisted  2 ปีที่แล้ว

      Thank you, Atari Warrior! Awesome channel name! :) I did share gerbers and everything on my GitHub page, it's in the description of the video.

  • @1337Shockwav3
    @1337Shockwav3 8 หลายเดือนก่อน

    I've had my share with moderately complex PCB routing, but the top layer looks extremely tidy. Well done :)
    Also interesting choice with the AY-3-8913, which makes perfect sense at it's usually exclusively used as a sound generator - yet that variant being quite unknown til a few years ago.

    • @solisted
      @solisted  7 หลายเดือนก่อน

      Thank you!

  • @Ty_Mathieson
    @Ty_Mathieson ปีที่แล้ว

    Very nice work.

    • @solisted
      @solisted  ปีที่แล้ว

      Thank you, Tyler!

  • @dazealex
    @dazealex ปีที่แล้ว

    Very cool. I'd buy it. Wish it had HDMI though.

    • @solisted
      @solisted  ปีที่แล้ว +1

      Thank you! This project was aimed to be DIY-friendly that requires minimum soldering skills to assemble it at home. HDMI converter and DAC ICs are available only in SMD packages, so I decided to go with VGA output because this video signal is very easy to generate, and it does not require any additional ICs, just simple R2R resistor DAC and couple of buffers.

    • @dazealex
      @dazealex ปีที่แล้ว

      @@solisted Gotcha. You should sell this or provide kits etc. Once you have the software side more fleshed out. I'd love to write simple games on this or run BASIC like the old times.

  • @madson-web
    @madson-web ปีที่แล้ว

    What a beauty!

    • @solisted
      @solisted  ปีที่แล้ว

      Thank you!

  • @005AGIMA
    @005AGIMA 2 ปีที่แล้ว

    This looks amazing Ivan. Is there an email address I can contact you on to ask some questions re referencing this video in a story?

    • @solisted
      @solisted  2 ปีที่แล้ว

      Thank you! I published my email on the channel about page.

  • @ronin1303
    @ronin1303 5 หลายเดือนก่อน

    All I can hear is, Uhh uhh uhh, speak slow and consistent

    • @solisted
      @solisted  5 หลายเดือนก่อน

      Sorry for that, I’m not a professional TH-cam narrator.

    • @ronin1303
      @ronin1303 5 หลายเดือนก่อน

      @@solisted intersting content tho

  • @bestintentions6089
    @bestintentions6089 ปีที่แล้ว

    very nice!

    • @solisted
      @solisted  ปีที่แล้ว

      Thank you!

  • @jyotsnach9544
    @jyotsnach9544 2 ปีที่แล้ว

    Hello Ivan how are you doing?

    • @solisted
      @solisted  2 ปีที่แล้ว

      Hi Jyotsna! Doing great! How are you?

    • @jyotsnach9544
      @jyotsnach9544 2 ปีที่แล้ว

      @@solisted doing good, wanted to connect in LinkedIn but I couldn't find you, so checked online and found your channel.

  • @willofirony
    @willofirony 2 ปีที่แล้ว

    Well that certainly kicked the ass of my old Tandy (Radio Shack) Model 1. I am also impressed by the tile editor. In my experiance tools written for a particular purpose, tend to really do the job,. I would be interested in the ROM soft/firmware. Do share if and when you get the opportunity. I look forward to you sharing your work the "IDE" you have planned. I am interested in you choosing BASIC rather than python; were you trying to keep the retro vibe? Well done for what you have acheived. Now, where do they put the subscribe button on this thing?

    • @solisted
      @solisted  2 ปีที่แล้ว

      Thank you! This project is 50% nostalgia driven in any aspect - hardware and software, so BASIC is a choice for programming language. Maybe, with built-in compiler to add some juice :)

  • @gregdee9085
    @gregdee9085 2 ปีที่แล้ว

    Duuude! You're a maniac! and i mean that in the best way..ahaha. Sheesh.. reeally impressive mountain of work u did. Z80 Timex/Sinclair was also my 1st computer as a kid and soldered it as a kit..wrote a defenders game on it but also did digital art (unknowingly) for my awesome gf at the time.... Thx for the blast from the late 70s past ...really nice feeling it gave me. Big up yourself as we say over here!

    • @solisted
      @solisted  2 ปีที่แล้ว

      Thank you, Greg!

  • @greenaum
    @greenaum 2 ปีที่แล้ว

    Also... How is the memory layout of your screen RAM? The Spectrum used a really weird system of thirds, then arranged in a very odd way within those, where most 8-bit computers just had a flat, linear bitmap. You mention something about thirds in the video, is that what you mean? I know Sinclair claimed their design was easier to interface with a TV, and wasn't necessarily too bad to work out the location of a pixel, or 8 of them, but still I'm pretty sure it slowed things down, a bigger problem when your sprites are all in software. Hey, how about some sprites in your design?
    Does it have to have a separate chip for it's graphics RAM? Couldn't you just share the main memory? You just need a system of priority for when the graphics and CPU chips clash, have the graphics chip halt the Z80 if that happens. The Z80 spends a lot of cycles doing stuff other than RAM reading, you should generally have lots of time. How much slower did stuff run, in the contended 16K vs the upper 32K? Can't be too bad or else the 16K model wouldn't have been practical. Also you only need access 2 bytes per 8 pixels, or even less, if you cache the atttribute byte a line at a time, say. Would need 32 bytes and reduce RAM access from 2 bytes per 8 pixels, to 1.125 bytes, effectively.
    Oh, I love fantasy computer design! I really should get more into electronics when I have the space available. I can manage Arduino OK, and C on proper computers, a bit of Verilog can't be _too_ hard.

    • @solisted
      @solisted  2 ปีที่แล้ว

      Hi! I implemented linear memory layout for the monochrome pixel buffer. I went with asynchronous dual port memory design for the video circuit to keep it compact and simple. I did not have enough experience to quickly come up with acceptable solution for shared video memory access and did not want to spend too much time on it.
      CPLD I used in the video circuit has just 128 macrocells and not suited for complex video cicruit implementations with tiles and sprites. Simple pixel shifter is easy to implement and fit, but more complex stuff would require much-much more logic gates and flip-flops than CPLDs of this class have.

  • @djthashock
    @djthashock 2 ปีที่แล้ว

    Really nice ASMR Voice!! And your Computer is Great! I Love that thing.

    • @solisted
      @solisted  2 ปีที่แล้ว

      Thank you!

  • @robertdutcher8081
    @robertdutcher8081 ปีที่แล้ว

    If this had a cart port for expansion and roms, it would be straight out of the 80's. Amazing job.

    • @solisted
      @solisted  ปีที่แล้ว

      Thank you!

  • @sublimemauser5904
    @sublimemauser5904 2 ปีที่แล้ว

    Very interesting project, kudos, perhaps in a next revision an edge connector with all the data and address lines of CPU for expansion?

    • @solisted
      @solisted  2 ปีที่แล้ว

      Thank you! I wanted to make one, but also I needed to keep system compact and stable.
      The choice was - make unbuffered card edge connector with all bus signals exposed and risk having some peripheral devices drawing to much power to cause stability issues or increase mainboard footprint and add buffers between system bus and connector. Did not like both variants.
      I like the way 8-bit Atari periphery worked - through daisy chained serial port. That's I want to try, since SIO/0 IC has two serial ports and both a available on the back on the case via compact RG45 connector.

  • @homeopathicfossil-fuels4789
    @homeopathicfossil-fuels4789 10 หลายเดือนก่อน

    That's the sweetest motherboard I have seen in a long while, super clean design!

    • @solisted
      @solisted  10 หลายเดือนก่อน +1

      Thank you!

  • @cristianstoica4544
    @cristianstoica4544 ปีที่แล้ว

    Absolutely lovely. Beautiful format and layout. Thanks for sharing it with us!

    • @solisted
      @solisted  ปีที่แล้ว

      Thank you!

  • @rosmianto
    @rosmianto 2 ปีที่แล้ว

    Oooh, I know this. It's the precursor of Raspberry Pi 400 haha

    • @solisted
      @solisted  2 ปีที่แล้ว

      I would say ancestor.

  • @AndyGraceMedia
    @AndyGraceMedia ปีที่แล้ว

    This is a thing of beauty. Congrats, amazing work!

    • @solisted
      @solisted  ปีที่แล้ว

      Thank you, Andy!

  • @marko.p.radojcic
    @marko.p.radojcic 7 หลายเดือนก่อน

    You've convinced me. Now take my money :)

    • @marko.p.radojcic
      @marko.p.radojcic 7 หลายเดือนก่อน

      Why 7805 voltage regulator ? It does dissipate heat, there are more modern versions. They are pin compatible but have almost zero heat emission. I have one in my Spectrum.

    • @marko.p.radojcic
      @marko.p.radojcic 7 หลายเดือนก่อน

      It's ready for an OS.

    • @solisted
      @solisted  7 หลายเดือนก่อน

      Hi! I’m not very experienced in electronics design. This is my first relatively complex, serious project. Could you please suggest some parts I can use for voltage regulation instead of 7805?

    • @Bob-1802
      @Bob-1802 6 หลายเดือนก่อน

      @@solistedThe MC34063 is an old chip that I used in many designs because it is cheap and available.

  • @lanceharvie
    @lanceharvie 2 ปีที่แล้ว

    Nostalgia for me since my first year project at Uni was based on a z80

    • @solisted
      @solisted  2 ปีที่แล้ว

      Yes, Z80 was an obvious choice for my first build for the same reason :) Not 6502, not 8088 :)

  • @ВалерийМандругин
    @ВалерийМандругин 2 ปีที่แล้ว

    All your PCBs look so neat and clean! By looking at this I'm getting aesthetic pleasure even if I don't understand how it works.

    • @solisted
      @solisted  2 ปีที่แล้ว

      Thank you!

  • @greggv8
    @greggv8 2 ปีที่แล้ว

    Does it have a true bitmap mode where every pixel can be any color?

    • @solisted
      @solisted  2 ปีที่แล้ว

      No, 8x8 area of pixels can have distinct foreground color when pixel is lit and background color when it's not in 1bpp 256x192 bitmap. Color is controlled by a separate 768-byte attribute area in VRAM.

  • @AutoFirePad
    @AutoFirePad 2 ปีที่แล้ว

    I was expecting OPQA but WASD is ok too. Thanks for the video!

    • @solisted
      @solisted  2 ปีที่แล้ว +1

      Thank you! Also Atari joystick works, I just forgot to show it in the video.

  • @Omabatfartsbruh
    @Omabatfartsbruh 2 ปีที่แล้ว

    can it run missile command

    • @solisted
      @solisted  2 ปีที่แล้ว

      Game needs to be ported to this computer.

  • @beforth
    @beforth 2 ปีที่แล้ว

    Impressive computer, looks like a well finished product.

    • @solisted
      @solisted  2 ปีที่แล้ว

      Thank you!

  • @devcybiko
    @devcybiko 2 ปีที่แล้ว

    This is a very elegant design. Congratulations

    • @solisted
      @solisted  2 ปีที่แล้ว

      Thank you, Gregory!

  • @mheermance
    @mheermance 2 ปีที่แล้ว

    Great work. It must have taken a lot of effort.

    • @solisted
      @solisted  2 ปีที่แล้ว +1

      Thank you! Yes, a lot of learning, a lot of trial and error.

  • @TheDesignDevil
    @TheDesignDevil 2 ปีที่แล้ว

    Very interesting, Good explanaition and great project! Where did you get the Keyboard from?

    • @solisted
      @solisted  2 ปีที่แล้ว +3

      Thank you, Thomas! Keycaps for the keyboard are ordered separately from WASD Keyboards. You can design your own keycaps on their web site and they will manufacture them for you. PCB for the keyboard is DIY, made in KiCad and manufactured by JLCPCB (like the mainboard). Cherry MX linear switches are ordered from mouser.com. Everything is DIY, hand-soldered.

    • @joefish6091
      @joefish6091 2 ปีที่แล้ว

      @@solisted useful information, thsts the biggest hurdle ie problem with resurrecting ZX81 or Spectrum, their standard keyboards are yuck. and there no third party around these days making and selling complete ZX keyboards. a mere 35 years late lol.
      I haver an intact ZX81 , no idea if it wotks, best to keep it as a display item methinks.

  • @savagecircuits
    @savagecircuits 2 ปีที่แล้ว

    Where did you get the actual keyboard from?

    • @solisted
      @solisted  2 ปีที่แล้ว +1

      It's custom made keyboard - classic diode matrix circuit. I made custom PCB, soldered linear Cherry MX switches.

    • @savagecircuits
      @savagecircuits 2 ปีที่แล้ว

      @@solisted Very nice! I looked back at the video and saw where you mentioned it. I must have missed that the first pass through.

    • @johnwilliams7999
      @johnwilliams7999 ปีที่แล้ว

      Is it ps/2 keyboard? Also how did u connect the keyboard

    • @solisted
      @solisted  ปีที่แล้ว

      No, it does not use any particular protocol. Keyboard is implemented as a simple 8x8 matrix with diodes directly connected to 8 outputs and 8 inputs of the peripheral IC (Z80 PIO). Key matrix scanning and translation to scan codes is implemented in software.

    • @solisted
      @solisted  ปีที่แล้ว +1

      Initial prototype had PS/2 keyboard input and AVR microcontroller that translated PS/2 data stream into serial. Then serial data was fed into the Z80 SIO peripheral IC. After some game programming, I noticed that protocol and translation introduces noticeable key stroke latency that ruins game experience and redid keyboard implementation like described in the previous reply.

  • @ccoloured
    @ccoloured 2 ปีที่แล้ว

    im your 169th sub ;)

    • @solisted
      @solisted  2 ปีที่แล้ว

      Thank you! :)

  • @tobiasfunke8990
    @tobiasfunke8990 2 ปีที่แล้ว

    Now... How to get CP/M running on it... :p

    • @solisted
      @solisted  2 ปีที่แล้ว +1

      For CP/M low memory area should be swappable between ROM and shadow RAM if I remember correctly. This is not implemented.