Jump to content

Photo

Railslider WIP


39 replies to this topic

#26 Lillapojkenpćön OFFLINE  

Lillapojkenpćön

    Star Raider

  • Topic Starter
  • 97 posts

Posted Mon Oct 23, 2017 6:50 AM

 

 
 at first glance
 
 line 973
 
 
   temp5 = (_PEEK_Frame_Counter) + 1 : _POKE_Frame_Counter  temp5 : on temp5 goto donef1 donef1 f1 f22 f33 f44
 
 
 
 unless you're limiting frame counter to 4 somewhere I didn't see yet,
 temp5 could go up to 16 and you've only got 6 target labels

 

That was the cause of my first bug that took me 3 months to figure out, so I'm not making that mistake again :)

but thanks for the help everybody.

I think this line was the culprit..   I made a on goto jump and tried to return from it like this.. if _PEEK_Frame_Counter < 3 then goto _roger else goto _roger2

It stopped crashing when i changed the nybble counter to a regular old bit.. after changing exactly everything else..

 

I thought PRGE would be a good deadline for a NEW DEMO so here it is.

Hold down on any joystick while booting or restarting to start with 9900 points and 5 megablast if you wanna see the new BOSS and SPECIALATTACK quicker.

 

 


Edited by Lillapojkenpćön, Sat Feb 24, 2018 8:16 PM.


#27 sramirez2008 ONLINE  

sramirez2008

    River Patroller

  • 2,508 posts
  • Stella Foreva
  • Location:Houston

Posted Mon Oct 23, 2017 10:39 AM

Wow, we were discussing this game at PRGE.  Thanks for providing the latest ROM.  Hope to see it on cart one day. :)



#28 Lillapojkenpćön OFFLINE  

Lillapojkenpćön

    Star Raider

  • Topic Starter
  • 97 posts

Posted Sat Feb 24, 2018 5:11 PM

New demo. Hold pausebutton (firebutton on joystick2) while starting from the titlescreen to start with 099990 points

 

New enemy
Titlescreen
Titlescreen goes to gameplay demo after awhile, still very dumb player
Temporary titlescreen music (borrowed)
Robotmissiles use bresenheim line algorithm to shoot straigt at the railslider
Railslider death animation
Minor sound and graphics changes
Upper robots move behind rails
Can get to boss from megablast
Can pause anytime
Correct hitboxes and hit-detection every frame instead of every other
Doesn't overcycle!
 
Attached File  Railslider PAL60 - Demo 6.bas.bin   32KB   31 downloads


#29 Lillapojkenpćön OFFLINE  

Lillapojkenpćön

    Star Raider

  • Topic Starter
  • 97 posts

Posted Sat Feb 24, 2018 7:44 PM

Question #1
I'm having some problems understanding how the 160 pixel wide screen and the player1x variabel that can count all the way to 255 works together when getting player1 to enter or exit the side of the screen with masking..

I thought 0 would be for making it enter from the right side (but I'm using 160 now instead) and 153 to enter from the left.. for an eight pixel wide sprite.

But for 153 to work right as starting position I have to do this when it gets to 161.. if player1x=161 then player1x=0, to get it to enter smoothly without teleporting a couple pixels somewhere in the middle of the screen, I also tried 248 as starting position to not have to roll the counter manually, and it works sometimes but sometimes teleports crazy.

But when it comes back and I want to put it of the screen I have to use if player1x= 248 || player1x= 153 then player1y=200, It's as if it's sometimes 248 and sometimes 153, where does that inconsistancy come from? What numbers should I be using?



#30 Lillapojkenpćön OFFLINE  

Lillapojkenpćön

    Star Raider

  • Topic Starter
  • 97 posts

Posted Wed Feb 28, 2018 9:19 PM

Question #2

Woops, I was shure it didn't overcycle anymore because stella didn't show a hint of it, and it used to show it allmost exactly like my TV..

Does it not show when vblank takes to long? Because I moved my pushes and pulls there.

Tried it on real hardware today for the first time in a year (because of homelessness and all my stuff in storage) and it overcycled, but pretty evenly and jitterless, makes me think it's vblank?

 

I could easily get rid of player9 and use those freed variables to get rid of the pushes and pulls, but I really like that thing and I would like to first make shure I'm using vblank and overscan in a balanced way and see if it's still to much code before I sacrifice something, Is there any emulation that will allow me to see any progress? Or else what can I do If I have no real hardware?

 

Does this look like way to much for vblank first of all?

 

   vblank

   goto _vblank bank3
 
 
_vblank
 
 if !_NUSIZ1{3} && b{2} then goto __Done2
 if missile0y>=180 ||  pfscorecolor=$BE  then goto __Done2
 if b{4} then goto __Done2
 if player0y>230   then goto __Done3
 
   stack 70
   pull temp2 temp3 
 
 _tempspeed=0.10+_robotspeed
   temp7 = _error_accumulator_3
 
   if     _delta_x_3 > _delta_y_3 then goto _Skip_Chase1
 
   _error_accumulator_3 = _error_accumulator_3 - _delta_x_3
   if    temp7  < _error_accumulator_3 then _error_accumulator_3 = _error_accumulator_3 + _delta_y_3  else goto _Skip_Chase2
_Skip_Chase1
 
 if b{1}  then  _M0_L_R = _M0_L_R + _tempspeed  else _M0_L_R = _M0_L_R - _tempspeed 
      if     _delta_x_3 < _delta_y_3 then goto _Skip_Chase2 
 
   _error_accumulator_3 = _error_accumulator_3 - _delta_y_3
   if    temp7  < _error_accumulator_3 then _error_accumulator_3 = _error_accumulator_3 + _delta_x_3 else goto __Done
_Skip_Chase2
 
 if b{0}  then _M0_U_D = _M0_U_D + _tempspeed  else _M0_U_D = _M0_U_D - _tempspeed 
 
__Done
 
    stack 72
 
   push temp2 temp3

 

__Done2

 

   asm
   lda  _Points_Roll_Up
   beq  No_Points_To_Add
   dec  _Points_Roll_Up
   sed
   clc
   lda  _sc3
   adc  #1
   sta  _sc3
   lda  _sc2
   adc  #0
   sta  _sc2
   lda  _sc1
   adc  #0
   sta  _sc1
   cld
No_Points_To_Add:
end
 
__Done3
 
 if pfscorecolor=$40 then pfscorecolor=$4E : b{5}=1
 
  if var2=251 then var2=250
  if  var1=251 then var1=250
 

    return otherbank



#31 Random Terrain OFFLINE  

Random Terrain

    Visual batari Basic User

  • 28,779 posts
  • Controlled Randomness
    Replay Value
    Nonlinear
  • Location:North Carolina (USA)

Posted Wed Feb 28, 2018 11:35 PM

Have you looked at these sections:

 

randomterrain.com/atari-2600-memories-batari-basic-commands.html#dpc_news_bad

 

randomterrain.com/atari-2600-memories-batari-basic-commands.html#dpc_vblank



#32 Lillapojkenpćön OFFLINE  

Lillapojkenpćön

    Star Raider

  • Topic Starter
  • 97 posts

Posted Thu Mar 1, 2018 11:24 AM

Yup, That's all I have to go by, but if overscan has 2398 cycles available, then 524 cycles in vblank seems like quite a lot (don't know what it's down to now tho?) BB.1.1d.reveng40?

And I also don't know how many cycles the pushing and pulling takes? So I'm just using my sixth sense to know if I'm in the right ballpark.

 

It would still generate a normal display from time to time, does that mean it's not overcycling by an obnoxious amount?

When it didn't what happened was that the top of the screen moved down like a pixel and the top wall turned purple.



#33 Random Terrain OFFLINE  

Random Terrain

    Visual batari Basic User

  • 28,779 posts
  • Controlled Randomness
    Replay Value
    Nonlinear
  • Location:North Carolina (USA)

Posted Thu Mar 1, 2018 5:17 PM

All I know is that they recommend that we don't use vblank when using DPC+.



#34 Lillapojkenpćön OFFLINE  

Lillapojkenpćön

    Star Raider

  • Topic Starter
  • 97 posts

Posted Thu Mar 1, 2018 9:17 PM

That seems to be only if you want to make shure your code works with updated versions of the kernel included in bB, I can finish the game with this one.  :)

 

Would someone with a harmony encore be so kind and test these three for me? They also have some more fixes I forgot in the last one.

 

Attached File  Railslider PAL60 Test Nr.2.bas.bin   32KB   23 downloads

Attached File  Railslider PAL60 Test Nr.3.bas.bin   32KB   20 downloads

Attached File  Railslider PAL60 Test Nr.4.bas.bin   32KB   26 downloads

 

And report back which Nr. works or jitters the least? Rating them from worst to best.

That would be awesome!  :thumbsup:


Edited by Lillapojkenpćön, Mon Mar 5, 2018 5:57 PM.


#35 sramirez2008 ONLINE  

sramirez2008

    River Patroller

  • 2,508 posts
  • Stella Foreva
  • Location:Houston

Posted Mon Mar 5, 2018 9:46 PM

That seems to be only if you want to make shure your code works with updated versions of the kernel included in bB, I can finish the game with this one.  :)

 

Would someone with a harmony encore be so kind and test these three for me? They also have some more fixes I forgot in the last one.

 

attachicon.gifRailslider PAL60 Test Nr.2.bas.bin

attachicon.gifRailslider PAL60 Test Nr.3.bas.bin

attachicon.gifRailslider PAL60 Test Nr.4.bas.bin

 

And report back which Nr. works or jitters the least? Rating them from worst to best.

That would be awesome!  :thumbsup:

 

Just completed my testing. I used my Six Switch with an Edladdin Super Twin 78. The ROMs were loaded via my Harmony (not an Encore) cart.

 

Worst to best in terms of jitter are as follows:

Test Nr. 4

Test Nr. 3

Test Nr. 2 (very smooth)

 

The pause function (Edladdin Player2 Buttons) works, but whenever I tried to execute a megablast (Edladdin Player1 Buttons), the ROM crashes, meaning that my screen goes black.

 

Love the updates to the game (e.g. Pulse Blast?)  :thumbsup: 



#36 Lillapojkenpćön OFFLINE  

Lillapojkenpćön

    Star Raider

  • Topic Starter
  • 97 posts

Posted Sat Mar 31, 2018 11:41 AM

Thanks to my trusty tester sramirez2008 I could try to optimize my game and even managed to get rid of the stack usage.

Only one minor problem.. It doesn't boot up on my harmony encore anymore, what can cause that?

 

When the yingyang has spun for to long and I turn off the console I think I see the titlescreen come on for a millisecond.



#37 sramirez2008 ONLINE  

sramirez2008

    River Patroller

  • 2,508 posts
  • Stella Foreva
  • Location:Houston

Posted Sun Apr 1, 2018 8:54 PM

Oh no...someone please help.  I would love to see this game have a cart release. :)



#38 TrekMD OFFLINE  

TrekMD

    River Patroller

  • 3,681 posts
  • Location:Coral Gables, FL

Posted Sun Apr 1, 2018 9:41 PM

My issue has been time.  I will have to try to give it a spin to give feedback using real hardware.



#39 Random Terrain OFFLINE  

Random Terrain

    Visual batari Basic User

  • 28,779 posts
  • Controlled Randomness
    Replay Value
    Nonlinear
  • Location:North Carolina (USA)

Posted Sun Apr 1, 2018 9:47 PM

Thanks to my trusty tester sramirez2008 I could try to optimize my game and even managed to get rid of the stack usage.

Only one minor problem.. It doesn't boot up on my harmony encore anymore, what can cause that?

 

When the yingyang has spun for to long and I turn off the console I think I see the titlescreen come on for a millisecond.

 

If you use Save As before making any significant changes to your program, you can compare the latest version of your game with the previous one that worked using something like WinMerge.



#40 Lillapojkenpćön OFFLINE  

Lillapojkenpćön

    Star Raider

  • Topic Starter
  • 97 posts

Posted Mon Apr 2, 2018 7:47 AM

That sounds useful. The problem was with my harmony encore, no need to test any of the old roms, I will upload something new to test soon.  :)






0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users