The modern 8-bit arms race is on!

Ғылым және технология

The 'prove me wrong' in the old title is not a challenge. I seriously wish that I'm wrong on this.
This video is named a 'HEC Talk', but in the end all HEC-related parts has been edited out due to time constraints. I have edited them into a separate video and put it on my Patreon page.
Patreon Link: / andy18650

Пікірлер: 52

  • @bobweiram6321
    @bobweiram63216 ай бұрын

    Sounds more like a backwards running race, but I get the idea of 8-bit computing. It's a combination of the nostalgia and the aesthetic experience. Unlike today's ultra-realistic graphics and sound, older 8-bit hardware left a lot of room for imagination.

  • @Wavicle
    @Wavicle5 ай бұрын

    FX was not a response to Agon. It was a passion project by one person in the community on Discord; the same person who created the Wolfenstein 3D and STNICCC demos. What exists are helpers that must be driven by the CPU; VERA FX cannot autonomously draw a line. The point of reference for "easy to use" is the 8-bit computers of the 80s. Graphics on the C64 or Apple IIe were very difficult and a large part of that difficulty was caused by the lack of a bitmapped graphics mode and very rudimentary support for sprites. Making anything that looked decent on those computers required more than a 50 page tutorial. You can write a program that draws individually colored pixels on the screen on the X16 in a few dozen lines of assembly and expand that to something that draws an image in a dozen more.

  • @paulscottrobson

    @paulscottrobson

    Ай бұрын

    It was a response to the X16 being paint dryingly slow at manipulating bitmaps in other than vertical and horizontal lines.

  • @absurdengineering
    @absurdengineering4 ай бұрын

    I’ve been pondering about it a while now and I concluded that if you can’t build it with period-correct chips, or modern direct equivalents (eg a cmos variant instead of nmos), then it probably isn’t very retro in hardware terms. An ESP32 alone can do everything a home computer in the 80s could do. So it sort of becomes as you said an emulation game. You want a Z80 computer, it should use a CMOS or NMOS Z80 in 40-pin DIP. Graphics acceleration for 3D needs lookup tables for multiplications and discrete logic to run the pipeline. That’s the only way you could do it back then, and it’s the memory and multi layer PCBs that would cost a fortune. Today the PCBs are comparatively free, and retro memory is plentiful - whether old stock or recently manufactured. A parallel SRAM never goes out of style :) Texas Instruments still makes the complete CD4000 logic series in DIP. Those are excellent low power alternatives to LSI TTL logic. Sure you may end up rubbing the logic at 12V and use level translation to make it fast, but that’s exactly how it would have been done in mid-70s. Coincidentally, the 4000 logic, Z80, and 6502 are the only chips you could continuously buy in DIP from the day they were introduced to today - still made! Renesas still makes some DIP SRAM IIRC, or there’s another company that does.

  • @absurdengineering
    @absurdengineering4 ай бұрын

    About the documentation: to develop groundbreaking graphics on Z80 and 6502 you needed to have hundreds of pages worth of hard-earned knowledge in your head. What you needed to develop on those platforms went way, way beyond what was found in the datasheets. All the techniques found by various developers over time - and some still being found, see eg C64 demo scene - were what made impressive graphics and audio possible. That someone actually documented it and shows how to do it in 60 pages or whatever - man, that’s progress. Takes way more pages to do equivalent graphics on the platforms from that era. Basically, the documentation you consider long is really short and concise. Try doing the same stuff from scratch on a Z80 with bitmap graphics and nothing else. Documenting it would take way more than 60 pages. I am in full agreement about the arms race being silly. Once you allow modern-spec silicon, it’s not retro anymore IMHO, with a few reasonable exceptions. For example using larger SRAM to hold everything and an 8-pin SPI eeprom + a small bootloader prom is way more practical than parallel EPROMs. An SPI bootloader for a Z80 fits in a single GAL. Yes the GAL can emulate the prom with enough code to load 256 bytes via SPI into ram and go from there. No need for TTL proms for that :)

  • @qwertykeyboard5901

    @qwertykeyboard5901

    3 ай бұрын

    GALs and programmable logic is how I plan on making the QK-1 a reality. For me, the goal is cheapness. Not entirely sold on serial EEPROMs though. Parallel mask roms can be really cheap, and the bare die variants are even cheaper. It'll also be much simpler, which could end up being cheaper. Running 20 odd lines on a die/pcb might be cheaper then whatever madness is required to bootstrap a Z80 to copy data from a 24/25 series rom into ram.

  • @jowniemand2514
    @jowniemand25143 ай бұрын

    Ever hear of James Sharman? HE is the winner of this race!

  • @andyhu9542

    @andyhu9542

    3 ай бұрын

    I wouldn't count him as THE winner, as he is on a slightly different track. He's taken the prize for best 8-bit TTL CPU though. (I'm in his discord channel so I have clearly heard of him!)

  • @protonjinx
    @protonjinx6 ай бұрын

    the 8-bit era was about learning the hardware in order to do "the impossible", hardware acceleration spoils all that. the vera should be replaced with ttl chips, otherwise it wil just end up getting hacked/reprogrammed to do "the next big thing"

  • @andyhu9542

    @andyhu9542

    6 ай бұрын

    I actually don't think this is the right way to go. Nearly every computer of the time (except for Apple II and early Commodore PET) uses a custom video chip. The VERA is there to even the playing field. If the team don't use an FPGA, then they would be in a disadvantage even when compared to old systems. What should be done is disabling the in-application programming feature. Without that feature, the VERA is functionally just another VIC or PPU.

  • @xero110
    @xero1106 ай бұрын

    Which will have better software support? X-16, seems to be the winner here. It's the same story with Raspberry Pi clones. I have an Orange Pi 5+. A device clearly much faster vs even a Pi 5, but my Orange Pi isn't even close to the usability of a Raspberry PI.

  • @andyhu9542

    @andyhu9542

    6 ай бұрын

    Haha, I have an Orange Pi 5 too! Don't worry, Rockchip SOCs are used in a wide range of products (Android TV boxes, etc.). People will start to hack those devices and reverse-engineering efforts will start rolling. I don't see BCM2712 used in anything other than the Pi5 and Broadcom won't open up its documentation for the chip. Overall, I think the Orange Pi actually has better potential to be a well-supported platform.

  • @columpaget5167
    @columpaget51672 ай бұрын

    really interesting take this. I think this illustrates a general issue with culture. Any cultural subgroup doing a thing tends to believe that getting more people into the thing/hobby/genre will strengthen it. But achieving that often means compromising the original intent of the thing so much, that it often ceases to be the thing. I feel we see this in the way that open source software has shifted from being software that individuals can understand and modify, to being "open" software released by corporations that is far too complex and bloaty for most programmers to work with unless they operate in large teams. Thus there's been a quiet move from 'free as in freedom' to 'free as in beer' where most people's interaction with free software is simply getting a no-cost distro of software from redhat or canonical and never touching the code inside it. I'm not saying that's a bad thing, I'm just saying the original intent of the thing has been lost, and that's mostly down to market forces and the push to 'mainstream audiences' or 'linux on the desktop'. Similarly we've seen a move of the RPi away from being an educational or hobbyist device, to being a low-cost platform for businesses, as shown by the Pi Foundations explicit focus on supplying Pi-based businesses first when Pis became rare over covid.

  • @andyhu9542

    @andyhu9542

    2 ай бұрын

    I think you are mixing several issues together. First, we have diversification. This has been identified as one of the key issues with the retro community when I design the computers (and watched others design their own). Some people only accept old stock parts, some will take a modern 6502 or Z80 if it means the CPU runs faster. A lot of people reject FPGAs while others say it's the future. Then there is commercialization. To be honest it's not that bad. Open-source is not the purpose, it's the tool. It acts as a counterweight to the hyper greedy ways of doing business. As long as the commercial distributers act in an honest way, it's fine. If they start becoming 'big techy', the community should exercise its right to take back the control of the project. That's why clever choice of license is important.

  • @h7qvi
    @h7qvi6 ай бұрын

    A nice bit of philosophy Andy.H ❤

  • @saycrain
    @saycrain3 ай бұрын

    I remember the 8-bit guy saying that the x16 wouldn't have focus on having the graphics power of even a vga card from the 90's. but hearing about 3d rasterization in the scope of the x16 doesn't sound right at all with that original view of the project if I want something like that, I'll use something with a stonger cpu, maybe the snes with the super fx chip

  • @andyhu9542

    @andyhu9542

    3 ай бұрын

    Indeed.

  • @lpcamargo
    @lpcamargo6 ай бұрын

    It is going to be a battle of ecosystems. Who's got the best libraries, the best example code, the best toolchains. Most important of all, at the end of the day, will be who has the most and the best games, as a result. That's what most people that buys these computers will want to do with them, most of the time.

  • @andyhu9542

    @andyhu9542

    6 ай бұрын

    Well, the topic of this video is that the machine with best graphics and sound will get best support, because game developers can spend a lot of time studying the hardware while casual enthusiasts don't have the time to. But aren't 'casual developers' who theX16 is made for?

  • @JohnnyWednesday
    @JohnnyWednesday6 ай бұрын

    You have the knowledge to build the HEC and for some far future demo? there's an 8-bit OS for the Z-80 called SymbOS - it already has multi-tasking - you could give it true memory protection and I'm sure the devs would help you! Don't worry about building some perfect device with all the dream features - if anything? code a simulator for it first - get some form of memory protected functionality working in code - it'll help inspire your next steps!

  • @andyhu9542

    @andyhu9542

    6 ай бұрын

    SymbOS is already on the list of stuff that I will get running on the HEC. However, coding a simulator is far more difficult than what you may expect. Because when you are building real hardware, the chips are black boxes, and the behavior is by definition authentic. When coding a simulator, you have to not only model the entire internal behavior, but also compare it with the real thing to make sure that software written for the simulator will run on real hardware.

  • @JohnnyWednesday

    @JohnnyWednesday

    6 ай бұрын

    @@andyhu9542 - There are existing z-80 emulator implementations in both high level and pin compatible forms - the idea is to make it function like the HEC would, from a machine code perspective - assuming a working hardware HEC with all the bugs worked out - that code should run - it'll have to be written anyway and maybe the code have a bug that is hard to interpret given it's testing the hardware - far easier to find on an emulator! but I understand it isn't trivial - I look forward to seeing your next steps!

  • @JohnnyWednesday

    @JohnnyWednesday

    6 ай бұрын

    @@andyhu9542 - oh! and the reason for all of these modern 8-bit systems using more powerful hardware for the graphics is that there's no in-production chip that's suitable for the way real-time 8bit micros addressed the graphics - they can't get the chips for mass production - hence the FPGAs and microcontrollers. (but I agree they add too much power and they no longer classify as 8bit era machines) There are actually graphics VDPs for flat panel displays, with in-hardware drawing functions and serial interfaces with optional, faster 8bit parallel (MCU?) interfaces for uploading data. They're the kind of chip that's usually built into a screen and can be drawn to with serial commands (see the adafruit displays for microcontrollers for examples) There are about 5 or so different chips - many have built in memory for a framebuffer - they're perfect for the task! but alas - no RGB, no HDMI - they're for digital flat panels only. I'll try and find some product codes if you need them. My advice to you however would be to ignore any mass production concerns (For now) and find a suitable video chip in an 8-bit micro that will let you get a display working - perhaps an MSX2 as they're very plentiful - or a broken Amstrad (simplifying symbos porting)

  • @samsungtelevision695
    @samsungtelevision6953 ай бұрын

    i cant believe literally nobody is commenting that your hair is cute 🥹

  • @Maxjoker98
    @Maxjoker986 ай бұрын

    Haha, when I see the ESP32 on such boards I also question at what point one is just creating a software emulator with extra steps. The ESP32 itself can actually run noMMU Linux if you give it enough PSRAM. It could certainly emulate older 8-bit systems in real time. The ESP32 S3 even has all sorts of vector instructions, and all ESPs can perform DMA operations to some GPIO pins. You could certainly hook up some 8-bit peripherals to it's GPIOs, and skip the entire "8-bit" CPU. I'm not even against that sort of thing - It's just not related to retro hardware at that point. Programming computers with severe limitations is a fun exercise, but when you can always just skip the limitations it feels kind of pointless.

  • @aqualung2000

    @aqualung2000

    6 ай бұрын

    Totally agree. I'm exactly the type of programmer these projects should want to be luring in to develop for, but literally none of them bare any resemblance to what 8-bit computers were actually like. Too much RAM, too many MHz, too powerful graphics.... Why can't someone make a retro machine that actually matches the specs of the real thing?

  • @BastetFurry

    @BastetFurry

    6 ай бұрын

    The main problem is that you can't get graphic chips anymore and a RP2040 or an ESP32 is the cheapest solution one can do at the moment. Some 8k FPGA could also do, but most people aren't very good with them and can do way more magic with a beefy but cheap micro. Besides, having a hardware Z80 frees up the micro to be able to do more magic stuff.

  • @andyhu9542

    @andyhu9542

    6 ай бұрын

    I can answer that: first there are retro motherboard remakes (for example, VIC-2020 or EVO64). And then someone pops up and make something that 'match the specs' (graphics, sound, etc.) but it's a new design. At that point why don't people just buy the motherboard remakes (that will run old games)?

  • @andyhu9542

    @andyhu9542

    6 ай бұрын

    Technically, that's not true. If you consider the board cost, the cheapest option is the Pi zero 2 W. It will give you Wi-Fi and storage and saves a VGA to HDMI converter if you want HDMI (which most people do according to the comments). It will also give you a ton of GPIO and a USB host. And... it has more performance to emulate both the Z80/6502 and graphics with a LOT to spare. I'm not arguing here. I'm just pointing out 'see? It's all a slippery slope'.

  • @qwertykeyboard5901
    @qwertykeyboard59013 ай бұрын

    Meanwhile I want to make a Z80 microprocessor trainer and crush it all down to a chip/dollar store calculator lol. ("QK-1", and it's on my github). A Z80 core running at ~300Khz... Painful, but my goal is absolute cost reduction!

  • @johnwilliams7999
    @johnwilliams7999Ай бұрын

    These machines are competing with the likes of PICO-8/Picotron and tic-80 when to be honest are much easier to make games on. Even Makecode you can make retro looking games very easily for kids etc.... I dont think Basic is that straightforward to be honest and line numbers really get in the way of learning.

  • @davidlloyd1526
    @davidlloyd15266 ай бұрын

    The problem with these "new" retro machines IMO is that they aren't modern hardware (like the Raspberry Pi) and they aren't what you'd have back in the day (C64/NES). So I'm not sure what they are for. If you want to code for a retro computer, pick one that actually existed in the 80s/90s. Otherwise, you can just code for modern Linux and Vulkan (and TBH the "retro computers are more accessible/friendly/simple" theme is truly, truly deluded).

  • @andyhu9542

    @andyhu9542

    6 ай бұрын

    Some people (including me) really don't like the idea of coding based on a black box. I mean, you can argue that the circuit of the 8-bit systems is a black box, but even that is way simpler than Linux or Vulkan (think about this, the VERA probably has less lines of HDL code than Linux kernel has C. I know it's not a 1-to-1 comparison, but it demonstrates the complexity of things).

  • @dagobertkrikelin1587
    @dagobertkrikelin15876 ай бұрын

    Yes, when I see these new boards with classic CPUs I get disappointed when they have FPGAs and "co-processors". I want the pure retro experience with its limitations but also transparency. The CPU becomes a servant to the "GPU", not the other way around. Guess I'll have to roll my own retro board...

  • @scaramouche3061

    @scaramouche3061

    6 ай бұрын

    What about EFM8?

  • @dagobertkrikelin1587

    @dagobertkrikelin1587

    6 ай бұрын

    @@scaramouche3061 Don't get me wrong I use all sorts of modern MCU for work and hobby, but if (when) I'm building a retro board it will be as period correct as possible. I wrote my first program in 1979 by entering instructions with DIP-switches on a 6800 system at school - those were the times!

  • @kippie80

    @kippie80

    6 ай бұрын

    My happy place is now ARMV6. It is new and old. Old from acorn, new like RP2040.

  • @EverettVinzant
    @EverettVinzant6 ай бұрын

    No, it doesn't work that way. I don't have to prove you wrong. You're making a claim. YOU PROVE your claim right. I only showed up to post this because why would I bother with your video when you got something so significant wrong, before I even pressed play?

  • @andyhu9542

    @andyhu9542

    6 ай бұрын

    I proved my claim right in the video, but my claim is that one of my favorite projects is seriously flawed.

  • @andyhu9542

    @andyhu9542

    6 ай бұрын

    I proved my claim right in the video, but my claim is that one of my favorite projects is seriously flawed.

  • @EverettVinzant

    @EverettVinzant

    6 ай бұрын

    @@andyhu9542 I have no reason to believe that is not the case. Let’s assume you did prove it. By telling people they are required to prove you wrong it sounds like what Steven Crowder does… Decide something and then demand you prove him wrong. Maybe rename your video something like, “How I prove that …” instead of “prove me wrong.” This way you’re not starting off on the wrong foot.

  • @andyhu9542

    @andyhu9542

    6 ай бұрын

    @@EverettVinzant Advice accepted. I actually addressed this in the description, but it's clear that not a lot of people read it. I don't know who Steven Crowder is, nor do I know his practices. I'm just sad that one of my favorite projects lost its original vision under pressure of financial return. Therefore, I wish someone on the internet can point out something I missed.

  • @EverettVinzant

    @EverettVinzant

    6 ай бұрын

    @@andyhu9542 I’ll watch the video. If I happen to identify anything you missed I’ll point out (without malice). If I can’t think of anything I hope people smarter than I are able to. I wish you well in your future videos.

  • @youcantata
    @youcantata6 ай бұрын

    Choosing 8 bit CPU is foolish choice for any modern implementation. 32 bit controller is as cheap as 8 bit core and way faster. 32 bit ARM is cheaper, faster and versatile, more variety, availability, better development environment, so easy to develop program on. 8 bit has only one advantage: compatibility with old 8 bit program.

  • @protonjinx

    @protonjinx

    6 ай бұрын

    the whole concept seems beyond your understanding. im guessing you didnt live through the 8-bit era.

  • @andyhu9542

    @andyhu9542

    6 ай бұрын

    Guess what? I was born in 2002, almost the same time as x86_64 and 10 years after Alpha 21064. I'm a native resident of the 64-bit era but it doesn't stop me from loving 8-bit systems. The real issue with 32-bit microcontrollers is that they have way too many features that are totally unnecessary for a game system, while bloating the manual and making it more intimidating for beginners.

  • @absurdengineering

    @absurdengineering

    4 ай бұрын

    @@andyhu9542It may be intimidating but emulating some of the modern features on old hardware is lots of hard work, and there are no manuals. You have to read other people’s code, forum posts, and learn it. You can start knowing very little and with tiny manuals but to fully exploit the retro platforms takes a lot of software engineering effort. Very much modern software engineering facilitated by modern PCs, only the final code runs on the retro hardware. Developing for Z80 on a Z80 system, vs say in a Unix box, was a grueling experience. I did both and doing cross development from VAX, or old Bell Labs Unix, was a breeze vs being confined to what you had on a CP/M system. There’s a reason the C64 games comparatively sucked in the 1980s in terms of graphics and sound vs what you can do with the same hardware today. You can only do it because you can develop on a PC, where you can throw together various tools using eg Python and so on. Even on the best BASIC systems of the 80s getting the productivity of modern MicroPython was not possible. If you had the mind for it, FORTH could get you a long way as far as high level languages went. But BASIC environment was crippling for productivity and that’s the truth. If you were lucky you had access to an ALTO with Smalltalk on it, and that was a dev machine of one’s dreams. Developing graphical software for 8-bit targets on an ALTO was an otherworldly experience - more in common with how it is today than circa 1979. So, a lot of the extra hardware features are not necessary on an 8-bit system. A more powerful dev experience that a PC gives you can work around a lot of the hardware shortcomings. Especially when you can throw a lot of bytes at the problem. Modern C64 demos take multiple disk sides - a size vs speed tradeoff.

Келесі