Jump to content

Photo

The Titlescreen Kernel


154 replies to this topic

#51 RevEng OFFLINE  

RevEng

    River Patroller

  • Topic Starter
  • 3,357 posts
  • bit player
  • Location:Canada

Posted Thu Oct 7, 2010 9:50 AM

*Edit* Would it be possible for a game to have two seperate title screens, as long as they are stored in different banks? Also can you have sound with the title screens?

RevEng, I have download and printed out your documentation and its very good. Thanks again for all the hard work that you put into this. I truly feel that we have not come even close to maxing out the potential of batari Basic programming for the 2600!

-Disjaukifa

Unfortunately it's not possible to have 2 different title screens, even if they're stored in 2 different banks. You do have some limited ability to change what graphic is being displayed, as shown in the animation example.

Sound is definitely a possibility. You call the titlescreen drawing routine with a gosub, but otherwise it acts the same as a bB drawscreen command, so you can control sound just as you would in a game.

Agreed on bB programming having even better days ahead of it. When batari gets around to coding a DPC+ kernel I'm positive you're going to see a lot of the compromises in the present bB kernels vanish. (blank lines, losing a missile for colors, etc)

#52 disjaukifa OFFLINE  

disjaukifa

    River Patroller

  • 2,125 posts
  • Berzerker In Training
  • Location:Research Triangle North Carolina

Posted Thu Oct 7, 2010 9:53 AM


*Edit* Would it be possible for a game to have two seperate title screens, as long as they are stored in different banks? Also can you have sound with the title screens?

RevEng, I have download and printed out your documentation and its very good. Thanks again for all the hard work that you put into this. I truly feel that we have not come even close to maxing out the potential of batari Basic programming for the 2600!

-Disjaukifa

Unfortunately it's not possible to have 2 different title screens, even if they're stored in 2 different banks. You do have some limited ability to change what graphic is being displayed, as shown in the animation example.

Sound is definitely a possibility. You call the titlescreen drawing routine with a gosub, but otherwise it acts the same as a bB drawscreen command, so you can control sound just as you would in a game.

Agreed on bB programming having even better days ahead of it. When batari gets around to coding a DPC+ kernel I'm positive you're going to see a lot of the compromises in the present bB kernels vanish. (blank lines, losing a missile for colors, etc)


Hmmm ok thanks for the response! I need to dive more into the documentation you provided and start really messing with it. Thanks again for all your hard work you put into this!!!

-Disjaukifa

#53 abaudrand OFFLINE  

abaudrand

    Chopper Commander

  • 208 posts

Posted Thu Oct 7, 2010 12:21 PM

Agreed on bB programming having even better days ahead of it. When batari gets around to coding a DPC+ kernel I'm positive you're going to see a lot of the compromises in the present bB kernels vanish. (blank lines, losing a missile for colors, etc)

Any idea (or rumors) about a release schedule? I wish I don't have to rewrite my whole game...
For the moment I can't make the TSkernel flicker: Do you use a variable for it? I'm using a bit of the variable "a" as tag for flickering and the detection seems in conflict with it.
Regards.

Edited by abaudrand, Thu Oct 7, 2010 12:21 PM.


#54 RevEng OFFLINE  

RevEng

    River Patroller

  • Topic Starter
  • 3,357 posts
  • bit player
  • Location:Canada

Posted Thu Oct 7, 2010 1:02 PM

Any idea (or rumors) about a release schedule? I wish I don't have to rewrite my whole game...
For the moment I can't make the TSkernel flicker: Do you use a variable for it? I'm using a bit of the variable "a" as tag for flickering and the detection seems in conflict with it.
Regards.

batari mentioned it once or twice, but I wouldn't count on it popping anytime soon - he has his hands full with other projects too. In any case, I'd expect you'd only need to tweak your existing game to get the benefits.

To flicker the TSKernel, you could just alternate the gosub calls with drawscreen calls, like...

main
 gosub titledrawscreen bank2
 drawscreen
 rem insert some game logic here
 goto main

But I think some of the minikernels that use flickerblinds might not perform correctly when you do that. The TSKernel tracks the frame with a temp variable that the bB kernel is likely to wipe.

#55 abaudrand OFFLINE  

abaudrand

    Chopper Commander

  • 208 posts

Posted Thu Oct 7, 2010 1:23 PM

I thought the TSkernel include a drawscreen function. I'm stuck for the moment but I will do another attempt tommorow. (when I'm stuck on a problem, I let my brain compute it while sleeping).

#56 RevEng OFFLINE  

RevEng

    River Patroller

  • Topic Starter
  • 3,357 posts
  • bit player
  • Location:Canada

Posted Thu Oct 7, 2010 1:39 PM

:)

The TSKernel uses the "gosub titledrawscreen" as its drawscreen.

#57 disjaukifa OFFLINE  

disjaukifa

    River Patroller

  • 2,125 posts
  • Berzerker In Training
  • Location:Research Triangle North Carolina

Posted Thu Oct 7, 2010 1:43 PM

:)

The TSKernel uses the "gosub titledrawscreen" as its drawscreen.


Not to ask an off-topic question but what is TSKernel? I've done a search and didn't see much? I know Random Terrain's website has a little info on kernels, but I only remember seeing players life, racing timer and titlescreen. What other kernels are there?

-Disjaukifa

#58 RevEng OFFLINE  

RevEng

    River Patroller

  • Topic Starter
  • 3,357 posts
  • bit player
  • Location:Canada

Posted Thu Oct 7, 2010 1:54 PM

Not to ask an off-topic question but what is TSKernel?

It's the Titlescreen Kernel, when I get tired of writing the name a bunch of times. ;)

I'm not sure what other kernels exist.

#59 disjaukifa OFFLINE  

disjaukifa

    River Patroller

  • 2,125 posts
  • Berzerker In Training
  • Location:Research Triangle North Carolina

Posted Thu Oct 7, 2010 1:55 PM


Not to ask an off-topic question but what is TSKernel?

It's the Titlescreen Kernel, when I get tired of writing the name a bunch of times. ;)

I'm not sure what other kernels exist.


:_( I knew that . . . . no I didn't . . .

#60 RevEng OFFLINE  

RevEng

    River Patroller

  • Topic Starter
  • 3,357 posts
  • bit player
  • Location:Canada

Posted Thu Oct 7, 2010 6:01 PM

:_( I knew that . . . . no I didn't . . .

:) No frownie required - its not like I announced the name variation anywhere. I just started using it.

But I won't object if anybody refers to it as TSKernel, TSK, the title thingee, or whatever. "The Titlescreen Kernel" is a bit much to type over and over again.

#61 codyr783 OFFLINE  

codyr783

    Moonsweeper

  • 444 posts

Posted Sat Oct 16, 2010 4:38 PM

Would it be possible to add some of these to your game itself? I was wanting to use the title for a horizon in the background.

#62 yuppicide OFFLINE  

yuppicide

    I am the Black Knight. Give me your money!

  • 6,933 posts
  • Location:New Jersey

Posted Sat Oct 16, 2010 5:07 PM

Interesting question cody.. I don't know ASM, so I don't know how Rev's code works, but let's say we have a TITLE only.. is it possible to move some sprites around while the title is being shown?

#63 RevEng OFFLINE  

RevEng

    River Patroller

  • Topic Starter
  • 3,357 posts
  • bit player
  • Location:Canada

Posted Sat Oct 16, 2010 6:36 PM

Well, it's not possible with the code as it is now.

With some modification to the bB kernel, it's possible that one could have a "topminikernel" for stuff like sunrise displays. But in truth I'd like for such an interface to be official before I started modifying minikernels for it.

#64 Random Terrain OFFLINE  

Random Terrain

    Visual batari Basic User

  • 24,915 posts
  • Controlled Randomness
    Replay Value
    Nonlinear
  • Location:North Carolina (USA)

Posted Sat Oct 16, 2010 9:07 PM

Well, it's not possible with the code as it is now.

With some modification to the bB kernel, it's possible that one could have a "topminikernel" for stuff like sunrise displays. But in truth I'd like for such an interface to be official before I started modifying minikernels for it.

Sooner or later, you guys with brains are going to make it so every bB game will look so good and professional from start to finish that Atari 2600 gamers will weep with joy. They'll begin to wonder if Imagic or Activision started making Atari 2600 games again.

#65 atari2600land OFFLINE  

atari2600land

    Game Gear>Game Boy

  • 8,177 posts
  • Location:Salem, Oregon

Posted Thu Nov 18, 2010 4:07 AM

OK, I've had it. I need help. Why won't this file make my game work? It compiles fine, but I get a blank screen.

Attached Files



#66 RevEng OFFLINE  

RevEng

    River Patroller

  • Topic Starter
  • 3,357 posts
  • bit player
  • Location:Canada

Posted Thu Nov 18, 2010 5:58 AM

The file itself looks fine.

Its set to be the first copy of the 48x1 data. Are you sure there isn't another file also set to be the first copy of 48x1?

If not, post or PM all the files and I can see what I can do about it.

[Edit - also, make sure the .bin file created was the right size]

Edited by RevEng, Thu Nov 18, 2010 6:37 AM.


#67 atari2600land OFFLINE  

atari2600land

    Game Gear>Game Boy

  • 8,177 posts
  • Location:Salem, Oregon

Posted Thu Nov 18, 2010 9:03 AM

Its set to be the first copy of the 48x1 data. Are you sure there isn't another file also set to be the first copy of 48x1?

Yes, I'm sure.

[Edit - also, make sure the .bin file created was the right size]

There's the problem, the file is only 6k. I hadn't noticed that before. It's supposed to be 16k.
edit: when I remark it out with a semicolon, the game works fine.

#68 RevEng OFFLINE  

RevEng

    River Patroller

  • Topic Starter
  • 3,357 posts
  • bit player
  • Location:Canada

Posted Thu Nov 18, 2010 9:24 AM

There's the problem, the file is only 6k. I hadn't noticed that before. It's supposed to be 16k.

Ok, so that's the start. Every once and a while bB spits out an incomplete binary due to a syntax error or similar issue, and except for the bad size its not obvious there was a problem.

Just to make sure I wasn't missing anything, I copied your 48x1_1_image file into one of the examples and it compiled and displayed just fine.

If you comment out the draw_48x1_1 line from titlescreen_layout.asm does everything compile fine? If so, maybe you've run out of space.

#69 atari2600land OFFLINE  

atari2600land

    Game Gear>Game Boy

  • 8,177 posts
  • Location:Salem, Oregon

Posted Thu Nov 18, 2010 10:39 AM

OK, I am officially an idiot. I found the source of the problem. It had to do with the older copy of the titlescreen kernel I had in there earlier. The code was pointing to the wrong file folder. Everything's fixed now.

#70 RevEng OFFLINE  

RevEng

    River Patroller

  • Topic Starter
  • 3,357 posts
  • bit player
  • Location:Canada

Posted Thu Nov 18, 2010 11:29 AM

No worries. I'm just glad to hear there's nothing for me to fix! :D

#71 atari2600land OFFLINE  

atari2600land

    Game Gear>Game Boy

  • 8,177 posts
  • Location:Salem, Oregon

Posted Fri Nov 19, 2010 6:41 AM

Do we already know that "set debug cyclescore" does not work with the titlescreen kernel when the game is on the title screen? Because it doesn't. If we already knew that, never mind!

#72 RevEng OFFLINE  

RevEng

    River Patroller

  • Topic Starter
  • 3,357 posts
  • bit player
  • Location:Canada

Posted Fri Nov 19, 2010 8:44 AM

I knew, but it's a good point to explicitly state.

If you're doing anything intensive in a titlescreen loop, it's probably a good idea to double-check you're not pushing more than the usual 262/312 scanline counts. (alt+l in stella)

#73 diogoandrei OFFLINE  

diogoandrei

    Chopper Commander

  • 210 posts
  • Location:Brazil

Posted Sat Dec 25, 2010 7:43 AM

This is really really nice... I've been testing it for quite some hours now - REAL FUN! And it works really good, congrats!

#74 RevEng OFFLINE  

RevEng

    River Patroller

  • Topic Starter
  • 3,357 posts
  • bit player
  • Location:Canada

Posted Sat Dec 25, 2010 8:36 AM

Thanks diogoandrei! I'm glad you're enjoying it!

#75 SuperNESFreak OFFLINE  

SuperNESFreak

    Space Invader

  • 24 posts

Posted Fri Dec 31, 2010 5:40 AM

Hey,

This is REALLY good. Hopefully I'll be able to implement it in my 'Going Dotty' game (PS. Thanks a lot for all the help with that!)

I saw that the compiled BIN is 16kb, which seems kinda a lot for a titlescreen, whereas my game is only 2-3kb so far. Is there a lite version of this/how far can it be squeezed down?

Also, why does the Robotron logo flicker? Just wondering.

Looking awesome. Keep up the great work; you get awesome sauce.




0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users