Bootstrapping a Minimal CPU System into Self-Improvement Capability - Simplest Usable PC #8

Поділитися
Вставка
  • Опубліковано 27 жов 2024

КОМЕНТАРІ • 40

  • @coenraadloubser5768
    @coenraadloubser5768 3 роки тому +3

    Wow! I finally understand computers. 0:58 ... this has been the hole in my understanding for so long. Now I could in theory build a computer from scratch too... although yours is just so elegant, I'd have to be stupid not to copy it.

  • @adamhuk447
    @adamhuk447 3 роки тому +9

    Wow, the progress you are making is really impressive. Thanks for sharing. I'm wiring the RAM to the BE6502 this weekend and then I'll hop on the minimal train :) Cheers!

    • @slu467
      @slu467  3 роки тому

      Good to hear that you are going to try a "Minimal" build, too! Let me know when you start... Cheers!

  • @stupossibleify
    @stupossibleify 3 роки тому +3

    This is the perfect video for a topic I've always been intrigued by: the bootloading process. It's like skins of an onion

    • @slu467
      @slu467  3 роки тому +3

      I am kind of fascinated by this, too. Especially when being pushed to on a "fresh CPU" come up with every step by yourself :-)

  • @NesHacker
    @NesHacker 3 роки тому +1

    Super cool stuff. I love to see this low level bootstrap programming, and the explanation is was clear and well done!

    • @slu467
      @slu467  3 роки тому

      Thanks, NesHacker! I am now planning some more content for the near future...

  • @jimbailey3141
    @jimbailey3141 3 роки тому +1

    This is a very cool computer, I really like the fact it's self contained (dev tools on board). How I just need to build a couple of your terminals for a completely standalone experience! Thank you

    • @slu467
      @slu467  3 роки тому

      Glad you give it a try, Jim!

  • @manikandanr1322
    @manikandanr1322 Рік тому

    Teaching electronic related contents, Germans always great. student from India

    • @DefaultFlame
      @DefaultFlame 3 місяці тому

      When it comes to computer hardware learn from Germans, when it comes to computer software learn from Indians. That is what my (extermely limited) experience has taught me.

  • @qazpalm9130
    @qazpalm9130 3 роки тому +1

    wow just found your channel and it is incredible! love to have the knowledge to do something like this one day

    • @slu467
      @slu467  3 роки тому

      Thanks! glad you like this stuff :-)

  • @edgeeffect
    @edgeeffect 3 роки тому +4

    Some kind of higher level language like FORTH or Lisp or maybe even BASIC would be an amazing next step. Not that a self-hosted assembler isn't amazing in itself.

    • @stupossibleify
      @stupossibleify 3 роки тому +1

      The next steps of loading an interpreter are fairly well documented on various systems. For me it's always been about those first initial steps to get the system ready... to then do anything you want. Those first micro systems couldn't even read from (paper) tape to load a programming language until the bootstrap was complete.

    • @slu467
      @slu467  3 роки тому +4

      Thanks, edgeeffect, yep we are working on that :-) Actually a 'Minimal' team mate - slowcorners - has already published a FORTH for the Minimal. It's on the 'Minimal Boards' (link is in the release video description). Stay tuned for a modern BASIC JIT compiler...

    • @NilsKullberg
      @NilsKullberg 3 роки тому +3

      @edgeeffect You can find the Minimal-FORTH via: github.com/slowcorners/Minimal-FORTH
      Regrettably I have not had the time to document it or write manuals, but feel free to try it out. Let me know via the Minimal Forum if you run into trouble and I will do my best to help.

    • @amnesie6615
      @amnesie6615 3 роки тому +2

      I prefer BASIC over FORTH or LISP and I think more people are familiar with it :) But of course everything has its pros and cons

    • @edgeeffect
      @edgeeffect 3 роки тому +1

      @@NilsKullberg FORTH is the ultimate minimal solution for The Minimal. :)

  • @coenraadloubser5768
    @coenraadloubser5768 3 роки тому +1

    2:17 Bragging rights!

  • @DefaultFlame
    @DefaultFlame 3 місяці тому

    Amazing.

  • @ajinkyamahajan102
    @ajinkyamahajan102 3 роки тому +3

    Man I was looking for this answer since a long.
    Can you please explain the logic of what you incorporated in assembler design.
    Also please elaborate on software ecosystem you used to develop the assembler

    • @slu467
      @slu467  3 роки тому +1

      Hi, there is already a video out here on my channel where I more or less live-code the assembler in Python. Cheers!

    • @DefaultFlame
      @DefaultFlame 3 місяці тому +1

      Ecosystem = notepad.

  • @mrysSOFTWARE
    @mrysSOFTWARE 3 роки тому +1

    Fantastic

    • @slu467
      @slu467  3 роки тому

      :-)

    • @mrysSOFTWARE
      @mrysSOFTWARE 3 роки тому +2

      @@slu467 Bitte unbedingt weitermachen!!! Was für eine Freude zuzusehen und anhand deiner Informationen selber in das Thema einzusteigen!!! Vielen Dank dafür!!!👍

    • @slu467
      @slu467  3 роки тому

      @@mrysSOFTWARE Hey, danke für deine motivierenden Worte. Ich denke, bald geht es weiter ;-)

  • @amnesie6615
    @amnesie6615 3 роки тому

    How cool would it be if there would be a BASIC Interpreter with some "GPIO" capability to switch some LEDs :) Your work is just amazing! Would it be possible to add a real time clock module? This would open up a huge range of applications :)

    • @slu467
      @slu467  3 роки тому +2

      BASIC is coming...

    • @amnesie6615
      @amnesie6615 3 роки тому

      ​@@slu467 Great news!

  • @GodofWar1515
    @GodofWar1515 2 роки тому

    One thing I find really hazy in my understanding of the character ROM and other text specific graphics, scrolling, moving characters around via its width and height. You have this connected to a T.V.. Does your computer manually set up the characters which are displayed on the screen? I would imagine that this is done via hardware and not software.

    • @slu467
      @slu467  2 роки тому +1

      Hi Lucas, pure bitmap data can be send byte-wise from VRAM to the monitor via a shift register. A character display would translate a byte to char data via a lookup table. Both can be implemented either in hardware or software. Generally, older machines couldn't do it in software. Cheers!

  • @prehistoricBanana
    @prehistoricBanana 2 роки тому

    That's pretty awesome good job. btw what terminal are you using to get that retro look?

    • @slu467
      @slu467  2 роки тому

      When talking to real hardware I either use TeraTerm and a C64-style TrueType font or my own Terminal program (written in C++/OpenGL). The very same Terminal front-end is also used in my emulator for the Minimal. You can download and use it for free (see my other videos about it).

  • @mspeir
    @mspeir 3 роки тому +2

    Please don't take this as me being rude, but can you increase the volume when you record or edit? I have my phone volume all the way up and can barely hear you.

    • @slu467
      @slu467  3 роки тому +2

      Thanks Mark, I'll see into it. Strangely, on most devices that does not seems to be a problem...

    • @mspeir
      @mspeir 3 роки тому

      @@slu467 Nevermind. It's not you. I bought a metal phone case and it's muffling any low pitch sounds, including voices. I just need a pair of headphones.