Blitz!64 and Blitz!128 Commodore Basic Compilers. Plus a bit of X16 and Mega65.

Sdílet
Vložit
  • čas přidán 30. 10. 2023
  • Blitz! is one of the easiest to use Basic Compilers.
    This video gives full insight into
    * Speed
    * C64 vs C128 vs X16 vs Mega65 Performance Benchmarks
    * Split your Basic Code into Modules
    * and much more!
    Blitz! was also released as AustroComp and maybe more names. But it‘s basically the same program.
    Links:
    Sourcecode shown: github.com/The8BitTheory/blit...
    Blitz! 128 download: commodore.software/downloads/...
    Blitz! 64 download: csdb.dk/release/?id=189466
    ReBlitz64: github.com/c1570/Reblitz64
    Z64k Emulator: www.z64k.com/
    C64 Studio: www.georg-rottensteiner.de/en/...
    PakuPaku: deathshadow.com/pakuPaku
  • Věda a technologie

Komentáře • 63

  • @SledgeFox
    @SledgeFox Před 5 měsíci +1

    Happy and healthy new year! Very interesting video, you got a new subscriber! Thank you very much!

    • @the8bittheory
      @the8bittheory  Před 5 měsíci +1

      Happy New Year! Thanks for the great feedback and welcome on board :-)

  • @adrianbye830
    @adrianbye830 Před 4 měsíci +1

    Outstanding video, thanks for your hard work.

    • @the8bittheory
      @the8bittheory  Před 4 měsíci

      Glad you like it. Thanks for the great feedback!

  • @lurkerrekrul
    @lurkerrekrul Před 6 měsíci +1

    I had a pirated copy of Blitz back in the 80s, but beyond using it on BASIC programs, I never knew how to use it. I knew it had various options and other things you could do with it, but since I never had a manual for it, all I could do was run it on a BASIC program and hope it worked.
    If I recall correctly, I used it on a few simple conversion programs I made. Like one to convert Printshop graphics from Commodore to non-Commodore printer formats by doubling all the pixels horizontally. Or my program to convert a copy of Championship Lode Runner into a data disk for use with the original game (so you could use the built-in cheats).
    I seem to recall having some other BASIC compiler as well, but I forget what it was called.
    Then there was one published by Compute!'s Gazette. It only worked on a subset of BASIC commands, but produced really fast results. I think it converted the commands directly to ML, which is probably why it only allowed the use of certain commands.

    • @the8bittheory
      @the8bittheory  Před 6 měsíci

      Conversion programs are a great use case :-). For both, Basic and Basic compilers.
      I also made a video about micro compilers. That‘s probably close to the one from Computer Gazette you mentioned.
      Thanks for your input!

  • @botoxedballsack7391
    @botoxedballsack7391 Před 7 měsíci +1

    I liked hte Commander X16 part!

    • @the8bittheory
      @the8bittheory  Před 7 měsíci

      I'm also pretty excited about it. Thanks for the feedback!

  • @EORetro
    @EORetro Před 7 měsíci +1

    21:17 If these multiple-NEXTS-with-one-FOR-constructs don't work in Blitz! 128, then it has a bug in its FOR-NEXT-GOSUB-stack handling. We are used to think of FOR-NEXT as real loops in Commodore BASIC (like in modern languages), but that's actually not what they are. They are independent commands only connected by a stack and if used properly, they function like a loop "by accident".

    • @the8bittheory
      @the8bittheory  Před 7 měsíci

      You‘re probably right about that being a bug. I wasn‘t able to re-produce this with Reblitz, it might really be limited to the c128 and maybe even nested constructs
      Thanks for that input!

  • @jumhed994
    @jumhed994 Před 5 měsíci

    Programming was always a mystery to me.
    Tbh, i still dont know how C64 games were programmed.

    • @the8bittheory
      @the8bittheory  Před 5 měsíci +1

      But you‘re very interested in the topic anyways, right? Game programming is probably the most attractive field in programming, but also the most complex one.

  • @wadz668
    @wadz668 Před 7 měsíci

    I am familiar with this program and used it a lot in my younger years. I never understood how it worked, I assumed it turned a basic program into machine language but later found out that wasn't the case which really sparked my curiosity.

    • @the8bittheory
      @the8bittheory  Před 7 měsíci

      Really nice. What programs did you work on back then?

    • @wadz668
      @wadz668 Před 7 měsíci

      @@the8bittheory I was only about 10 at the time so really just experimental programs for learning basic and trying to see what I could get the computer to do. I was mostly interested in data manipulation and encryption, or hiding data on disks and retrieving it through basic using 1541/71 controller commands.

    • @the8bittheory
      @the8bittheory  Před 7 měsíci +1

      At the age of 10, that's pretty impressive

    • @wadz668
      @wadz668 Před 7 měsíci +1

      @@the8bittheory I had a LOT of time on my hands. Too bad I never figured out assembly. I could have done so much more

    • @the8bittheory
      @the8bittheory  Před 7 měsíci +1

      It's never too late. And 6502 assembly lang isn't too hard to grasp

  • @user-yr1uq1qe6y
    @user-yr1uq1qe6y Před 7 měsíci +1

    I always understood that Commodore BASIC was already tokenized upon entry. Does Blitz just have a different tokenization that includes more than just the keywords or something like a p-code?

    • @the8bittheory
      @the8bittheory  Před 7 měsíci +1

      Right, Basic keywords are tokenized. Variable names and values are not, though.
      Thanks for your input!

  • @RoundSparrow
    @RoundSparrow Před 7 měsíci

    Is this related to "Blitz BASIC Compiler for the Commodore 128 by Skyles Electrical Works" that I used in 1985?

  • @rhialtothemarvellify
    @rhialtothemarvellify Před 5 měsíci +1

    So did you report this bug to the VICE team? If not, it will obviously not be fixed...

    • @the8bittheory
      @the8bittheory  Před 5 měsíci

      Not yet, I still have to check with daily builds. But you‘re right, I need to do that. Thanks for bringing this up!

  • @gsestream
    @gsestream Před 6 měsíci +1

    so why not compile to assembler, directly, from basic. no interpreter required. way too complex "compiler solution". so you already have the code and jump tables, why not compile to c64 assembler directly. even the unoptimized assembler code translation is way faster. this was totally non required speed up software, you are smart. also modules/libraries work if you...

    • @the8bittheory
      @the8bittheory  Před 6 měsíci

      There‘s other compilers that do directly compile to assembler, so you can do that - at least for the c64. But on the c128 options are really limited.
      Thanks for your input!

    • @gsestream
      @gsestream Před 6 měsíci

      like vision basic but that seems to lack some parenthesis functionality, of basic, so not full basic compatibility, I dont care of the extra if the basic is not working@@the8bittheory

    • @gsestream
      @gsestream Před 6 měsíci

      but if so and common, why would blitz even exist, are they all paid@@the8bittheory

    • @the8bittheory
      @the8bittheory  Před 6 měsíci +1

      You might want to take a look at MOSpeed.
      www.c64-wiki.com/wiki/MOSpeed

    • @gsestream
      @gsestream Před 6 měsíci

      how about c/c++ to c64/128 asm/executable?@@the8bittheory