4 ms·
I'd prefer the C128 BASIC. It had graphics and sound commands. That would be good to hook up SDL2 and make something interesting. You could do the same for C64
by anotherfish 6y ago
I'd prefer the C128 BASIC. It had graphics and sound commands. That would be good to hook up SDL2 and make something interesting.
You could do the same for C64 basic but that was all peeks/pokes or something like SIMON's BASIC. These are doable using this project's C runtime if you chose to extend it such.
Interesting.
What about the license? Is Microsoft going to attack if you dare actually use this in a commercial or hobby project? Maybe.
- skissane 6y ago> What about the license? Is Microsoft going to attack if you dare actually use this in a commercial or hobby project? Maybe. Although they legally could, I really doubt they are going to start suing hobbyists. The legal expense and negative PR would outweigh any possible benefit. (Commercial uses are a bigger risk, but even there, unless it gets to a certain scale, they probably won’t bother.)
- the_af 6y ago> You could do the same for C64 basic but that was all peeks/pokes That was my beef with C64 BASIC. Once you start peeking and poking in order to do anything interesting, are you really programming in BASIC?
- anotherfish 6y agoYeah, the whole peek/poke thing turned BASIC into a slow assembly language scripting language rather than actual BASIC language support. Still, it likely made the transition to assembly programming a little more straightforward for many.
- appstorelottery 6y agoJust chiming in with my experience in terms of Basic. I started with TRS-80 Coco 2 basic (Microsoft), then Amstrad CPC-464 (Microsoft), then Amiga (AMOS), then to PC with QBX 7.1, finally ended up in Visual Basic 1.0 - then all the way to VB end of life. Then Realbasic on the Mac. My major friction with basic was OS integration. The Amstrad had "call", "peek" and "poke" which allowed you to call Z80 assembly, read and write to memory respectively. Ever since the amstrad doing anything outside of the interpreter which required OS calls or the like was extremely painful - mostly because of the lack of compatible types (byte, word and so-on). Making a call, passing parameters, and getting data back was always a nightmare that required a C wrapper or assembly work-around. It was a black art for the basic programmer. Back in the day I felt like an imposter; compiling my basic applications, statically linking libraries in the link and compressing and obfuscating... purely to hide my lack of skill... I was an imposter ;-) Both QBX and VB had a healthy third-party library market, and I recall licensing some great QBX libraries for SVGA support back in the day (I was making through-the-window display systems with a capacitive switch I designed). VB was a little better, I recall relying on IP-Works for projects that required TCP/IP support. DLL distribution could be a pain if not handled right. Realbasic had MonkeyBread software's libraries for OS level integration. So... hopefully I've established some credentials for being a Basic-head back in the day ;-) Which leads me to a recent experience with Basic that absolutely blew my mind and made me rethink my entire position as an old basic programmer. Back in the day it was pure shame for me to be a basic programmer. It was slow, interpreted, and anyone in the Amiga community that was leet in any way could code in 68000 and basic programmers were lamers. It was the same all the way back and I've always felt like I was a second citizen back in the day... not only from my leet peers, but also from the OS vendors that treated basic programmers in the same way (BTW I'm over all that lamer stuff these days, I learned assembly for the TRS-80 and wrote a game over covid... my 10 year old self was vindicated!)... But back to the main point... BBC BASIC! Over covid I got into RiskOS (always wanted an Acorn Archimedes) and played with BBC Basic. OMG! You can do ANYTHING at an OS level with this language, total first party support for all OS api's. Although these days I can program as a generalist in C and the rest; I can't help thinking that RiskOS and the BBC micro did it absolutely right in terms of the basic language. And perhaps this is why basic wasn't really taken seriously was everything to do with Microsoft... why wasn't basic given the same 1st party treatment as it is on RiscOS? Apologies if my post seems a bit confusing - just a bit of catharsis on a Sunday morning :-) Interested to hear about other peoples opinions... I'm playing with the idea of a basic to Erlang translator... old habits die hard :-)
- anotherfish 6y agoBBC micros were kind of special from all reports - I never used one. Apparently they had the ability to have an auxiliary processor added, RAM expansion etc etc. By all accounts they were well made and powerful. BBC Basic had all the goodies for graphics and sound. Anyone up to make a version that compiles to C like this CBMBASIC project?