+Random Terrain Posted June 25, 2014 Share Posted June 25, 2014 It's time to create a 7800basic page on your site, RT! I haven't used all of the commands or features yet, but I'd be willing to help. If it's OK with RevEng, I could start working on it, but there's not much of a need for it since the PDF file is kind of like a web page already. While I am wrapped up in this adventure game thing, my biggest feature request would be scrolling. I'd love to attempt a racing game. Yeah, once we have scrolling, people could make all kinds of NES-style games. 1 Quote Link to comment Share on other sites More sharing options...
RevEng Posted June 25, 2014 Author Share Posted June 25, 2014 What I'm loving about 7800basic is the lack of restrictions that exist compared to bB, there are so many compromises that need to be made in bB with the different kernel options. So far it seems like I could do anything the original developers could do with 7800basic, I wish I had more time to work on all my ideas. 20 multicolor sprites on screen with no flicker or slowdown, unlimited text graphics on screen, 8 color palettes with 3 colors each (+transparent) for sprites and the background, two six digit scores, up to 512k ROMs with bankswitching (48k without), tiled bitmapped graphics, tons of CPU cycles compared to the 2600... it's like an 8bit programmer's dream come true. Thanks AM. I owe a huge debt to batari, due to his bB codebase being very extensible. Without the benefit of standing on his shoulders, I wouldn't have started this project. I've been working hard to avoid compromises, and the 7800 architecture supports that in large part. There are presently a few features that assembly language programmers have over us right now, the main ones being fine-scrolling and zone-based changes. The latter would allow, for example, the programmer to change the color a palette is using or the active character set in a zone. All of this is on the roadmap, but both scrolling and zone-based changes are tough nuts to generalize and keep the interfaces simple. I'm still mulling over this problem space. Anyway, these are features that many 7800 commercial games didn't have, so I agree with your overall assertion that it would be possible to recreate many of the classics in 7800basic without losing anything. Given the higher level language and homebrew timescales, I think that several of the classics could actually be improved upon with 7800basic. If it's OK with RevEng, I could start working on it, but there's not much of a need for it since the PDF file is kind of like a web page already. I'd welcome it! The PDF has section indexes, but it's nowhere near as hyperlinked as your bB site. Even better, your bB site is a living document, getting updated as people ask questions and others provide answers. I don't have any intention of doing that with the PDF file - life it too short, and documentation is a major drag on the project as-is. 2 Quote Link to comment Share on other sites More sharing options...
+Random Terrain Posted June 25, 2014 Share Posted June 25, 2014 I'd welcome it! The PDF has section indexes, but it's nowhere near as hyperlinked as your bB site. Even better, your bB site is a living document, getting updated as people ask questions and others provide answers. I don't have any intention of doing that with the PDF file - life it too short, and documentation is a major drag on the project as-is. OK, I'll start working on it. Once the first draft is done, I'll have to figure out where to put it on the following page: www.randomterrain.com/atari-2600-memories.html Right now the table of contents for that page looks like this: batari Basic Pages General Atari 2600 Programming Assembly Language Programming Memories Miscellaneous Scanning Tips The Fortress of infinitude Stella: Debug Colors Mode Chart Doesn't seem right to just stick the 7800basic page in the batari Basic section. It should probably have its own section in case more Atari 7800 pages are added over time. That whole page has been mostly about the Atari 2600, but once a link to the 7800basic page is added, I guess I'll need to change the title of the page. I called it "Atari 2600 Memories" long before any programming stuff was added, so maybe it's overdue for a name change anyway. I just won't be able to change any URLs to match a new name since that would screw up a lot of links in the forums and other places. If anyone has any name change ideas, please let me know. 2 Quote Link to comment Share on other sites More sharing options...
+Trebor Posted June 25, 2014 Share Posted June 25, 2014 Yeah, once we have scrolling, people could make all kinds of NES-style games. The funny or particularly noteworthy part for 'NES-style games', like Zelda and Metroid for example, had hardware chip assistance with their scrolling providing multi-directional configurations for the console. The Mega Man series and Super Mario Bros. 2 & 3, also received scrolling help with additional chip hardware that provided a scanline based IRQ counter to make split screen scrolling easier to perform. Still wish Maria (and the 7800 overall) had the scope and depth of additional hardware chip support the NES was provided back in the day. However, already demonstrated with games like Scrapyard Dog and even more so with Bentley Bear's Crystal Quest, scrolling is sweet on the 7800 despite no additional 'help'. Looking forward to the time, when down the road, RevEng is able to add the (sweet) scrolling (possibilities) to 7800basic. Quote Link to comment Share on other sites More sharing options...
+Trebor Posted June 25, 2014 Share Posted June 25, 2014 I called it "Atari 2600 Memories" long before any programming stuff was added, so maybe it's overdue for a name change anyway. I just won't be able to change any URLs to match a new name since that would screw up a lot of links in the forums and other places. If anyone has any name change ideas, please let me know. Perhaps just "Atari Memories". Heck, over time you may add a 5200/8-bit section too. 1 Quote Link to comment Share on other sites More sharing options...
Loktar Posted June 25, 2014 Share Posted June 25, 2014 Not sure what the requirements are for a sticky, but this thread seems pretty important for 7800 dev (I've referred to it many times in the past couple of weeks) anyone else think it should be stickied? 2 Quote Link to comment Share on other sites More sharing options...
+Trebor Posted June 25, 2014 Share Posted June 25, 2014 Not sure what the requirements are for a sticky, but this thread seems pretty important for 7800 dev (I've referred to it many times in the past couple of weeks) anyone else think it should be stickied? This thread and the Software Guide thread need to be pinned. Quote Link to comment Share on other sites More sharing options...
pacgreg Posted June 26, 2014 Share Posted June 26, 2014 So I've spent a few hours poking around with this, and I wrote a script up to a moving sprite similar to the simple sample, and using adventurer as a reference I tried to make the sprite change to turn, but it no longer compiles, and without a v7800b program, I can't seem to find the error myself. Can someone help me along? pacgreg.bas Quote Link to comment Share on other sites More sharing options...
RevEng Posted June 26, 2014 Author Share Posted June 26, 2014 You've dimensioned "temp1" and "temp2", but these are already used in 7800basic. You're welcome to reuse them, but just be aware that certain commands will overwrite them. (typically the plot* or drawscreen commands) Otherwise, just rename them to something else. Quote Link to comment Share on other sites More sharing options...
pacgreg Posted June 26, 2014 Share Posted June 26, 2014 Wow, I thought i saw someone dim them in one of the samples so I did that. Now it compiles but i get two independantly moving rectangles, one grey one pink. Quote Link to comment Share on other sites More sharing options...
RevEng Posted June 26, 2014 Author Share Posted June 26, 2014 I'm a bit tied up, but can you post a zip of the gfx directory you're using? Otherwise it's a bit tough to troubleshoot graphical issues. If nobody beats me to it I'll take a look tonight. Quote Link to comment Share on other sites More sharing options...
pacgreg Posted June 26, 2014 Share Posted June 26, 2014 Here it is, thanks. Pacgreg.zip Quote Link to comment Share on other sites More sharing options...
RevEng Posted June 27, 2014 Author Share Posted June 27, 2014 You were nearly there. I made a couple of changes... metalgear.bas 1. since the plot* commands change temp1, temp2, ... you can't use them as an argument to the same command. I dimensioned "mytemp1" and "mytemp2" and changed your code to use those instead. 2. the bottom plotsprite was using a different image reference than the top one. I fixed the bottom image name to match the top one. Nice start 1 Quote Link to comment Share on other sites More sharing options...
+Atarius Maximus Posted June 27, 2014 Share Posted June 27, 2014 Here it is, thanks. Glad to see this topic pinned. Great job so far, pacgreg. I love MetalGear and it's a great start, the sprite looks fantastic. I'd suggest to you and anyone else in the future to create your own thread when you start working on a new game. It'll get more attention from the the community and you'll likely get more assistance with your project. RevEng is the master and I'm just a padawan, but I'll help too when I have the time. Here's a screenshot of pacgreg's binary. 1 Quote Link to comment Share on other sites More sharing options...
pacgreg Posted June 27, 2014 Share Posted June 27, 2014 Glad to see this topic pinned. Great job so far, pacgreg. I love MetalGear and it's a great start, the sprite looks fantastic. I'd suggest to you and anyone else in the future to create your own thread when you start working on a new game. It'll get more attention from the the community and you'll likely get more assistance with your project. RevEng is the master and I'm just a padawan, but I'll help too when I have the time. Here's a screenshot of pacgreg's binary. Thanks, I had a pretty good looking 2600 version of metal gear running with functioning collisions, life bar, and ranks, and I was about to fix enemies before I stubled upon 7800 basic and suddenly now I feel the need to complete it on the 7800 in its full glory, but here's the bB version I had. default.bas.bin Quote Link to comment Share on other sites More sharing options...
Tickled_Pink Posted June 29, 2014 Share Posted June 29, 2014 Guys, just so that I'm clear on this - is 7800basic currently only available for download via the original post on this thread? Just in case I download a version that's already outdated. Quote Link to comment Share on other sites More sharing options...
RevEng Posted June 29, 2014 Author Share Posted June 29, 2014 Yep, the first post in this thread is the official source. I always replace the old release with the new release. 1 Quote Link to comment Share on other sites More sharing options...
+frankodragon Posted July 1, 2014 Share Posted July 1, 2014 I'm trying at this too and I get a "too many colors" error in one of my images. Is it from the image itself or the code? I tried to change the colors but to no avail. Quote Link to comment Share on other sites More sharing options...
+Atarius Maximus Posted July 1, 2014 Share Posted July 1, 2014 I'm trying at this too and I get a "too many colors" error in one of my images. Is it from the image itself or the code? I tried to change the colors but to no avail. I can't give you any specific advice at the moment as I'm just getting ready to leave, but I would suggest taking a look at the post I made in this forum about creating graphics images that are compatible with 7800basic. Edit: After I did what was explained in that post, I'd simply edit an existing file (starting with one of RevEng's samples) and save it with a different name. Every image file I made after that imported perfectly into 7800basic. 1 Quote Link to comment Share on other sites More sharing options...
+frankodragon Posted July 2, 2014 Share Posted July 2, 2014 I think I fixed it. Here's what I did: Using Gimp, I made the images/tiles and made sure the character sprites are transparent and using the RGB mode. When done, convert the image into Index Color by selecting Image--->Mode----> Indexed Color but don't click Convert yet! Remember that Atari7800 custom palette? Tick the "Use Custom Palette" under the Colormap selection and select the Atari7800 palette. 2 Quote Link to comment Share on other sites More sharing options...
+Random Terrain Posted July 2, 2014 Share Posted July 2, 2014 Page 19 of the PDF has the following sentence: "Which which, we could use the data with plotmap to display the screen." What is the correct version of that sentence? Quote Link to comment Share on other sites More sharing options...
RevEng Posted July 2, 2014 Author Share Posted July 2, 2014 Ugh. Typo city. I was cranking it out at that point, and I should have gone over it again. Please change that line to "With the screen data defined, we can call plotmap to display the screen" 1 Quote Link to comment Share on other sites More sharing options...
+Random Terrain Posted July 2, 2014 Share Posted July 2, 2014 Ugh. Typo city. I was cranking it out at that point, and I should have gone over it again. Please change that line to "With the screen data defined, we can call plotmap to display the screen" Thanks. 1 Quote Link to comment Share on other sites More sharing options...
+Random Terrain Posted July 4, 2014 Share Posted July 4, 2014 The first draft of the 7800basic page is done: randomterrain.com/7800basic.html 3 Quote Link to comment Share on other sites More sharing options...
+Atarius Maximus Posted July 4, 2014 Share Posted July 4, 2014 Brilliant! It looks great. Thanks, RT. You are very good at web design, it's easy to use and much better than trying to navigate a pdf file. 3 Quote Link to comment 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.