![]() |
|
github.com/EkBass/BazzBasic - Printable Version +- QB64 Phoenix Edition (https://qb64phoenix.com/forum) +-- Forum: QB64 Rising (https://qb64phoenix.com/forum/forumdisplay.php?fid=1) +--- Forum: QBJS, BAM, and Other BASICs (https://qb64phoenix.com/forum/forumdisplay.php?fid=50) +--- Thread: github.com/EkBass/BazzBasic (/showthread.php?tid=4318) Pages:
1
2
|
github.com/EkBass/BazzBasic - EkBass - 01-11-2026 Hi. There are many different BASIC variations in the world, but due to my own joy of learning and nostalgic feelings, I thought I would develop my own. BazzBasic is my own vision of how to achieve the same feelings today as I did long ago when I was writing hundreds of lines of code on a Spectravideo 328. BazzBasic does not allow line numbers, which I think is a bit outdated ways of programming, but it allows [label] tags, which make the familiar GOTO and GOSUB successful. This is my view, not a call to argue ![]() Unlike old BASIC languages, BazzBasic also requires initialization of variables. I think this is something I would have learned with the interpreters of the 80s. It would have saved me a lot of swear words, at least for myself. I decided to use the number 0.5 as the version, because there has never been any real version system before. The interpreter can already be used for many things, mainly in the console, although a few graphical commands are already supported. Preliminary audio and file management functions are also already in use. There are certainly bugs, I will fix them as I have time from my real work. More versatile graphical and file management functions are now next on the development list. Some kind of implementation of network features is also on the todo list. Also bundling the tokenized code to executable is on my todo. Audio currently works via NAudio, but as long as I can get that to work via SDL2, then in practice SDL2 + NET10 can also be ported to Linux. But I am moving forward with the project at my own pace. Help is welcome, there is always something to do in such projects and my own time is limited. This originally started as node.js project which went pretty well. But the graphics with node.js? Terrible Then I moved this to FreeBasic. Unfortunately FB has not been updated or developed for few years and at least I had some major issues when working with graphics on Win 11. github.com/EkBass/BazzBasic RE: github.com/EkBass/BazzBasic - bplus - 01-11-2026 Welcome to the forum @EkBass sorry I hadn't written this earlier. I am checking code at github and this one I found intriguing: Code: (Select All) ' BazzBasic; Rotating shapes demoSo you have built-in routines for MOVESHAPE, ROTATESHAPE, DRAWSHAPE, REMOVESHAPE? What PL are you compiling in? RE: github.com/EkBass/BazzBasic - EkBass - 01-12-2026 (01-11-2026, 09:29 PM)bplus Wrote: What PL are you compiling in? Good morning. If PL means programming language, then its C# RE: github.com/EkBass/BazzBasic - EkBass - 01-17-2026 I finished the built-in simple IDE, which makes getting started with BazzBasic as easy as it was with the BASIC interpreters of the 80s. My intention is not to make any major changes to the IDE. It is just intended to be an easy way to get started. For the more experienced, there are syntax highlighters in notepad++, Geany and Visual Studio Code. The homepage https://ekbass.github.io/BazzBasic/ is now open. RE: github.com/EkBass/BazzBasic - EkBass - 01-18-2026 Tons of things. Now a beer, sleep over night and then back to day job for a while. # News and changes ## Jan 2026 ### 18th Jan 2026 With all the previous add-ons, BazzBasic ver. 0.6 is not available as binary and source. ### 18th Jan 2026 Merging BazzBasic and basic code into a single executable file is now possible. _bazzbasic.exe -exe filename.bas_ produces the _filename.exe_ file. BazzBasic does not compile the BASIC code, but rather includes it as part of itself. Read more https://ekbass.github.io/BazzBasic/manual/#/packaging ### 18th Jan 2026 Finished working with PNG and Alpha-color supports. LOCATE in graphical screen now overdraws old text instead of just writing new top of it. **Supported Formats** **Format:** PNG Transparency: Full alpha (0-255) Recomended **Format**: BMP Transparency: None Legacy support --- ### 18th Jan 2026 Generated a manual with Docify. BazzBasic homepage now links to it. Major idea is, that github wiki becomes a as development wiki and this docify as user wiki. --- ### 17th Jan 26 Fixed a bug that prevented to use custom resolution with SCREEN 0 Terminal now closes if no errors when running via IDE Small gap between IDE line numbers and user code. --- ### 17th Jan 26 BazzBasic has now in-built simple IDE. Start _bazzbasic.exe_ with out params to open it. If opened with params, the .bas file is interpreted normally. After few new features, released as version 0.6 --- ### 10th Jan 26 Generated __vsix__ file to add BazzBasic syntaxes for VS Code. See https://github.com/EkBass/BazzBasic/blob/main/extras/readme.md --- ### 9th Jan 26 Released first one, version 0.5 RE: github.com/EkBass/BazzBasic - hsiangch_ong - 01-20-2026 this is an interesting project. a basic dialect from the early 1980's. which hated line numbers. that is enough to report. edit: this was written because i didn't read everything correctly. still it's a refreshing departure. from basic products. away from "bascom" and quickbasic. but what will be done about sound? probably the original interpreter didn't have it as aim. but it's somewhat frustrating. that freebasic has made absolutely no advance on this front. this must be only to ensure. it works on freebsd as well as on linux. this is not a feature request. it's just me ranting a bit. i like freebasic. but not some of "design decisions." the take on "oop" should have straight out. included class keyword. but now i have to mute my criticism... Quote:### 18th Jan 2026 so this makes it like libertybasic? like sbcl? nothing wrong with that. but some people prefer small executables. even in 2026. even on linux and windows 64-bit. again, i'm not making a feature request. i'm actually angry. because sourceforge seems to have junk servers. refuse to let me download an iso. for a linux distribution i've been dying to try out. for about a month now. i want to see the "progress" with wayland. before i have to consider. buying a computer "more with it" for this time. not your fault nor anybody else on this site. i speak my mind. RE: github.com/EkBass/BazzBasic - Ed Davis - 01-20-2026 (01-11-2026, 05:09 PM)EkBass Wrote: BazzBasicVery cool! I was playing around with this. Is there anything like QB64's "line input" ? I found "input", but it doesn't do what I want. For instance: input "> ", foo$ If the user types: fred fish sells sea shells by the sea shore I'd like that entire string to go into foo$ But currently, foo$ is assigned "fred", and the rest is thrown away. How would I do what I want with BazzBasic? Thanks! RE: github.com/EkBass/BazzBasic - hsiangch_ong - 01-21-2026 until line input or alike is implemented. you will have to use a loop with inkey$. put one character at a time into the input string. check for "enter" key to end the input. the old way with some 8-bit computers. and their basic interpreters limited like that. by the way, the file-handling statements. are rather "un-basic-like." RE: github.com/EkBass/BazzBasic - EkBass - 01-21-2026 Hi everyone. Thanks for the feedback and opinions. BASIC is interesting because it lives, breathes and is doing well, even though it feels like it almost disappears from the face of the earth every now and then. Until it comes back to life and makes another generation interested in itself. Now that the world is full of game-making programs, artificial intelligence that produces almost finished applications, does writing code and seeing a program come to life still give you a pretty great feeling? Quote:but what will be done about sound?BazzBasic already offers decent functionalities to work with sounds. Using NAudio originally was a mistake I do not understand myself either. SDL would offer all needed to have them. Plan is to move out of NAudio at some point. This also decreases the size of BazzBasic. Quote:so this makes it like libertybasic?I have not actually ever used LibretyBasic while I am aware of it. In case its syntax is close to RunBasic, which is also created by Carl, then yes. Some could say this reminds LB at least in some level. Quote:Is there anything like QB64's "line input" ?Line input indeed is one of the classic BASIC-features. This is one I have simply forgotten when working with what there is so far. I will put this on my todo. Thanks for reminding. Quote:by the way, the file-handling statements. are rather "un-basic-like."With that, you are right. The usual way with older dialects is usually something like Code: (Select All) OPEN <file path> FOR INPUT AS <file pointer>At this point I wanted to make these command names self-explanatory. Those who have been coding in BASIC for years will probably find my choice a bit strange, but for a novice coder I think this is a slightly easier solution. For example, SCREENLOCK ON/OFF is also designed with this idea in mind. Although many things in BazzBasic already work, there is still a lot of work to be done. And it is possible that some of the features or command names/structures will be slightly more precise. But I think that is part of the evolution of such a programming language. Coming before version 1.0 - Creating libraries. You can compile the .BAS code into a tokenized .BB file, which you can use INCLUDE to import into the BAS code. - NAudio -> SDL This also allows it to work on Linux - HEX() function For example, the RGB returned by the POINT function may be a bit vague for some. A function that converts it to HEX would certainly be nice. - HTTP A few commands that can be used to download/read pages/files from the internet. Size of BazzBasic .NET 10 is unfortunately huge. But on the other hand, it guarantees the functionality of BazzBasic far into the future. RE: github.com/EkBass/BazzBasic - EkBass - 01-21-2026 Oops... it should "now", not "not" ### 18th Jan 2026 With all the previous add-ons, BazzBasic ver. 0.6 is now available as binary and source. |