Shawn Posted October 8, 2008 Share Posted October 8, 2008 I'll stick with my current solution for now. I'll try to scale the sprite programmatically. Since everything else is scaled programmatically too, this seems logical. But I am afraid you will run out of RAM space that way. So, good luck! I think everyones favorite chick SARA might be in order perhaps to address the possible RAM issues? Quote Link to comment Share on other sites More sharing options...
roland p Posted October 8, 2008 Share Posted October 8, 2008 I'll stick with my current solution for now. I'll try to scale the sprite programmatically. Since everything else is scaled programmatically too, this seems logical. But I am afraid you will run out of RAM space that way. So, good luck! I think everyones favorite chick SARA might be in order perhaps to address the possible RAM issues? That would really depend on the final solution I choose. I leave every option open. Maybe I'm going to use 2 different kernels instead of a one-for-all kernel, and have more spare cycles to do stuff. Who knows... My goal is to use just plain rom for the game. Quote Link to comment Share on other sites More sharing options...
Ben_Larson Posted October 8, 2008 Share Posted October 8, 2008 With the ball, the player's ship always points to the opposite goal. So that's 180° anyway. But without the ball, the player's ship always points to the ball. How are you going to handle this? Won't 180° steps make fighting for the ball much different than now? As I see it, the only drawback to including the 90° movement is that the guy on defense wouldn't be able to see where the goal is that he's defending, at least while he's travelling laterally. But I think I could accept that tradeoff... Also, roland: very nice job so far. The use of color changes to make the grid is very innovative, although I'm still trying to figure out in my head how you'll have time to do the sprite(s). If nothing else, I think the scrolling grid alone is going to make a lot of demoscene scenesters jealous. I know I'm jealous at least. Ben Quote Link to comment Share on other sites More sharing options...
roland p Posted October 8, 2008 Share Posted October 8, 2008 With the ball, the player's ship always points to the opposite goal. So that's 180° anyway. But without the ball, the player's ship always points to the ball. How are you going to handle this? Won't 180° steps make fighting for the ball much different than now? As I see it, the only drawback to including the 90° movement is that the guy on defense wouldn't be able to see where the goal is that he's defending, at least while he's travelling laterally. But I think I could accept that tradeoff... Now that I think of it, you could still see the goal while looking at the attackers view. Also, roland: very nice job so far. The use of color changes to make the grid is very innovative, although I'm still trying to figure out in my head how you'll have time to do the sprite(s). If nothing else, I think the scrolling grid alone is going to make a lot of demoscene scenesters jealous. I know I'm jealous at least. Thanks Quote Link to comment Share on other sites More sharing options...
vdub_bobby Posted October 8, 2008 Share Posted October 8, 2008 (edited) How can you steal the ball if you can never attack your opponent from the side? Taking out 90 degree turns is pretty much fatal to gameplay IMO. Edited October 8, 2008 by vdub_bobby Quote Link to comment Share on other sites More sharing options...
+remowilliams Posted October 8, 2008 Share Posted October 8, 2008 How can you steal the ball if you can never attack your opponent from the side? Taking out 90 degree turns is pretty much fatal to gameplay IMO. Yeah, that kind of is key to the game action. Quote Link to comment Share on other sites More sharing options...
mos6507 Posted October 8, 2008 Share Posted October 8, 2008 I think I'm missing something here. At the risk of dragging the thread back a ways, I'm still hung up on the capabilities of the grid kernel. Is it possible for each square to have an independent color?? If so, I'd really like to see this just as a demo. Quote Link to comment Share on other sites More sharing options...
roland p Posted October 8, 2008 Share Posted October 8, 2008 I think I'm missing something here. At the risk of dragging the thread back a ways, I'm still hung up on the capabilities of the grid kernel. Is it possible for each square to have an independent color?? If so, I'd really like to see this just as a demo. Yes, each square can have an independent color. ballblazer_multicolor.bin Quote Link to comment Share on other sites More sharing options...
+Random Terrain Posted October 8, 2008 Share Posted October 8, 2008 I think I'm missing something here. At the risk of dragging the thread back a ways, I'm still hung up on the capabilities of the grid kernel. Is it possible for each square to have an independent color?? If so, I'd really like to see this just as a demo. Yes, each square can have an independent color. Wow, that sure is pretty. When you get done with this game, I would like to see some kind of game using that multicolored grid. Quote Link to comment Share on other sites More sharing options...
Breakpack Posted October 8, 2008 Share Posted October 8, 2008 I think I'm missing something here. At the risk of dragging the thread back a ways, I'm still hung up on the capabilities of the grid kernel. Is it possible for each square to have an independent color?? If so, I'd really like to see this just as a demo. Yes, each square can have an independent color. Wow, that sure is pretty. When you get done with this game, I would like to see some kind of game using that multicolored grid. Hmmm Quote Link to comment Share on other sites More sharing options...
vdub_bobby Posted October 8, 2008 Share Posted October 8, 2008 I think I'm missing something here. At the risk of dragging the thread back a ways, I'm still hung up on the capabilities of the grid kernel. Is it possible for each square to have an independent color?? If so, I'd really like to see this just as a demo. Yes, each square can have an independent color. Quote Link to comment Share on other sites More sharing options...
+Nathan Strum Posted October 8, 2008 Share Posted October 8, 2008 Yes, each square can have an independent color. That's amazing... beautiful, even. Quote Link to comment Share on other sites More sharing options...
Breakpack Posted October 8, 2008 Share Posted October 8, 2008 Could a 3D version of checkers be possible????!! Quote Link to comment Share on other sites More sharing options...
mos6507 Posted October 8, 2008 Share Posted October 8, 2008 I would like to see some kind of game using that multicolored grid. I want to see that more than I want to see Ballblazer. Depending on your point of view, this could be considered ultra-low-res 7-bit color 3d texture mapping. Imagine the board color cycling or blinking as well. The mind boggles. Plus, with the clever use of sprites you can probably simulate holes. Quote Link to comment Share on other sites More sharing options...
roland p Posted October 9, 2008 Share Posted October 9, 2008 (edited) I'll work some more on the 3d-engine so I can display the brown borders at the end of the playfield. Then I've also a sort of system which I can use to position elements, and finally show them on screen. I'll really try to implement the 90 deg. turns because it looked very good in the other versions. btw, I've downloaded the 7800 version and I did not know that it looked so good!, 60fps screen updates and non-pixelated drones. Compare the nes version to that Edited October 9, 2008 by roland p Quote Link to comment Share on other sites More sharing options...
+remowilliams Posted October 9, 2008 Share Posted October 9, 2008 I'll really try to implement the 90 deg. turns because it looked very good in the other versions. Keep it up - you're kicking unbelievable ass so far. Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted October 9, 2008 Share Posted October 9, 2008 Could a 3D version of checkers be possible????!! Easy. The kernel can do only a limited (fixed!) cutout view of a checkerboard and (without flicker) at most two sprites. It is intended to display a faithful Ballblazer screen, which is difficulty enough and already goes beyond the expected limitations. So don't expect any major (or even minor) graphic additions being possible. Quote Link to comment Share on other sites More sharing options...
Mayhem Posted October 9, 2008 Share Posted October 9, 2008 Btw, I've downloaded the 7800 version and I did not know that it looked so good!, 60fps screen updates and non-pixelated drones. Compare the nes version to that I'd say the 7800 is the definitive version... if you can make the 2600 version like that, all hail we are not worthy Quote Link to comment Share on other sites More sharing options...
Godzilla Posted October 9, 2008 Share Posted October 9, 2008 yea this just blows the mind. throw a pokey on-cart and make everyones head explode Quote Link to comment Share on other sites More sharing options...
birdie3 Posted October 10, 2008 Share Posted October 10, 2008 I know nothing about 2600 programming but I am impressed so far. Is it actually possible to have player sprites that can play and be seen both from side and front views? Quote Link to comment Share on other sites More sharing options...
roland p Posted October 12, 2008 Share Posted October 12, 2008 Small update, Reworked the engine, the checkerboard has now a beginning and an end. ballblazer.bin Quote Link to comment Share on other sites More sharing options...
roland p Posted October 12, 2008 Share Posted October 12, 2008 (edited) Any ideas on how to display 2 players and 2 missiles? Currently, I update every line one player. With use of VDELP1 this results in a 16 pixels wide sprite with each line occupying 2 scanlines. The code looks a bit like this: ScanLine: 0A update GRP0 0B update GRP1 1A update GRP0 1B update GRP1 2A update GRP0 2B update GRP1 etc. Since the ship is blocky anyway, I could lower the vertical resolution. And update some misiles in between: 0A update GRP0 0B update ENAM0 1A update GRP1 1B update ENAM1 2A update GRP0 2B update ENAM0 etc. With smart usage of VDEL0,1 registers I could still position the sprite on every 2 scanlines. But the positioning of the misiles (for the goal) is very coarse. And they should be on the same scanlines when in front, and at different scanlines when viewed at the side. This is the current checkerboard code: LDX sprite_data_l STX GRP0 ;0A LDX colorLine0;(3) STX COLUBK;(3) LDX colorLine0+1 STX COLUBK LDX colorLine0+2 STX COLUBK LDX colorLine0+3 STX COLUBK LDX colorLine0+4 STX COLUBK LDX colorLine0+5 STX COLUBK LDX colorLine0+6 STX COLUBK LDX colorLine0+7 STX COLUBK LDX colorLine0+8 STX COLUBK LDX colorLine0+9 STX COLUBK LDY sprite_data_r + 1 STY GRP1 SLEEP 10 ;0B LDX colorLine0 STX COLUBK LDX colorLine0+1 STX COLUBK LDX colorLine0+2 STX COLUBK LDX colorLine0+3 STX COLUBK LDX colorLine0+4 STX COLUBK LDX colorLine0+5 STX COLUBK LDX colorLine0+6 STX COLUBK LDX colorLine0+7 STX COLUBK LDX colorLine0+8 STX COLUBK LDX colorLine0+9 STX COLUBK SBC PlayfieldX_frag;(3) BCS *+2 LDX sprite_data_l + 1 STX GRP0 SLEEP 3 LDX tile_pointer + 1 ;1A LDY PLAYFIELD_DATA+1,X;(4) STY COLUBK LDY PLAYFIELD_DATA+2,X;(4) STY COLUBK LDY PLAYFIELD_DATA+3,X;(4) STY COLUBK LDY PLAYFIELD_DATA+4,X;(4) STY COLUBK LDY PLAYFIELD_DATA+5,X;(4) STY COLUBK LDY PLAYFIELD_DATA+6,X;(4) STY COLUBK LDY PLAYFIELD_DATA+7,X;(4) STY COLUBK LDY PLAYFIELD_DATA+8,X;(4) STY COLUBK LDY sprite_data_r + 2 STY GRP1 SLEEP 14 ;1B LDY PLAYFIELD_DATA+1,X;(4) STY COLUBK LDY PLAYFIELD_DATA+2,X;(4) STY COLUBK LDY PLAYFIELD_DATA+3,X;(4) STY COLUBK LDY PLAYFIELD_DATA+4,X;(4) STY COLUBK LDY PLAYFIELD_DATA+5,X;(4) STY COLUBK LDY PLAYFIELD_DATA+6,X;(4) STY COLUBK LDY PLAYFIELD_DATA+7,X;(4) STY COLUBK LDY PLAYFIELD_DATA+8,X;(4) STY COLUBK SBC PlayfieldX_frag;(3) BCS *+2 LDY sprite_data_l + 2 STY GRP0 LDX.w tile_pointer + 2 ;2A LDY PLAYFIELD_DATA+1,X;(4) STY.w COLUBK LDY PLAYFIELD_DATA+2,X;(4) STY.w COLUBK LDY PLAYFIELD_DATA+3,X;(4) STY.w COLUBK LDY PLAYFIELD_DATA+4,X;(4) STY.w COLUBK LDY PLAYFIELD_DATA+5,X;(4) STY.w COLUBK LDY PLAYFIELD_DATA+6,X;(4) STY.w COLUBK LDY PLAYFIELD_DATA+7,X;(4) STY.w COLUBK LDY sprite_data_r + 3 STY GRP1 SLEEP 14 ;LDX tile_pointer + 2 ;2B LDY PLAYFIELD_DATA+1,X;(4) STY.w COLUBK LDY PLAYFIELD_DATA+2,X;(4) STY.w COLUBK LDY PLAYFIELD_DATA+3,X;(4) STY.w COLUBK LDY PLAYFIELD_DATA+4,X;(4) STY.w COLUBK LDY PLAYFIELD_DATA+5,X;(4) STY.w COLUBK LDY PLAYFIELD_DATA+6,X;(4) STY.w COLUBK LDY PLAYFIELD_DATA+7,X;(4) STY.w COLUBK SBC PlayfieldX_frag;(3) BCS *+2 LDX sprite_data_l + 3 STX.w GRP0 nop ;3A LDX tile_pointer + 3 LDY PLAYFIELD_DATA+1,X;(4) STY COLUBK;(3) NOP LDY PLAYFIELD_DATA+2,X STY COLUBK NOP LDY PLAYFIELD_DATA+3,X STY COLUBK NOP LDY PLAYFIELD_DATA+4,X STY COLUBK NOP LDY PLAYFIELD_DATA+5,X STY COLUBK NOP LDY PLAYFIELD_DATA+6,X STY COLUBK NOP LDY PLAYFIELD_DATA+7,X;(4) STY COLUBK;(3) = 9 5 is possible ;3B LDY sprite_data_r + 4 STY GRP1 SLEEP 9 ;LDX tile_pointer + 3 LDY PLAYFIELD_DATA+1,X STY COLUBK NOP LDY PLAYFIELD_DATA+2,X STY COLUBK NOP LDY PLAYFIELD_DATA+3,X STY COLUBK NOP LDY PLAYFIELD_DATA+4,X STY COLUBK NOP LDY PLAYFIELD_DATA+5,X STY COLUBK NOP LDY PLAYFIELD_DATA+6,X STY COLUBK NOP LDY PLAYFIELD_DATA+7,X STY COLUBK SBC PlayfieldX_frag;(3) BCS *+2 ;4A LDY sprite_data_l + 4 STY GRP0 SLEEP 6 LDX tile_pointer + 4 LDY PLAYFIELD_DATA+2,X STY.w COLUBK nop LDY PLAYFIELD_DATA+3,X STY.w COLUBK nop LDY PLAYFIELD_DATA+4,X STY.w COLUBK nop LDY PLAYFIELD_DATA+5,X STY.w COLUBK nop LDY PLAYFIELD_DATA+6,X STY.w COLUBK nop LDY PLAYFIELD_DATA+7,X STY.w COLUBK ;4B LDY sprite_data_r + 5 STY GRP1 SLEEP 12 ;LDX tile_pointer + 4 LDY PLAYFIELD_DATA+2,X STY.w COLUBK NOP LDY PLAYFIELD_DATA+3,X STY.w COLUBK NOP LDY PLAYFIELD_DATA+4,X STY.w COLUBK nop LDY PLAYFIELD_DATA+5,X STY.w COLUBK nop LDY PLAYFIELD_DATA+6,X STY.w COLUBK nop LDY PLAYFIELD_DATA+7,X STY.w COLUBK SBC PlayfieldX_frag;(3) BCS *+2 ;5A LDY sprite_data_l + 5 STY GRP0 nop LDX tile_pointer + 5 LDY PLAYFIELD_DATA+2,X STY COLUBK nop LDY PLAYFIELD_DATA+3,X NOP STY COLUBK nop LDY PLAYFIELD_DATA+4,X NOP STY COLUBK nop LDY PLAYFIELD_DATA+5,X NOP STY COLUBK nop LDY PLAYFIELD_DATA+6,X NOP STY COLUBK ;5B LDY sprite_data_r + 6 STY GRP1 SLEEP 19 ;LDX tile_pointer + 5 LDY PLAYFIELD_DATA+2,X STY COLUBK nop LDY PLAYFIELD_DATA+3,X NOP STY COLUBK nop LDY PLAYFIELD_DATA+4,X NOP STY COLUBK nop LDY PLAYFIELD_DATA+5,X NOP STY COLUBK nop LDY PLAYFIELD_DATA+6,X NOP STY COLUBK SBC PlayfieldX_frag;(3) BCS *+2 ;6A LDY sprite_data_l + 6 STY GRP0 SLEEP 7 LDX tile_pointer + 6 LDY PLAYFIELD_DATA+2,X STY.w COLUBK nop LDY PLAYFIELD_DATA+3,X NOP STY.w COLUBK nop LDY PLAYFIELD_DATA+4,X NOP STY.w COLUBK nop LDY PLAYFIELD_DATA+5,X NOP STY.w COLUBK nop LDY PLAYFIELD_DATA+6,X NOP STY.w COLUBK ;6B LDY sprite_data_r + 7 STY GRP1 SLEEP 14 LDY PLAYFIELD_DATA+2,X STY.w COLUBK nop LDY PLAYFIELD_DATA+3,X NOP STY.w COLUBK nop LDY PLAYFIELD_DATA+4,X NOP STY.w COLUBK nop LDY PLAYFIELD_DATA+5,X NOP STY.w COLUBK nop LDY PLAYFIELD_DATA+6,X NOP STY.w COLUBK SBC PlayfieldX_frag;(3) BCS *+2 ;7A LDX tile_pointer + 7 LDY PLAYFIELD_DATA+2,X STY COLUBK nop LDY sprite_data_l + 7 STY GRP0 SLEEP 4 LDY PLAYFIELD_DATA+3,X NOP NOP STY COLUBK nop LDY PLAYFIELD_DATA+4,X NOP NOP STY COLUBK nop LDY PLAYFIELD_DATA+5,X NOP NOP STY COLUBK nop LDY PLAYFIELD_DATA+6,X NOP NOP STY COLUBK ;7B LDY sprite_data_r + 8 STY GRP1 SLEEP 11 LDY PLAYFIELD_DATA+2,X STY COLUBK nop LDY PLAYFIELD_DATA+3,X NOP NOP STY COLUBK nop LDY PLAYFIELD_DATA+4,X NOP NOP STY COLUBK nop LDY PLAYFIELD_DATA+5,X nop nop STY COLUBK nop LDY PLAYFIELD_DATA+6,X LDX tile_pointer + 8 STY.w COLUBK ;8A LDY PLAYFIELD_DATA+2,X STY.w COLUBK sleep 5 SBC PlayfieldX_frag;(3) BCS *+2 LDY sprite_data_l + 8 STY GRP0 LDY PLAYFIELD_DATA+3,X NOP NOP STY COLUBK nop LDY PLAYFIELD_DATA+4,X NOP NOP STY.w COLUBK nop LDY PLAYFIELD_DATA+5,X NOP NOP STY.w COLUBK nop LDY PLAYFIELD_DATA+6,X NOP NOP STY.w COLUBK ;8B LDY sprite_data_r + 9 STY GRP1 LDY PLAYFIELD_DATA+2,X STY COLUBK SLEEP 9 LDY PLAYFIELD_DATA+3,X NOP NOP STY.w COLUBK nop LDY PLAYFIELD_DATA+4,X NOP NOP STY.w COLUBK nop LDY PLAYFIELD_DATA+5,X NOP NOP STY.w COLUBK nop LDY PLAYFIELD_DATA+6,X NOP NOP STY.w COLUBK ;9A LDX tile_pointer + 9 LDY PLAYFIELD_DATA+2,X STY COLUBK nop SBC PlayfieldX_frag;(3) BCS *+2 LDY sprite_data_l + 9 STY GRP0 LDY PLAYFIELD_DATA+3,X NOP STY COLUBK nop LDY PLAYFIELD_DATA+4,X NOP NOP NOP STY COLUBK nop LDY PLAYFIELD_DATA+5,X ;LDY tile_pointer + 9;prefetch NOP NOP NOP STY COLUBK nop LDY PLAYFIELD_DATA+6,X NOP NOP NOP STY COLUBK ;9B LDY sprite_data_r + 10 STY GRP1 LDY PLAYFIELD_DATA+2,X STY COLUBK SLEEP 5 LDY PLAYFIELD_DATA+3,X NOP NOP NOP STY COLUBK nop LDY PLAYFIELD_DATA+4,X NOP NOP NOP STY COLUBK nop LDY PLAYFIELD_DATA+5,X NOP NOP NOP STY COLUBK nop LDY PLAYFIELD_DATA+6,X NOP NOP NOP STY COLUBK ;10A LDY sprite_data_l + 10 STY GRP0 SBC PlayfieldX_frag;(3) BCS *+2 LDY colorLine10_0;3 STY COLUBK;3 LDX tile_pointer + 10 nop LDY PLAYFIELD_DATA+3,X STY COLUBK nop LDY PLAYFIELD_DATA+4,X NOP NOP NOP STY.W COLUBK nop LDY PLAYFIELD_DATA+5,X NOP nop nop STY.w COLUBK nop LDY PLAYFIELD_DATA+6,X NOP nop nop STY.w COLUBK ;10B LDY PLAYFIELD_DATA+2,X STY.w COLUBK LDY sprite_data_r + 11 STY GRP1 LDY PLAYFIELD_DATA+3,X NOP NOP NOP STY.w COLUBK nop LDY PLAYFIELD_DATA+4,X NOP NOP NOP STY.w COLUBK nop LDY PLAYFIELD_DATA+5,X NOP NOP NOP STY.w COLUBK nop LDY PLAYFIELD_DATA+6,X NOP NOP LDX tile_pointer + 11 STY COLUBK ;11A SBC PlayfieldX_frag;(3) BCS *+2 LDY PLAYFIELD_DATA+2,X STY.w COLUBK LDY sprite_data_l + 11 STY GRP0 LDY PLAYFIELD_DATA+3,X STY COLUBK nop LDY PLAYFIELD_DATA+4,X NOP NOP NOP NOP STY COLUBK nop LDY PLAYFIELD_DATA+5,X NOP NOP NOP NOP STY COLUBK nop LDY PLAYFIELD_DATA+6,X NOP NOP NOP nop STY COLUBK ;11B LDY PLAYFIELD_DATA+2,X STY.w COLUBK ; LDY colorLine11_0 ; NOP ; STY COLUBK LDY sprite_data_r + 12 STY GRP1 sleep 4 LDY PLAYFIELD_DATA+3,X STY COLUBK nop LDY PLAYFIELD_DATA+4,X NOP NOP NOP NOP STY COLUBK nop LDY PLAYFIELD_DATA+5,X NOP NOP NOP NOP STY COLUBK nop LDY PLAYFIELD_DATA+6,X NOP NOP LDX colorLine12_0 STY.w COLUBK ;12A STX.w COLUBK;3 LDY sprite_data_l + 12 STY GRP0 SBC PlayfieldX_frag;(3) BCS *+2 LDY colorLine12_1 nop STY COLUBK LDX tile_pointer + 12 LDY PLAYFIELD_DATA+4,X NOP NOP NOP NOP STY COLUBK nop LDY PLAYFIELD_DATA+5,X NOP NOP NOP NOP STY.w COLUBK nop LDY PLAYFIELD_DATA+6,X NOP NOP NOP NOP STY.w COLUBK ;12B LDY PLAYFIELD_DATA,X STY COLUBK LDY sprite_data_r + 13 STY GRP1 nop LDY PLAYFIELD_DATA+3,X STY COLUBK nop LDY PLAYFIELD_DATA+4,X NOP NOP NOP NOP STY.w COLUBK nop LDY PLAYFIELD_DATA+5,X NOP NOP NOP NOP STY.w COLUBK nop LDY PLAYFIELD_DATA+6,X NOP NOP NOP LDX tile_pointer + 13 STY COLUBK ;13A LDY PLAYFIELD_DATA+3,X STY.W COLUBK LDY sprite_data_l + 13 STY GRP0 NOP SBC PlayfieldX_frag;(3) BCS *+2 nop LDY PLAYFIELD_DATA+4,X NOP NOP NOP NOP STY.w COLUBK nop LDY PLAYFIELD_DATA+5,X NOP NOP NOP NOP NOP STY COLUBK nop LDY PLAYFIELD_DATA+6,X NOP NOP NOP nop nop STY COLUBK ;13B LDY sprite_data_r + 14 STY.w GRP1 LDY PLAYFIELD_DATA+3,X sleep 5 STY COLUBK nop LDY PLAYFIELD_DATA+4,X NOP NOP NOP NOP NOP STY COLUBK nop LDY PLAYFIELD_DATA+5,X NOP NOP NOP NOP NOP STY COLUBK nop LDY PLAYFIELD_DATA+6,X NOP nop nop LDX tile_pointer + 14 STY.W COLUBK ;14A LDY PLAYFIELD_DATA+3,X STY COLUBK nop LDY sprite_data_l + 14 STY GRP0 ;skip cycle takes 7 or 8 cycles SBC PlayfieldX_frag;(3) BCS *+2 sleep 10 LDY PLAYFIELD_DATA+4,X STY COLUBK nop LDY PLAYFIELD_DATA+5,X NOP NOP NOP NOP NOP STY.w COLUBK nop LDY PLAYFIELD_DATA+6,X NOP NOP NOP NOP NOP STY.w COLUBK ;14B sleep 10 LDY PLAYFIELD_DATA+3,X STY COLUBK nop LDY sprite_data_r + 15 STY GRP1 sleep 4 LDY PLAYFIELD_DATA+4,X STY COLUBK nop LDY PLAYFIELD_DATA+5,X NOP NOP NOP NOP NOP STY.w COLUBK nop LDY PLAYFIELD_DATA+6,X nop nop nop LDX tile_pointer + 15 nop STY COLUBK ;15A LDY colorLine15_0 STY.w COLUBK LDY sprite_data_l + 15 STY GRP0 SBC PlayfieldX_frag;(3) BCS *+2 sleep 10 LDY PLAYFIELD_DATA+4,X STY COLUBK nop LDY PLAYFIELD_DATA+5,X NOP NOP NOP NOP NOP NOP STY COLUBK LDY PLAYFIELD_DATA+6,X NOP NOP NOP NOP NOP NOP STY.w COLUBK ;15B ; SLEEP 6 LDY PLAYFIELD_DATA+3,X STY.W COLUBK LDY sprite_data_r + 16 STY GRP1 nop LDY PLAYFIELD_DATA+4,X NOP NOP NOP NOP NOP NOP STY COLUBK nop LDY PLAYFIELD_DATA+5,X NOP NOP NOP NOP NOP NOP STY COLUBK ;16A SLEEP 11 LDY sprite_data_l + 16 STY GRP0 LDX tile_pointer + 16 LDY PLAYFIELD_DATA+3,X STY COLUBK nop SBC PlayfieldX_frag;(3) BCS *+2 LDY PLAYFIELD_DATA+4,X NOP NOP NOP NOP NOP NOP STY.w COLUBK nop LDY PLAYFIELD_DATA+5,X NOP NOP NOP NOP NOP NOP STY.w COLUBK nop ;16B SLEEP 12 LDY PLAYFIELD_DATA+3,X STY COLUBK LDY sprite_data_r + 17 STY GRP1 nop SLEEP 5 LDY PLAYFIELD_DATA+4,X NOP NOP NOP NOP NOP NOP STY.w COLUBK nop LDY PLAYFIELD_DATA+5,X NOP NOP NOP NOP LDX tile_pointer + 17 nop STY COLUBK ;17A SLEEP 9 LDY sprite_data_l + 17 STY GRP0 LDY PLAYFIELD_DATA+3,X sleep 5 STY COLUBK ;LDY colorLine17_0 ;sleep 6 ;STY COLUBK SBC PlayfieldX_frag;(3) BCS *+2 LDY PLAYFIELD_DATA+4,X NOP NOP NOP NOP NOP NOP NOP STY COLUBK nop LDY PLAYFIELD_DATA+5,X NOP NOP NOP NOP NOP NOP NOP STY COLUBK ;17B SLEEP 14 LDY PLAYFIELD_DATA+3,X STY COLUBK LDY sprite_data_r + 18 STY GRP1 SLEEP 3 nop LDY PLAYFIELD_DATA+4,X NOP NOP NOP NOP NOP NOP NOP STY COLUBK nop LDY PLAYFIELD_DATA+5,X NOP NOP NOP NOP NOP NOP NOP STY COLUBK ;18A SLEEP 11 LDX tile_pointer + 18 LDY PLAYFIELD_DATA+3,X STY COLUBK SBC PlayfieldX_frag;(3) BCS *+2 LDY sprite_data_l + 18 STY GRP0 SLEEP 11 nop LDY PLAYFIELD_DATA+4,X STY COLUBK nop LDY PLAYFIELD_DATA+5,X NOP NOP NOP NOP NOP NOP NOP STY.W COLUBK ;18B SLEEP 14 LDY PLAYFIELD_DATA+3,X STY COLUBK nop LDY sprite_data_r + 19 STY GRP1 LDY PLAYFIELD_DATA+4,X NOP NOP NOP NOP NOP NOP NOP NOP STY COLUBK nop LDY PLAYFIELD_DATA+5,X NOP NOP NOP NOP NOP NOP NOP STY.W COLUBK ;19A SLEEP 11 LDX tile_pointer + 19 LDY PLAYFIELD_DATA+3,X STY COLUBK nop SLEEP 3 SBC PlayfieldX_frag;(3) BCS *+2 LDY sprite_data_l + 19 STY GRP0 LDY PLAYFIELD_DATA+4,X NOP NOP NOP STY.W COLUBK nop LDA PLAYFIELD_DATA+5,X NOP NOP NOP NOP NOP NOP NOP NOP STA COLUBK ;19B SLEEP 14 LDY PLAYFIELD_DATA+3,X STY COLUBK LDY sprite_data_r + 19 STY.w GRP1 nop LDY PLAYFIELD_DATA+4,X NOP NOP NOP NOP NOP NOP NOP STY COLUBK nop LDY PLAYFIELD_DATA+5,X NOP NOP NOP NOP NOP NOP NOP NOP STY COLUBK Edited October 12, 2008 by roland p Quote Link to comment Share on other sites More sharing options...
potatohead Posted October 12, 2008 Share Posted October 12, 2008 (edited) Never mind. Just re-read your post!! Edited October 12, 2008 by potatohead Quote Link to comment Share on other sites More sharing options...
Ben_Larson Posted October 12, 2008 Share Posted October 12, 2008 Any ideas on how to display 2 players and 2 missiles? The goals are always going to be above the checkerboard when you're looking straight at them, though. So if you just don't display them when looking sideways, then can't you just use separate '2 player + 2 missile' and '2 player + checkerboard' kernels? Quote Link to comment Share on other sites More sharing options...
roland p Posted October 12, 2008 Share Posted October 12, 2008 Any ideas on how to display 2 players and 2 missiles? The goals are always going to be above the checkerboard when you're looking straight at them, though. So if you just don't display them when looking sideways, then can't you just use separate '2 player + 2 missile' and '2 player + checkerboard' kernels? I think that's an elegant solution. I'll try it. 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.