Jump to content
Posted Fri Apr 20, 2018 12:28 AM
Posted Mon Jun 4, 2018 9:08 PM
Big update today!
I am in the process of re-organizing the project into banks, and since I was tired of working on the game itself, I decided to take a try at coding the menu. I want the menu to have a nice big animated Nyan Cat rendered as accurately as possible. Above the cat will be displayed the players' scores, alternating between player 1 and player 2, and below the cat will be a scrollable menu. Each player will be able to select a cat color, and the cat will be colored according to which player's score is being displayed. (NTSC only for now, but for anyone wondering, I am intending on making this game truly PAL/50 compatible with the flip of a switch, including gameplay timing.)
Today, after weeks of many many re-writes, I finally finished the kernel for drawing the cat. Well, pretty much. I just have to work on the rainbow a bit so it doesn't bounce with the cat, and there are a couple minor touch-ups to do, but the hardest part is done. I am quite literally pushing the Atari to the edge of the abyss with this kernel, and all the usable objects are needed (Press Alt + comma in Stella to see how I am using the objects). It's technically not pixel-perfect, I rounded out the paws because it saves a lot of ROM and there are two very minor but practically undetectable flaws.
The code is not uploaded to github yet, but I will upload it as soon as I add my old code to the new code in a better structured way. Then I think I'll work on the gameplay again, since this long break has given me ideas of how to implement the random object generation.
The .bin is attached! I cut it to 4K since I am only using 1 bank for this.
Edit: You can use the COLOR/BW switch to pause the animation
Edited by JeremiahK, Tue Jun 5, 2018 2:51 PM.
Posted Tue Jul 17, 2018 3:55 AM
Woah, that's much better than my old attempt from 2011 Try hitting HMOVE every line if you can, so the black comb become less of an issue. With TIAtracker now existing the music could probably be improved too
Posted Thu Jul 19, 2018 6:37 AM
Unfortunately, there is no way of getting rid of the black comb. I am using the time between HMOVE's to set 4 objects' move registers before the next HMOVE, all while drawing the kernel, and there isn't enough time to do anything else. (Unless I can think of a way to preload everything into RAM. Edit: scratch that, I took a look, and that is what I am already doing.) I do have plans for the music, though!
Edited by JeremiahK, Tue Jul 24, 2018 9:21 PM.
Posted Fri Oct 12, 2018 10:05 PM
So, a little update.
I discovered graphical glitches on two of my systems. In my big nyancat display, I am drawing an asymmetrical playfield, but instead of writing the 2nd PF2 data at cycle 48, I have to do it at 50. This happens right at the start of a new playfield block. Apparently, not all systems handle this correctly, as one of my 4-switch consoles, after warming up for a few seconds, failed to update PF2 until the next block.
I have provided a test .bin for this, which draws a purple playfield grid, and should fill in only 9 blocks of the playfield with yellow. If 10 blocks are filled in, switching the color switch back and forth should go between 10 and 9 blocks filled in with yellow. (It updates PF2 at cycle 50 in color mode and 49 in b/w mode.) I will post a video below showing this.
I was able to fix this, but now I have run into another problem with my light-sixer. It randomly flashes areas of the cat that should be colored with the playfield instead colored with the background. It's hard to see in the video, but basically there are just blocks of grey in the rainbow, cat tart body, and background that flash on and off for no apparent reason.
I might try to break this kernel down like I did before to figure out what is wrong, but I don't know for sure if there might just be something wrong with my system. I would appreciate it if some of you could test this on all your systems to see what is displayed versus Stella. Especially if you have a light-sixer. If this turns out to be a widespread issue, I will see what I can do.
The left difficulty switch pauses the cat animation, and the right one pauses the cat + rainbow animation. You can use the color switch to select NTSC or PAL mode, so if you have a PAL system, you can test it too!
(In case there is any confusion, please test "nyancat.bin".
"cycle_50_PF2_write_glitch_test.bin" is just included so you can test it out if you want to.)
Edited by JeremiahK, Fri Oct 12, 2018 10:21 PM.
Posted Sat Oct 13, 2018 11:46 AM
After looking at the code and doing some testing, I have discovered that the problem is not in the kernel. The frame's PF graphics are stored in RAM, and somehow the code that pushes the graphics into RAM is not working as expected in the light-sixer. I will look deeper into this later.
Edited by JeremiahK, Sat Oct 13, 2018 11:47 AM.
Posted Sat Oct 13, 2018 11:30 PM
All right, so since the playfield was acting up, I decided to test Adventure, since it uses playfield graphics extensively. And the game doesn't work at all. So it seems I have another light-sixer on my hands that needs to be repaired. Not exactly what I wanted, but thankfully I can leave my code alone now.
Edited by JeremiahK, Sat Oct 13, 2018 11:30 PM.
Free Games and More →
Buy, Sell, and Trade →
Buy, Sell, and Trade →
Atari Systems →
Atari 2600 →
Atari Systems →
Atari 2600 →
Atari 2600 Programming →
batari Basic →
0 members, 0 guests, 0 anonymous users