RevEng Posted August 10, 2023 Author Share Posted August 10, 2023 Heads up there's a new v0.29 7800basic release at github. Changes include... feature: added "set 7800GDmenuoff" statement, to flag that 7800GD shouldn't use the menu. feature: added "set 7800header" statement, to allow adding ad-hoc 7800header commands. feature: plotchars now can plot more than 32 characters, when working with 160A, 320A, or 320D. fix: 7800header was sanitising mega7800 controllers on reload. fix: dasm updated. Inability to grow pass-buffer now handled gracefully. fix: plotmap causing compilation errors due to missing multiplication library. I would normally wait more than a week between releases, but the plotmap bug is compile-breaking, so a quick release was warranted. 10 4 Quote Link to comment https://forums.atariage.com/topic/222638-7800basic-beta-the-release-thread/page/50/#findComment-5296779 Share on other sites More sharing options...
+mksmith Posted August 10, 2023 Share Posted August 10, 2023 Awesome update thanks Mike!! >32 chars is the best! For those using the set 7800header command use as follows: set 7800header 'name Millie & Molly 7800' set 7800header 'set hsc' Atari Dev Studio update incoming... 3 3 Quote Link to comment https://forums.atariage.com/topic/222638-7800basic-beta-the-release-thread/page/50/#findComment-5296826 Share on other sites More sharing options...
+Muddyfunster Posted August 10, 2023 Share Posted August 10, 2023 Thanks @RevEng for the updated features and thanks @mksmith for updating ADS! 7 Quote Link to comment https://forums.atariage.com/topic/222638-7800basic-beta-the-release-thread/page/50/#findComment-5296854 Share on other sites More sharing options...
+saxmeister Posted August 10, 2023 Share Posted August 10, 2023 Thanks for your dedication to the 7800 and the community, @RevEng! Without your work, quite of bit of the development that has happened in the last few years would not have been possible. 8 1 Quote Link to comment https://forums.atariage.com/topic/222638-7800basic-beta-the-release-thread/page/50/#findComment-5296965 Share on other sites More sharing options...
+Random Terrain Posted August 12, 2023 Share Posted August 12, 2023 HTML version of the 7800basic Guide has been updated: https://www.randomterrain.com/7800basic.html If anyone notices any mistakes, please let me know. 5 2 Quote Link to comment https://forums.atariage.com/topic/222638-7800basic-beta-the-release-thread/page/50/#findComment-5297791 Share on other sites More sharing options...
Jag_Mag Posted August 21, 2023 Share Posted August 21, 2023 Can code asm inside,that's cool 2 Quote Link to comment https://forums.atariage.com/topic/222638-7800basic-beta-the-release-thread/page/50/#findComment-5301957 Share on other sites More sharing options...
+SmittyB Posted August 22, 2023 Share Posted August 22, 2023 6 hours ago, Jag_Mag said: Can code asm inside,that's cool I'd go so far as to say 7800basic is a great tool for learning 6502 assembly. It's trivial to look at the compiled output that's sent to the assembler and learn how the higher level commands break down into simpler instructions. You can then take that code and make small optimisations based on assumptions the compiler can't make until you're confident to just do certain things in assembly. I write most of my code in assembly just because I'm comfortable with it, but I leave all the tedious work like converting graphics data, playing sounds, managing the screen and more to 7800basic. If there's some complicated logic I can always write it in 7800basic and move on whereas otherwise it might have scuppered the whole project. 4 1 Quote Link to comment https://forums.atariage.com/topic/222638-7800basic-beta-the-release-thread/page/50/#findComment-5302190 Share on other sites More sharing options...
Jag_Mag Posted August 22, 2023 Share Posted August 22, 2023 I'm a Jag dev but since they don't want me there I'll move to another console.I appreciate the nice welcome with info SmittyB 4 Quote Link to comment https://forums.atariage.com/topic/222638-7800basic-beta-the-release-thread/page/50/#findComment-5302269 Share on other sites More sharing options...
RevEng Posted September 21, 2023 Author Share Posted September 21, 2023 There's a new v0.30 7800basic release at github. Changes include: feature: integrated project backup. feature: plotsprite4 command added, for generating 4 byte DL objects. feature: PLOTSPRITE and PLOTSPRITE4 commands added, for more efficient looped sprite generation. fix: throw error when plotchars doublewide exceeds 32 characters. (which exceeds the screen width) If you're not regularly backing up your game projects, I urge you to do so now. We've had two developers lose mature projects due to hardware failures in recent history. A thumb drive attached to an unused usb port is a cheap and easy insurance policy. The new backup feature will create a backup of your basic file, included images, mapfiles, and rmt files, every time you compile your game project. The backup goes to a location you specify in your source code. You have a choice of replacing the previous backup with the new one (single mode) or keeping a running history (running mode) The sprite related updates are useful for better efficiency, provided your game design can work with their quirks. (see the "Advanced Spritework" part of the manual). Using 4-byte sprites allowed me to upgrade the 69 Sprite Demo to 86 sprites, thanks to the reduced DMA 4 byte sprites have compared to 5 byte sprites. 10 1 Quote Link to comment https://forums.atariage.com/topic/222638-7800basic-beta-the-release-thread/page/50/#findComment-5320397 Share on other sites More sharing options...
+Karl G Posted September 21, 2023 Share Posted September 21, 2023 9 hours ago, RevEng said: The sprite related updates are useful for better efficiency, provided your game design can work with their quirks. (see the "Advanced Spritework" part of the manual). Using 4-byte sprites allowed me to upgrade the 69 Sprite Demo to 86 sprites, thanks to the reduced DMA 4 byte sprites have compared to 5 byte sprites. Most excellent! I have switched "Space Peril" (Adventure in space) to use plotsprite4, and everything seems to work as well as before as far as I see so far (everything uses 160A in that game, so there should be no difference). I never saw a case where Maria limits were reached, but now it's a little less likely, even. 🙂 The project may also benefit from using PLOTSPRITE4 in a loop for object/enemy generation. Btw there's a small typo in the documentation: "The PLOTSPRITE and PLOTSPRITE commands don’t work with tallsprites" should presumably read "The PLOTSPRITE and PLOTSPRITE4 commands don’t work with tallsprites". 4 Quote Link to comment https://forums.atariage.com/topic/222638-7800basic-beta-the-release-thread/page/50/#findComment-5320530 Share on other sites More sharing options...
RevEng Posted September 21, 2023 Author Share Posted September 21, 2023 Excellent - thanks for the testing and typo report! I tried out the four byte sprites in Salvo, with similar results. The reduced DMA isn't the biggest boost if you're not already pushing the limits, but if it's free, so you may as well. I think where it can be really useful is for designs that use sprites as tiles. That's pretty much what I did for the Petscii Robots tile display, though I built the four byte sprite objects via manually crafted data tables. 3 Quote Link to comment https://forums.atariage.com/topic/222638-7800basic-beta-the-release-thread/page/50/#findComment-5320654 Share on other sites More sharing options...
+Muddyfunster Posted September 21, 2023 Share Posted September 21, 2023 2 hours ago, RevEng said: I think where it can be really useful is for designs that use sprites as tiles. That's what I was hoping will be testing this on Bernie this weekend. Thanks for the update Mike. 3 Quote Link to comment https://forums.atariage.com/topic/222638-7800basic-beta-the-release-thread/page/50/#findComment-5320728 Share on other sites More sharing options...
RevEng Posted September 21, 2023 Author Share Posted September 21, 2023 50 minutes ago, Muddyfunster said: That's what I was hoping will be testing this on Bernie this weekend. Thanks for the update Mike. A couple sharp edges I forgot to mention... 4 byte sprites can "only" plot objects up to 31 bytes wide. I'll update the manual and get the compiler to throw an error if someone attempts this. The PLOTSPRITE/PLOTSPRITE4 commands are limited to sprites that are 16 bytes wide - I can extend those if necessary, but it already seems excessive, given the purpose is to loop and plot a ton of sprites efficiently. 5 1 Quote Link to comment https://forums.atariage.com/topic/222638-7800basic-beta-the-release-thread/page/50/#findComment-5320772 Share on other sites More sharing options...
RevEng Posted September 22, 2023 Author Share Posted September 22, 2023 One more thing... for anybody using "underthehood" techniques, the underthehood sample now has a "updateobjects4.asm" assembly file suitable for 4-byte sprites. 3 1 Quote Link to comment https://forums.atariage.com/topic/222638-7800basic-beta-the-release-thread/page/50/#findComment-5321011 Share on other sites More sharing options...
+Random Terrain Posted September 23, 2023 Share Posted September 23, 2023 HTML version of the 7800basic Guide has been updated: https://www.randomterrain.com/7800basic.html If anyone notices any mistakes, please let me know. 3 3 Quote Link to comment https://forums.atariage.com/topic/222638-7800basic-beta-the-release-thread/page/50/#findComment-5321860 Share on other sites More sharing options...
+Lewis2907 Posted October 15, 2023 Share Posted October 15, 2023 Does anyone have an easy way to setup 7800 Basic? Videos, Screenshots, PowerPoint etc.? I' gonna try to install this and see if I can make the jump from Batari Basic over to to 7800Basic. Any help would be appreciated. Quote Link to comment https://forums.atariage.com/topic/222638-7800basic-beta-the-release-thread/page/50/#findComment-5333084 Share on other sites More sharing options...
Trebor Posted October 15, 2023 Share Posted October 15, 2023 A couple of items may be outdated - but the majority should still be applicable: 7800basic for Newbies: A Tutorial, Part 1 7800basic for Newbies: A Tutorial, Part 2 7800basic for Newbies: A Tutorial, Part 3 The complete tutorial was posted as a downloadable pdf file. For convenience, there is also the online 7800basic Guide. If not already aware of it, you may want to check out Atari Dev Studio. It should make the jump easier. A major and fantastic resource is the 7800 Development Wiki via 7800.8BitDev.org. Information and documentation posted is up to date at that site. 5 Quote Link to comment https://forums.atariage.com/topic/222638-7800basic-beta-the-release-thread/page/50/#findComment-5333107 Share on other sites More sharing options...
+Lewis2907 Posted October 16, 2023 Share Posted October 16, 2023 Trebor, Thanks. I found the Atari Dev Studio a few hrs. ago and was able to use that and looked at the same codes as well. Still will take sometime to learn how to make stuff in Atari Dev Studio. 2 Quote Link to comment https://forums.atariage.com/topic/222638-7800basic-beta-the-release-thread/page/50/#findComment-5333682 Share on other sites More sharing options...
RevEng Posted October 31, 2023 Author Share Posted October 31, 2023 There's a new v0.31 7800basic release at github. Changes include: feature: compression and decompression commands have been added. feature: two-pass compile phase. Banners and tallsprites no longer need to follow their corresponding inc* statement in your source code, to work as-expected. feature: "set pausesilence on" directive added, to pause and silence tracker music when pause is active. fix: the native tia music tracker generates spurious reads to $0000. fix: max shakescreen with screenheight=224 and zoneheight=8 would sometimes cause interrupts to be missed. fix: plotsprite4 wouldn't error-out when you plot a sprite 32 bytes wide. An error message has been added. For anybody using the lz4 compression assembly routine that's been kicking around, I'm pretty sure you'll find the new in-built lzsa has better compression (typical 10% smaller) and faster decompression. (typical 20% faster) and a slightly smaller footprint. All credit goes to the Emmanuel Marty of the LZSA project. (though I did use 7800heat to improve the 6502 decompressor speed by about 10%) 9 2 Quote Link to comment https://forums.atariage.com/topic/222638-7800basic-beta-the-release-thread/page/50/#findComment-5341001 Share on other sites More sharing options...
+mksmith Posted November 1, 2023 Share Posted November 1, 2023 Thanks Mike! Some great features included in this release 👏👏👏 3 1 Quote Link to comment https://forums.atariage.com/topic/222638-7800basic-beta-the-release-thread/page/50/#findComment-5341185 Share on other sites More sharing options...
+Karl G Posted November 1, 2023 Share Posted November 1, 2023 6 hours ago, RevEng said: feature: compression and decompression commands have been added. Wow; that's huge! Or it would be huge if it weren't for the compression. 4 Quote Link to comment https://forums.atariage.com/topic/222638-7800basic-beta-the-release-thread/page/50/#findComment-5341229 Share on other sites More sharing options...
Shannon Posted November 1, 2023 Share Posted November 1, 2023 8 hours ago, Karl G said: Wow; that's huge! Or it would be huge if it weren't for the compression. Talk about a deflating update. 🤣 1 Quote Link to comment https://forums.atariage.com/topic/222638-7800basic-beta-the-release-thread/page/50/#findComment-5341406 Share on other sites More sharing options...
+darryl1970 Posted November 1, 2023 Share Posted November 1, 2023 20 hours ago, RevEng said: There's a new v0.31 7800basic release at github. Changes include: feature: compression and decompression commands have been added. feature: two-pass compile phase. Banners and tallsprites no longer need to follow their corresponding inc* statement in your source code, to work as-expected. feature: "set pausesilence on" directive added, to pause and silence tracker music when pause is active. fix: the native tia music tracker generates spurious reads to $0000. fix: max shakescreen with screenheight=224 and zoneheight=8 would sometimes cause interrupts to be missed. fix: plotsprite4 wouldn't error-out when you plot a sprite 32 bytes wide. An error message has been added. For anybody using the lz4 compression assembly routine that's been kicking around, I'm pretty sure you'll find the new in-built lzsa has better compression (typical 10% smaller) and faster decompression. (typical 20% faster) and a slightly smaller footprint. All credit goes to the Emmanuel Marty of the LZSA project. (though I did use 7800heat to improve the 6502 decompressor speed by about 10%) This is very cool. Is there a software used to write music for the TIA tracker? Does the TIA music tracker allow for TIA sound effects to override on of the music channels? I have a lot to learn, especially the compression stuff. If I can only carve out the time!!! 😪 1 Quote Link to comment https://forums.atariage.com/topic/222638-7800basic-beta-the-release-thread/page/50/#findComment-5341508 Share on other sites More sharing options...
RevEng Posted November 1, 2023 Author Share Posted November 1, 2023 7 hours ago, darryl1970 said: This is very cool. Is there a software used to write music for the TIA tracker? Does the TIA music tracker allow for TIA sound effects to override on of the music channels? I have a lot to learn, especially the compression stuff. If I can only carve out the time!!! 😪 The built-in tracker uses MML for composition. MML is kind of a programmer's music composition language. There are examples in the samples directory, and the manual covers the MML syntax. The tracker shares same TIA priority code as sound effects, so the music can play together with sounds - up to you which instruments or sound effects have priority over others. In the Salvo theme, I intentionally used a busy drum track (loosely based on the Funky Drummer riff) The notes have priority, and the beats just fit in wherever they can. 2 Quote Link to comment https://forums.atariage.com/topic/222638-7800basic-beta-the-release-thread/page/50/#findComment-5341769 Share on other sites More sharing options...
+Gemintronic Posted November 1, 2023 Share Posted November 1, 2023 9 minutes ago, RevEng said: The built-in tracker uses MML for composition. MML is kind of a programmer's music composition language. There are examples in the samples directory, and the manual covers the MML syntax. The tracker shares same TIA priority code as sound effects, so the music can play together with sounds - up to you which instruments have what priority. In the Salvo theme, I intentionally used a busy drum track (loosely based on the Funky Drummer riff) The notes have priority, and the beats just fit in wherever they can. Now all we need is RevEng Paint! You lose a life each time you try and place a note the TIA can't handle. Very challenging! 2 Quote Link to comment https://forums.atariage.com/topic/222638-7800basic-beta-the-release-thread/page/50/#findComment-5341779 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.