+Al_Nafuur Posted May 17, 2022 Share Posted May 17, 2022 New binaries in my first post and in PlusStore. Changes: Boss explosion and victory tune (sfx by @Pat Brady) Smoother playfield scrolling of landscape (4px) Fix flicker of carrier superstructures at game/stage start Return to title screen from text screens with joystick button bug fix for lethal PowerUps The landscape is now scrolling by 4 playfield pixel. The aircraft carrier at takeoff and landing is still scrolling with 8px. The boss plane is scrolling with 2px. 362 bytes of ROM space left in bank 1 2007 bytes of ROM space left in bank 2 1453 bytes of ROM space left in bank 3 16 bytes of ROM space left in bank 4 3362 bytes of ROM space left in bank 5 121 bytes of ROM space left in bank 6 282 bytes of ROM space left in bank 7 625 bytes of ROM space left in bank 8 To-Do's: Boss intro needs to repeat 3 times Include typewriter sound by @Pat Brady and animation to end and game over screen fly off side fighter before boss fight. 4 Quote Link to comment Share on other sites More sharing options...
SJD69 Posted May 22, 2022 Share Posted May 22, 2022 On 5/17/2022 at 6:11 AM, Al_Nafuur said: New binaries in my first post and in PlusStore. Fantastic work! 1 Quote Link to comment Share on other sites More sharing options...
+Al_Nafuur Posted May 31, 2022 Share Posted May 31, 2022 new binaries in my first post and in PlusStore. changes: Bugfix for landscape grey after takeoff Side fighter collision improved Planes from bottom shoot before leaving the screen (starting in stage 24) To test the side fighter collision I have attached two test ROMs where all PowerUps are the side fighter Pow. 1942 side fighter test NTSC.bin 1942 side fighter test PAL60.bin (test ROMs do not send scores to the PlusROM HSC backend!) 1 Quote Link to comment Share on other sites More sharing options...
insertclevernamehere Posted June 3, 2022 Share Posted June 3, 2022 I'm going to say something that might be annoying coming from someone who can't program and therefore doesn't have a full appreciation of just what an achievement this game already is. BUT I can't feel that there's a missed opportunity here. It seems from the comments that the gameplay is solid. But with this being "1942", I feel that if this was given the Nathan Strum graphical treatment, this could be a top selling release on AtariAge up there with the likes of Champeau's games. It would become an absolute MUST MUST own game. There, I've said it. Please please don't be too harsh if I really don't know what the hell I'm talking about. 1 Quote Link to comment Share on other sites More sharing options...
Prizrak Posted June 3, 2022 Share Posted June 3, 2022 I don't think your being too harsh. I think the difference here is who's doing the programing and what tools are available. A lot of the quality AA titles that even I love are written in assembly and some are using DPC+ or CDFJ Bank switching. Batari Basic is an amazing tool for folks to create games and stuff for the 2600. In the right hands there have been some excellent games made using this tool, Mr. Yo-Yo comes to mind. With those other programing methods and those who are skilled at it create amazing stuff that truly pushes the hardware to the limits. I think what@Al_Nafuur has done an amazing job developing 1942 and has gone beyond what I thought the project would become. It may not be the same 1942 I've played in the past due to system limitations, but I feel it does an incredible job at re-creating the game with the hardware/tools available to him.Sent from my SM-G996U using Tapatalk 3 Quote Link to comment Share on other sites More sharing options...
+Al_Nafuur Posted June 3, 2022 Share Posted June 3, 2022 2 hours ago, insertclevernamehere said: I'm going to say something that might be annoying coming from someone who can't program and therefore doesn't have a full appreciation of just what an achievement this game already is. BUT I can't feel that there's a missed opportunity here. It seems from the comments that the gameplay is solid. But with this being "1942", I feel that if this was given the Nathan Strum graphical treatment, this could be a top selling release on AtariAge up there with the likes of Champeau's games. It would become an absolute MUST MUST own game. There, I've said it. Please please don't be too harsh if I really don't know what the hell I'm talking about. No, this is not annoying but a legitimate question that I have asked myself. Currently the game is based on a Batari Basic kernel which is executable on any hardware. For more graphical effects we would need an other kernel or a different technology. One possibility would be to use the DPC+ bB kernel, but DPC+ is limited to run on non-open proprietary hardware, which would limit the user base, which I don't really want (besides the PlusROM functions not running on this hardware). Another possibility would be to write a custom bB kernel for the game, but that would be a very big effort. Quote Link to comment Share on other sites More sharing options...
+Gemintronic Posted June 3, 2022 Share Posted June 3, 2022 Yeah. I don't think bB is the limiting factor. Unless you're a god tier programmer or using hardware assist this is what peak performance looks like. * High res title screen * In game music * Multiple sprites with flicker mitigation * Scrolling playfield 1 Quote Link to comment Share on other sites More sharing options...
+splendidnut Posted June 4, 2022 Share Posted June 4, 2022 49 minutes ago, Al_Nafuur said: One possibility would be to use the DPC+ bB kernel, but DPC+ is limited to run on non-open proprietary hardware But wait... You made the PlusCart... you added enough of DPC+ support to the cart to run ChaoticGrill... what's stopping you from finishing the job? Or even working around what you don't support of that yet? ... And I see @Gemintronic added a list of things that the games has... all without extra hardware support. The only thing I see as "missing" is multi-colored sprites... but that may or may not be possible within the given constraints. Let me go check. 1 Quote Link to comment Share on other sites More sharing options...
+Al_Nafuur Posted June 4, 2022 Share Posted June 4, 2022 10 minutes ago, splendidnut said: But wait... You made the PlusCart... you added enough of DPC+ support to the cart to run ChaoticGrill... what's stopping you from finishing the job? Or even working around what you don't support of that yet? ChaoticGrill is not using the ARM part of DPC+, but the bB DPC+ kernel is using it. Quote Link to comment Share on other sites More sharing options...
+splendidnut Posted June 4, 2022 Share Posted June 4, 2022 19 minutes ago, Al_Nafuur said: ChaoticGrill is not using the ARM part of DPC+, but the bB DPC+ kernel is using it. I believe there is source code available for the custom ARM code that Bb uses: bB.1.1d.reveng37\includes\custom Ugh... Not commented at all... but it's there. ---- Addendum: Looks like there are only two calls to ARM code in the DPC+ Bb Kernel... one is for the RAM copy function (#255)... the other looks like it handles playfield... maybe playfield scrolling? Hard to tell... again there are minimal comments. What is the point of releasing source code without comments? Quote Link to comment Share on other sites More sharing options...
orange808 Posted June 4, 2022 Share Posted June 4, 2022 If open source is a necessity, this one is another option: I understand the PlusCart doesn't support it, though. ¯\_(ツ)_/¯ Quote Link to comment Share on other sites More sharing options...
+Al_Nafuur Posted June 4, 2022 Share Posted June 4, 2022 32 minutes ago, splendidnut said: I believe there is source code available for the custom ARM code that Bb uses: bB.1.1d.reveng37\includes\custom to fully implement DPC+ we would need the code of the driver not the custom code of an DPC+ project.. 1 Quote Link to comment Share on other sites More sharing options...
+Al_Nafuur Posted June 4, 2022 Share Posted June 4, 2022 11 minutes ago, orange808 said: If open source is a necessity, this one is another option: I understand the PlusCart doesn't support it, though. ¯\_(ツ)_/¯ I removed ACE from the PlusCart firmware, because it wasn't really used back then. But ACE support has been rolled out earlier this year: https://gitlab.com/firmaplus/atari-2600-pluscart/-/blob/master/source/STM32firmware/PlusCart/Src/cartridge_emulation_ACE.c Quote Link to comment Share on other sites More sharing options...
orange808 Posted June 4, 2022 Share Posted June 4, 2022 13 minutes ago, Al_Nafuur said: I removed ACE from the PlusCart firmware, because it wasn't really used back then. But ACE support has been rolled out earlier this year: https://gitlab.com/firmaplus/atari-2600-pluscart/-/blob/master/source/STM32firmware/PlusCart/Src/cartridge_emulation_ACE.c Thanks. I don't have a PlusCart to test, but I heard back that Strong ARM ACE had some issues during a test. I don't know if the cart in question is on the latest firmware or not. I'll message you if it doesn't get resolved. (And I'll stop hijacking your game thread.) ? 1 Quote Link to comment Share on other sites More sharing options...
+splendidnut Posted June 4, 2022 Share Posted June 4, 2022 2 minutes ago, Al_Nafuur said: to fully implement DPC+ we would need the code of the driver not the custom code of an DPC+ project.. I think you're missing my point. I'm more focused on just throwing ideas out there to improve THIS project. So the focus should be on how to get around the limitations of not having the full implementation of DPC+: hack and/or recompile what's provided with bBasic. I think the only real limitation with using bBasic is the lack of new kernel developments. I believe you may have actually done some work in that area with this project... if I'm remember correctly? But I also kinda remember you talking about hitting the limitations in that regard. So, ultimately, I'm not sure. Anyways, take what you will out of this... I'm just trying to push for the best! 2 Quote Link to comment Share on other sites More sharing options...
+Karl G Posted June 4, 2022 Share Posted June 4, 2022 Not every game needs to be ARM-assisted. I think it is excellent as-is, personally. 8 Quote Link to comment Share on other sites More sharing options...
+splendidnut Posted June 4, 2022 Share Posted June 4, 2022 FYI, I grabbed your code today to take a look, loaded it up in VSCode/AtariDevStudio and it doesn't compile: c:\Games\Atari2600\1942-bB-main\src\1942 HSC.bas.asm (17307): error: Unknown Mnemonic 'SET_PLUSROM_API'. Quote Link to comment Share on other sites More sharing options...
+Al_Nafuur Posted June 4, 2022 Share Posted June 4, 2022 4 minutes ago, splendidnut said: FYI, I grabbed your code today to take a look, loaded it up in VSCode/AtariDevStudio and it doesn't compile: c:\Games\Atari2600\1942-bB-main\src\1942 HSC.bas.asm (17307): error: Unknown Mnemonic 'SET_PLUSROM_API'. Yes. You need PlusROM functions for bB: http://pluscart.firmaplus.de/pico/?PlusROM#batariBasic 1 Quote Link to comment Share on other sites More sharing options...
insertclevernamehere Posted June 4, 2022 Share Posted June 4, 2022 20 hours ago, splendidnut said: The only thing I see as "missing" is multi-colored sprites... but that may or may not be possible within the given constraints. Let me go check. Yes! This is what it needs to take it to the next level. Quote Link to comment Share on other sites More sharing options...
insertclevernamehere Posted June 4, 2022 Share Posted June 4, 2022 21 hours ago, Al_Nafuur said: No, this is not annoying but a legitimate question that I have asked myself. Currently the game is based on a Batari Basic kernel which is executable on any hardware. For more graphical effects we would need an other kernel or a different technology. One possibility would be to use the DPC+ bB kernel, but DPC+ is limited to run on non-open proprietary hardware, which would limit the user base, which I don't really want (besides the PlusROM functions not running on this hardware). Another possibility would be to write a custom bB kernel for the game, but that would be a very big effort. Thanks for the explanation. Now, if only I could understand what it all meant ?. Quote Link to comment Share on other sites More sharing options...
+splendidnut Posted June 4, 2022 Share Posted June 4, 2022 What are switch_player_0_color and Player0SwitchColor used for? Quote Link to comment Share on other sites More sharing options...
+Al_Nafuur Posted June 4, 2022 Share Posted June 4, 2022 6 minutes ago, splendidnut said: What are switch_player_0_color and Player0SwitchColor used for? 1 Quote Link to comment Share on other sites More sharing options...
+splendidnut Posted June 4, 2022 Share Posted June 4, 2022 Ah... yup, that's kinda what I was thinking... Thanks! Quote Link to comment Share on other sites More sharing options...
+Al_Nafuur Posted June 5, 2022 Share Posted June 5, 2022 3 hours ago, splendidnut said: FYI, I grabbed your code today to take a look, loaded it up in VSCode/AtariDevStudio and it doesn't compile: c:\Games\Atari2600\1942-bB-main\src\1942 HSC.bas.asm (17307): error: Unknown Mnemonic 'SET_PLUSROM_API'. I just pushed my local changes from the last WIP release. So you might want to pull them (even if they are not big changes). 2 hours ago, splendidnut said: Thanks! You are welcome. Suggestions for improvement are always welcome. 1 Quote Link to comment Share on other sites More sharing options...
+splendidnut Posted June 5, 2022 Share Posted June 5, 2022 I've started work on this and published a "gutted" and commented a version of the multi-sprite kernel that includes cycle counts in a fork on Github. It is basically all prep work for me to beginning really digging into the kernel. I think there's potential here to make some improvements. Since you've already inserted color changing code for P0, there's potential for that to be reworked to support multi-coloring the P0 (the player's plane). Probably the biggest obstacle in this kernel is the "playfield caching" that's done specifically to assist the repositioning kernel to handle it's job without interrupting playfield updates. If that can be handled differently, that would definitely open up some possibilities. I have a couple of ideas bouncing around in my head... but I'm not sure how feasible they are yet. We shall see. 1 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.