Jump to content
IGNORED

Legacy versus ARM-based 2600 Game Development


Thomas Jentzsch

Recommended Posts

Edit by Albert: The initial posts in this thread were moved from the Galaga For Atari 2600 thread, which veered off topic into a discussion regarding using legacy hardware for homebrew games versus more advanced (ARM-based hardware, such as that in the Melody board) for 2600 homebrew games. 

 

Here's the post from Thomas Jentzsch that kicked it off:

 

On 1/5/2020 at 1:33 PM, Army Of 2600 said:

Enjoyed reading the initial posts on this thread and how bad people thought a Galaga port would be.

 

To be fair, that was before using the ARM for games started. That's a complete game changer.

  • Like 4
Link to comment
Share on other sites

8 hours ago, Thomas Jentzsch said:

To be fair, that was before using the ARM for games started. That's a complete game changer.

 

True. And in my mind really begins a little fear, that "normal" Atari-2600 games, could have a hard time in the future. Don't understand me wrong people, i really appreciate quality games like this here (waiting by myself for the digital download of "Galagon" with big anticipation), but on the other hand, there is this little fear growing inside me, that normal Atari-2600 games could have problems, getting enough attention in the future, no matter how good they are and no matter how much good program-code a programmer has put inside. They simply can't do what the ARM-supported games can do and alot people EVEN DON'T KNOW that certain games are ARM-supported. Maybe this should be made more clearly recognizable on the boxes of these games, or something like that? (just a suggestion) And so, the normal technical limits of the Atari-2600 could maybe disappear, but exactly these limits, defines a retro-system.

 

I really hope, that i see things somewhat to negativ here and that also normal Atari-2600 games will have a chance in the future, to be real highlights. Sorry for these thoughts, don't want to dampen the fun about this great game, but the fear in this mentioned point, is there in my mind. And it get's bigger, i can't deny it. Even when i am also looking forward, to get this game here.

Edited by AW127
  • Like 4
Link to comment
Share on other sites

4 hours ago, AW127 said:

 

True. And in my mind really begins a little fear, that "normal" Atari-2600 games, could have a hard time in the future. Don't understand me wrong people, i really appreciate quality games like this here (waiting by myself for the digital download of "Galagon" with big anticipation), but on the other hand, there is this little fear growing inside me, that normal Atari-2600 games could have problems, getting enough attention in the future, no matter how good they are and no matter how much good program-code a programmer has put inside. They simply can't do what the ARM-supported games can do and alot people EVEN DON'T KNOW that certain games are ARM-supported. Maybe this should be made more clearly recognizable on the boxes of these games, or something like that? (just a suggestion) And so, the normal technical limits of the Atari-2600 could maybe disappear, but exactly these limits, defines a retro-system.

 

I really hope, that i see things somewhat to negativ here and that also normal Atari-2600 games will have a chance in the future, to be real highlights. Sorry for these thoughts, don't want to dampen the fun about this great game, but the fear in this mentioned point, is there in my mind. And it get's bigger, i can't deny it. Even when i am also looking forward, to get this game here.

From observing these forums for many years I can understand your fears. The general public are not programmers and don't know the difference between game types. From what I've seen though they generally don't care to know about the differences either... they just want to see a great game.

 

 

I am an advocate that a game should be judged by how it makes you feel. It should not mater whether it is an assembly game, BB game, hack, Arm game, etc. Just judge it for how it all comes together and plays. While you might expierence tears of joy you might also just want to take a sledge hammer to the cartridge. What's important is that it made you feel something. A game is a game, is a game. Play it as such, and judge it as such.

 

 

While the ARM gives amazing resources, it still takes a great programmer to make a great game. Have no fear there.

 

 

Now I will give you the choice. You can take the Blue pill to wake up in 1980 with all games are being banged out in assembly and the story ends. You believe what you want to believe. If you take the Red pill I will show you how deep the rabbit hole goes.

 

 

RedOrBlue.thumb.jpeg.7ef6c9b3670e925ef9064580de692787.jpeg

  

  • Like 7
  • Thanks 1
Link to comment
Share on other sites

I’m a firm believer that people involved in any hobby are smarter about that particular thing than the average bear. I don’t think many AAers aren’t aware of how the homebrews they purchase are made. Most follow them from the beginning of the thread/topic creation and are exactly aware of how each game they love/obsess over is created. If not they generally go back through the thread/topic once they become aware of that particular games existence. Either to learn more about it, or they go through it and look for a rom to download.

 

I’m sure their are a few who purchase these games straight from the AA store and are like Holy Shit where was this my whole life. But not many.

 

 

9542215b6ea891b5cbc213f00f15abbd.jpg

  • Like 1
Link to comment
Share on other sites

We had this discussion already. Personally I am more with AW127, especially after reading many, many comments here on AA. And from the (IMO) minority, who even recognizes the difference, only a very few (mostly developers) can really understand the differences and which major impact (IMO this is almost like two different platforms) this has on the games

 

This is frustrating for many developers who try to stick close to the original specs, following self-imposed limitations and try to create something which was realistically possible back then. Some have already given up developing for the 2600 due to this (public or silently). And being part of an already very small group, that's my biggest concern.

  • Like 3
Link to comment
Share on other sites

We had this discussion already. Personally I am more with AW127, especially after reading many, many comments here on AA. And from the (IMO) minority, who even recognizes the difference, only a very few (mostly developers) can really understand the differences and which major impact (IMO this is almost like two different platforms) this has on the games   This is frustrating for many developers who try to stick close to the original specs, following self-imposed limitations and try to create something which was realistically possible back then. Some have already given up developing for the 2600 due to this (public or silently). And being part of an already very small group, that's my biggest concern.

 

 

 That’s a very valid concern. It would be nice to get an ARM assisted logo of some kind that can be put on the box for these type of games as was mentioned by AW127. It would certainly help people understand how the game was programmed if they don’t already understand, and possibly create some interest as well.

 

If you haven’t studied 6502 assembly or haven’t been around Atari programming it would be hard to have real appreciation for how difficult it really is to program a game for the 2600. Especially games like Boulder Dash. It’s obviously beyond most programmers ability to do such things, and lends to why processors like the Arm are being implemented. That and the time savings that would be gained by being able to program in basic or C. Possibly even a higher level language.

 

I have a great appreciation for those that have the knowledge and time to develop games for the VCS in 6502 assembly strictly.

Simply amazing!

 

 

Link to comment
Share on other sites

8 minutes ago, adamchevy said:

 That’s a very valid concern. It would be nice to get an ARM assisted logo of some kind that can be put on the box for these type of games as was mentioned by AW127. It would certainly help people understand how the game was programmed if they don’t already understand, and possibly create some interest as well.

 

If you haven’t studied 6502 assembly or haven’t been around Atari programming it would be hard to have real appreciation for how difficult it really is to program a game for the 2600. Especially games like Boulder Dash. It’s obviously beyond most programmers ability to do such things, and lends to why processors like the Arm are being implemented. That and the time savings that would be gained by being able to program in basic or C. Possibly even a higher level language.

 

I have a great appreciation for those that have the knowledge and time to develop games for the VCS in 6502 assembly strictly.

Simply amazing!

 

 

Hi there!  

 

I agree on all your (and TJ's points), but be assured that you still need to be an expert on 6502 assembly if you plan on making a good 2600 game that pushes the limits, with or without the ARM.  The ARM (AKAIK) was not implemented to help developers that aren't experts in 6502/TIA development; it was originally added strictly to emulate the DPC chip originally used in Pitfall 2.  Since there are additional resources available with the ARM even after emulating this chip, developers like Chris Walton, Darrell Spice and Fred Quimby (CDF) decided to innovate and exploit these additional resources to help assist the TIA.  This led to DPC+, CDF and eventually CDFJ bankswitching schemes that all use the additional RAM and ARM CPU, and even allow code written in C to be executed by the ARM.  In the end, however, you are at the mercy of the TIA and it's low res playfield and 5 sprites and 76 cycles per scanline, but the ARM assists greatly of course, mostly with data preparation and reducing the # of cycles it takes to update TIA registers (which in turn leads to the potential of much more complex kernels), as well as being able to execute game logic at a much faster speed during the blanking period.

 

The development time savings is probably the biggest advantage to me; being able to program the game logic in C is not only easier and faster, but it also makes programming these games much more enjoyable, and the innovation keeps this hobby fresh.  It's one of the reasons I returned to the scene after a 9 year hiatus after writing the 16K 6502 assembly-only Lady Bug and Conquest of Mars. ;)  

 

Anyway, I hope in the end there will still be appreciation for games no matter what technology is used to make them.  Games like Amoeba Jump and Aardvark as well as many other non-ARM games can stand proudly along side any of the ARM games IMO. 

 

Thanks,

John

 

PS .  BTW - Al does include the Cartridge type in the store for each game, and ARM games are marked as "32K CDF" (at least mine are).  Additionally, I (and many others) have also commented on dozens of AA posts, Youtube videos, FB posts, interviews, etc. to let people know the magic behind any of my ARM games, so I would think that most people that *want* to know how the games are made and how they differ from games "back in the day" either already know or can find out if they want to.  :thumbsup: 

  • Like 8
  • Thanks 2
Link to comment
Share on other sites

18 hours ago, Omegamatrix said:

From observing these forums for many years I can understand your fears. The general public are not programmers and don't know the difference between game types. From what I've seen though they generally don't care to know about the differences either... they just want to see a great game.

 

 

I am an advocate that a game should be judged by how it makes you feel. It should not mater whether it is an assembly game, BB game, hack, Arm game, etc. Just judge it for how it all comes together and plays. While you might expierence tears of joy you might also just want to take a sledge hammer to the cartridge. What's important is that it made you feel something. A game is a game, is a game. Play it as such, and judge it as such.

 

 

While the ARM gives amazing resources, it still takes a great programmer to make a great game. Have no fear there.

 

 

Now I will give you the choice. You can take the Blue pill to wake up in 1980 with all games are being banged out in assembly and the story ends. You believe what you want to believe. If you take the Red pill I will show you how deep the rabbit hole goes.

 

 

RedOrBlue.thumb.jpeg.7ef6c9b3670e925ef9064580de692787.jpeg

  

Well put. I get just as much enjoyment out of a 4k asm homebrew as I do DPC+/CDW/whatever! Maybe just enjoy the simple games for what they are and the wow factor on the new ones. And technically, the technology hasn't changed one bit. You still put the cartridge in the system and play it. The way the electronics are packaged inside the cart are irrelevant.

 

I'll do like Pacman and take the yellow pill, thanks!

 

Waka-waka! ?????

Edited by Kosmic Stardust
  • Like 3
Link to comment
Share on other sites

Don’t want to go too OT but “BITD” both the Supercharger and CBS advertised their hardware as an improvement so the ARM doesn’t seem fundamentally different than those, or the unadvertised Burgertime RAM, SARA RAM, or the DPC chip.

 

Last Pic is the ARM logo, put it on every cart! :)

F2677570-C32F-4A41-97F5-7C9A0F5AB2DE.jpeg

63643D33-512F-46E0-A6E8-F49341B81EAD.jpeg

1CA49C8D-C99E-49CE-809D-6B7097140454.jpeg

Edited by 5x7
  • Like 2
  • Haha 4
Link to comment
Share on other sites

On 1/6/2020 at 5:20 AM, Omegamatrix said:

While the ARM gives amazing resources, it still takes a great programmer to make a great game. Have no fear there.

 

Yes, of course it also needs a great programmer to make a good Arm-supported game, i think exactly the same way. But this is not exactly my point.

 

My fear goes more in the direction, that users, which don't know that some games are ARM-supported and others not, then compare games to each other and then also compare normal games to ARM-supported games, from which they even don't know that they are ARM-supported and that these games have a big benefit and advantage because of this. (crazy sounding sentence, hm? Okay, english is not my native language, so i am allowed  :) )

 

And exactly then starts the thing, were fairness has ceased to exist for the normal games then in the future. Of course, new normal games will loose the most direct comparisons against new ARM-supported games. If all people THEN WOULD KNOW, why they mostly loose, it would not be a problem for me, but some people don't know. They then maybe think about a new normal game:

 

"Ooouuhh this game is not good, look at "Galagon" or "Mappy", they look much better. Here in this game, the programmer did not a goob job..."

 

Or they think something like that. And this could be a problem. Cause with such comments, programmers of normal games, then could loose interest to go on programming new games for my beloved Atari-2600. This is my fear.

 

And exactly because of this, i made the suggestion with a clearly visible "logo" on the boxes of new ARM-supported games, that all users then knows, about some of the technical details. The logo is not for devalue the work of the programmers of such a game, it should only contain the words "ARM supported" or someting like that, which would give all users the clear message to their minds

 

"don't compare me with a normal Atari-2600 game, because i can use much stronger hardware"

 

That would be all. Therefore my logo suggestion on the box and it should be not a small logo, which can hardly be seen.

 

But i don't want to start now a massive discussion about the sense of games, which supports the ARM processor. Of course they have a authorization to exist and it's also very interesting, how far such games can go on a Atari-2600 from the technical point of view and also it's a fact, that back in time, also some Super-Nintendo games had strong chips inside the modul and so on. My only point is, that all users should really know about, when a game is supported by stronger technic, for reasons of fairness towards all the normal games, which will come out in the future.

Edited by AW127
  • Like 1
Link to comment
Share on other sites

33 minutes ago, AW127 said:

 

Yes, of course it also needs a great programmer to make a good Arm-supported game, i think exactly the same way. But this is not exactly my point.

 

My fear goes more in the direction, that users, which don't know that some games are ARM-supported and others not, then compare games to each other and then also compare normal games to ARM-supported games, from which they even don't know that they are ARM-supported and that these games have a big benefit and advantage because of this. (crazy sounding sentence, hm? Okay, english is not my native language, so i am allowed  :) )

 

And exactly then starts the thing, were fairness has ceased to exist for the normal games then in the future. Of course, new normal games will loose the most direct comparisons against new ARM-supported games. If all people THEN WOULD KNOW, why they mostly loose, it would not be a problem for me, but some people don't know. They then maybe think about a new normal game:

 

"Ooouuhh this game is not good, look at "Galagon" or "Mappy", they look much better. Here in this game, the programmer did not a goob job..."

 

Or they think something like that. And this could be a problem. Cause with such comments, programmers of normal games, then could loose interest to go on programming new games for my beloved Atari-2600. This is my fear.

 

And exactly because of this, i made the suggestion with a clearly visible "logo" on the boxes of new ARM-supported games, that all users then knows, about some of the technical details. The logo is not for devalue the work of the programmers of such a game, it should only contain the words "ARM supported" or someting like that, which would give all users the clear message to their minds

 

"don't compare me with a normal Atari-2600 game, because i can use much stronger hardware"

 

That would be all. Therefore my logo suggestion on the box and it should be not a small logo, which can hardly be seen.

 

But i don't want to start now a massive discussion about the sense of games, which supports the ARM processor. Of course they have a authorization to exist and it's also very interesting, how far such games can go on a Atari-2600 from the technical point of view and also it's a fact, that back in time, also some Super-Nintendo games had strong chips inside the modul and so on. My only point is, that all users should really know about, when a game is supported by stronger technic, for reasons of fairness towards all the normal games, which will come out in the future.

To be fair, whether we put the logo on the box or not, people will discriminate. Nobody is buying these retail, so the box print is irrelevant. The AA store clearly identifies which games have melody enhancement, and which bankswitching scheme they use. So we know when a game uses ASM, BB, or ARM code based upon the description, as well as the ROM size and if the game features additional RAM.

 

I would not be open to categorize games based upon type, though there is a section for AtariVox games, these included 2600 and 7800 games with any bankswitching type, because they are compatible with a specific peripheral marketed by AtariAge.

 

Currently there are sections for homebrews, hacks, repros, and non-games (test carts, demos, and music generators), and hardware mods and accessories. We do not need to subdivide the homebrew catagory further.

 

If we create a special section in the store for "advanced" homebrews versus "vanilla" homebrews, it would discriminate against the ASM and BB games. And BB is really just a compiler that encodes to 6502 ASM, so an ASM programmer could literally do anything BB could do an a whole lot more.

 

There's a lot of flavors. While many back in the day games were poop on a stick, suffice to say many AA homebrews are above and beyond the quality of vintage releases. Pacman, ET anyone? Name one of those turds in the AA shop. You can't. :cool:

  • Like 3
Link to comment
Share on other sites

3 hours ago, 5x7 said:

Don’t want to go too OT but “BITD” both the Supercharger and CBS advertised their hardware as an improvement so the ARM doesn’t seem fundamentally different than those, or the unadvertised Burgertime RAM, SARA RAM, or the DPC chip.

 

That's how I feel. I'm grateful for the continued progress, talented programmers like Champ Games and the new games that are being released whether they take advantage of the ARM or not. I recently purchased Galagon, Wizard of Wor Arcade and Aardvark and enjoy them all pretty much equally.

 

I wonder if back in the day there were similar concerns in the industry when bankswitching was first utilized, CBS released carts with RAM plus or when Arcadia released the Supercharger.

  • Like 6
Link to comment
Share on other sites

15 minutes ago, cvga said:

That's how I feel. I'm grateful for the continued progress, talented programmers like Champ Games and the new games that are being released whether they take advantage of the ARM or not. I recently purchased Galagon, Wizard of Wor Arcade and Aardvark and enjoy them all pretty much equally.

 

I wonder if back in the day there were similar concerns in the industry when bankswitching was first utilized, CBS released carts with RAM plus or when Arcadia released the Supercharger.

Pretty much this. The ARM tech breathed so much new life into homebrews. Now even more people are programming the old way compared to ten years ago I think. More people making games period, regardless of method.

  • Like 6
Link to comment
Share on other sites

17 hours ago, 5x7 said:

Don’t want to go too OT but “BITD” both the Supercharger and CBS advertised their hardware as an improvement so the ARM doesn’t seem fundamentally different than those, or the unadvertised Burgertime RAM, SARA RAM, or the DPC chip.

Well, the is difference is larger by a margin and more. The most extreme example is the CPU power outside the kernel.  Looking back at my last major projects (Boulder Dash, Star Castle Arcade and Aardvark) off screen CPU time was always very scarce. A lot of time and skill went into optimizing and compromising, cycle counting etc. This is nothing obvious (even to other developers) and largely happening behind the scenes. But now you know. :)  

 

Here we have the raw 70 MHz, 16 (or 32) bit ARM vs 1 MHz, 8 bit 6507 power. So this is not just 2x the RAM (like SARA RAM), but more like 50 or 100 times more CPU power. That's why I call it a game changer.
 

  • Like 7
Link to comment
Share on other sites

25 minutes ago, Thomas Jentzsch said:

Here we have the raw 70 MHz, 16 (or 32) bit ARM vs 1 MHz, 8 bit 6507 power. So this is not just 2x the RAM (like SARA RAM), but more like 50 or 100 times more CPU power. That's why I call it a game changer.
 

I totally agree TJ!  As expected, the difference in capabilities has grown exponentially over the course of 40+ years vs the small (albeit important) improvements by comparison of extra RAM, ROM, the DPC chip etc.

 

If they ever get BUS stuffing working reliably, then we're in real trouble!  ;) :lol: 

 

PS I'm not sure but I thought at some point Darrell said that there is a bug in the ARM chip where the processor only runs at half speed.  Still a huge difference, but one worth noting (if it's true).  If that issue is ever resolved (if it is even one), that would also give much more time between frames to do calculations which could lead to more complex games too.

 

 

  • Like 1
Link to comment
Share on other sites

12 minutes ago, johnnywc said:

PS I'm not sure but I thought at some point Darrell said that there is a bug in the ARM chip where the processor only runs at half speed.  Still a huge difference, but one worth noting (if it's true).  If that issue is ever resolved (if it is even one), that would also give much more time between frames to do calculations which could lead to more complex games too.

The UNO-Cart already runs at 168 MHz. Just in case the Harmony becomes too slow. :) 

Edited by Thomas Jentzsch
  • Like 1
  • Haha 6
Link to comment
Share on other sites

An $18 million dollar Cray supercomputer from 1984 can compute 0.8 Gigaflops. The ARM CPU in the harmony/melody does 0.84 Gigaflops.

 

This is so asymmetric that the 6502+ARM pairing can't reasonably be compared to regular hardware assist found on other platforms.

 

[edit - corrected calculation]

  • Like 7
  • Haha 2
Link to comment
Share on other sites

7 minutes ago, RevEng said:

An $18 million dollar Cray supercomputer from 1984 can compute 0.8 Gigaflops. The ARM CPU in the harmony/melody does 0.84 Gigaflops.

 

This is so off balanced, that the 6502+ARM pairing can't really be compared at all to hardware assist in other platforms.

 

[edit - corrected calculation]

So at 18 million a cart, it would have been possible (plus the "cart" would have been the size of 2 or so tennis courts)?  :lol:  I'm pretty sure I could still do Galaga for the 2600 with only .8 Gigaflops (vs. .84). ;)  

 

 

  • Like 2
  • Haha 7
Link to comment
Share on other sites

3 hours ago, Thomas Jentzsch said:

 

Here we have the raw 70 MHz, 16 (or 32) bit ARM vs 1 MHz, 8 bit 6507 power. So this is not just 2x the RAM (like SARA RAM), but more like 50 or 100 times more CPU power. That's why I call it a game changer.
 

 

Exactly! And this also is the difference of the ARM to different special-chips, used in some game-modules on the SNES, or also in the Atari-2600 game "Pitfall 2". These extra-power here is a super super super boost.  :)

  • Like 1
Link to comment
Share on other sites

20 minutes ago, D Train said:

you should set that as a goal for yourself...

If I didn't have 10 or so other 2600 projects I was working on, I would consider it... ;) 

 

I think it may be a good exercise to see what kind of Galaga port could be done with the technology of the time, perhaps with 32K, extra RAM (SARA, CBS RAM+, etc.) and with the DPC chip.  I already know the formation would be almost identical to what it is now since it's almost identical to the way Atari did it for Galaxian, so the rest would be needed to implement the enemies flying in, the double ship logic, etc.

 

 

  • Like 6
Link to comment
Share on other sites

16 hours ago, RevEng said:

An $18 million dollar Cray supercomputer from 1984 can compute 0.8 Gigaflops. The ARM CPU in the harmony/melody does 0.84 Gigaflops.

 

This is so asymmetric that the 6502+ARM pairing can't reasonably be compared to regular hardware assist found on other platforms.

 

[edit - corrected calculation]

It's not unlike comparing the 3.59Mhz 65C02 in the SNES to the 94Mhz MIPS in the N64. I do not think we will ever see a bigger gap in processing power in a single generation.

 

Though the slower cpu in the snes held it's own against the 7Mhz 6502 in the turbografx and the 10mhz genesisquite well, even in carts without the enhancement chips.

 

I think comparisons between the Cray 2 supercomputor and the ARM inside the cartridge are moot though. Has any gsme programmed thus far actually bottlenecked the ARM? There are some extremely restrictive limits the TIA and 6507 continue to impose.

Link to comment
Share on other sites

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...