Inline machine language is a really good demonstration of the speed and flexibility of Vision Basic. Another nice feature is the ability to create add-on packs to provide custom basic commands. Not that you need a custom FLIP basic command, but it is nice to know you could if you wanted to.
Excellent illustration comparing speed of interpreted and compiled BASIC and BASIC with inline asm. Very cool Vision BASIC allows the concatenator operator for creating horizontal assembly structures in BASIC like the BBC Micro and that the compiler runs right on the C64. Vision BASIC would have been awesome to have on cartridge in the 80's :)
Love it! :) I often mix assembly code and BASIC on the same line (some might see that as sloppy, but to each his own style). You can place BASIC code inside the brackets too -- they don't have to be outside the brackets. If you're okay with such inconsistency, you can simply place INC H on line 84 without brackets and it will "expand" into the code you already have there (because that's what Vision BASIC will convert it to anyhow). INC works as it usually does in assembly when within brackets, but handles two-byte variables and addresses/pointers/"words" when outside of the brackets. Excellent video and presentation! :)
The ML loop cycles faster than the SID3 voice, so the NOPs ensure that there is enough time for the SID3 to produce a new number on each iteration of the loop. Otherwise you wouldn't get a 50-50 split of head/tails. Check the 8 Bit Show and Tell video I linked to in the description where the cycle rate is demonstrated.
WTF FB? - When I try sharing this video in my little FB group I get this error message: "Your message couldn't be sent because it includes content that other people on Facebook have reported as abusive." - FB doesn't provide me with any way or means to report it as a false positive either, very frustrating 🤨
Inline machine language is a really good demonstration of the speed and flexibility of Vision Basic. Another nice feature is the ability to create add-on packs to provide custom basic commands. Not that you need a custom FLIP basic command, but it is nice to know you could if you wanted to.
Thanks for sharing. Very interesting. I was coding on the c64 30 some years ago.
Thanks. So was I
Excellent illustration comparing speed of interpreted and compiled BASIC and BASIC with inline asm. Very cool Vision BASIC allows the concatenator operator for creating horizontal assembly structures in BASIC like the BBC Micro and that the compiler runs right on the C64. Vision BASIC would have been awesome to have on cartridge in the 80's :)
Love it! :) I often mix assembly code and BASIC on the same line (some might see that as sloppy, but to each his own style). You can place BASIC code inside the brackets too -- they don't have to be outside the brackets. If you're okay with such inconsistency, you can simply place INC H on line 84 without brackets and it will "expand" into the code you already have there (because that's what Vision BASIC will convert it to anyhow). INC works as it usually does in assembly when within brackets, but handles two-byte variables and addresses/pointers/"words" when outside of the brackets.
Excellent video and presentation! :)
Good demonstration of the speed benefits of inline assembly! Nice job!
Why 2 NOPs?
The ML loop cycles faster than the SID3 voice, so the NOPs ensure that there is enough time for the SID3 to produce a new number on each iteration of the loop. Otherwise you wouldn't get a 50-50 split of head/tails. Check the 8 Bit Show and Tell video I linked to in the description where the cycle rate is demonstrated.
WTF FB? - When I try sharing this video in my little FB group I get this error message: "Your message couldn't be sent because it includes content that other people on Facebook have reported as abusive."
- FB doesn't provide me with any way or means to report it as a false positive either, very frustrating 🤨