Jump to content
RevEng

titlescreen kernel

Recommended Posts

Got it now. I got one to work. Got a simple skull picture to display. When I try to do Activision logo, it comes out as one big blur.

Are you converting the graphic to Black and White? If it can't distinguish color from background it will be all 1's or 0's.

 

-Jeff

Share this post


Link to post
Share on other sites

Has anyone actually tried putting this in a game they were working on before? Well, I just did and apparently I did something wrong because the guy isn't where he's supposed to be. I attached the .bas file I'm working on too, just in case it's needed.

post-9475-128050371958_thumb.png

ag4073010.bas

Share this post


Link to post
Share on other sites

I took a quick look.

 

The interesting thing is I rem'ed out the gosub and added a goto to your game setup the same thing happenened, even though the kernel wasn't called.

 

I'll dig a bit deeper later today.

Share this post


Link to post
Share on other sites

The titlescreen kernel wasn't the culprit; there just a small bug in your basic.

 

When your game_setup routine is called, eventually you reach the "player1y=player1y+y" statement in the joystick loop. But y isn't initialized before that loop, so whatever it was before is added to the player1y position.

 

Your previous code worked because you didn't happen to use y until then game_setup. But when you added the titlescreen code, you also added a "y=198" in the titlepage loop.

 

If you add a "y=0" at the beginning of your game_setup routine then everything works the same as before.

Share this post


Link to post
Share on other sites

Hmm.. we have the title screen thing. Who's going to be the first person to find an "alternative" use for it in a game besides just a title screen.

Share this post


Link to post
Share on other sites

I'm working on something that might open up some additional possibilities for that...

 

post-23476-12806327897_thumb.png

titledemo.bas.bin

 

...the "advanced" 48x1 minikernel can scroll anywhere in an image that can be up to 256 lines high.

 

Used creatively you could move the index between 2 images, changing the color for each frame, to get Michael's suggested 2 color flicker bitmap.

 

Or you could move the index between more images as an ad-hoc menu, to get atari2600land's NBA team selection.

 

Or you can just skip the index and just have a full screen image of ~190 lines.

 

There's also no reason why it couldn't be adapted to a regular bB minikernel (the kind that sits above the score display) for displaying pre-rendered text.

Edited by RevEng

Share this post


Link to post
Share on other sites

Ya know. If the base for the image storage was say a harmony cart, and the location for the images was RAM instead of rom. One image could be displayed for a game level while rendering the next screen and then be able to switch to it and then the cycle continues.

 

It would be interesting to see how well the elite 3d demo(s) would look under this method

Edited by grafixbmp

Share this post


Link to post
Share on other sites

I wonder if we can use this to make a nice title screen, for example a Jungle Hunt title screen. Then when you press fire it'll go to a section in the bB program and use the ASM command to insert the whole Jungle Hunt game.

Share this post


Link to post
Share on other sites

While it's possible, its going to take a fair amount of effort on the ASM side...

 

You could include the ASM in a bB program, but you'd need to modify JH so it fit in the free banks and bank-switching played nice with bB. The VCS can start in any bank, so you need to modify the Jungle Hunt code to bankswitch to the bB bank.

 

Also, the titlescreen kernel has overscan and vblank code that matches the bB kernel, which does things in a fairly unique way, to allow for cycles and cyclescore. This code would need to be matched to the jungle hunt kernel's way of doing things, or else you'll get a big screen roll during the transition.

Share this post


Link to post
Share on other sites

Then again, we could compile the title screen .bin and Jungle Hunt and combine them together..

 

Somehow you showed a demo in the past, but I had never got it to work. I'll have to dig that thread up.

 

I'm doing some adult themed game hacks. I was thinking my Jungle Cunt hack would look nice with a better title screen.

Share this post


Link to post
Share on other sites

I have a feeling the demo might need to be reworked a bit for real hardware. I didn't have a harmony at the time, and I learned about the "starting in any bank" thing after I wrote it.

 

Also, the demo relied on the games being 4k non-bankswitched. JH is 8k, so you'd still have to rework it's ASM code to do the right thing if the 2600 started up in one of the JH banks.

Share this post


Link to post
Share on other sites

Just thought I'd post a teaser, to show you guys I'm still working on this...

 

titledemo.bas.bin

post-23476-128408283063_thumb.png

 

...it's an advanced "color by flicker" example I'm building for the docs.

 

I'm considering tossing out the "basic" variants of the minikernels, since the only real advantage they have over the "advanced" variants was a easier-to-read bitmap format. Based on the trouble a lot of people had with the formats, I'm thinking that isn't that big of an advantage. Reducing the number of minikernel choices seems the better choice.

 

It's also worth noting that Philsan has posted the latest version of L.E.M, which uses the titlescreen kernel.

  • Like 2

Share this post


Link to post
Share on other sites
I'm considering tossing out the "basic" variants of the minikernels, since the only real advantage they have over the "advanced" variants was an easier-to-read bitmap format. Based on the trouble a lot of people had with the formats, I'm thinking that isn't that big of an advantage. Reducing the number of minikernel choices seems the better choice.

Yeah, I'd rather have one version that works great and can make colorful title screens like your example. It would be less confusing. I can't wait to add a link to your new thread from the bB page. Every bB game will be able to have a more professional look. :thumbsup:

 

I'm glad you're trying to get it as perfect as possible before you post the finished product. Easy-to-use code and easy-to-understand instructions that will help us make high-quality title screens is something we've needed for years. Thanks to you, we won't have to beg you guys with big brains to make cool-looking title screens for us. We'll be able to do it ourselves and not be as much of a burden.

 

Thanks again for doing this.

Share this post


Link to post
Share on other sites

I didn't try your older versions because I was waiting for the finished product, so this might be a stupid question. Will we be able to have a title screen and switch out the data for a game over screen too? If not, would it be possible to use a less advanced version of your code to display a game over screen?

 

 

Thanks.

Share this post


Link to post
Share on other sites

Attached File titlescreen_kernel_alpha_20100726.zip (16.59K)

 

Is this the latest and greatest or is there a newer version? Just wanted to ask before I try using it. Also, could you please post the latest ZIP to the first post. Makes it a little easier to find.

 

This looks great. I can't wait to use it. Great work as always!

 

Cliff

Share this post


Link to post
Share on other sites

Thanks for the encouragement and kind words, Guys.

 

I didn't try your older versions because I was waiting for the finished product, so this might be a stupid question. Will we be able to have a title screen and switch out the data for a game over screen too? If not, would it be possible to use a less advanced version of your code to display a game over screen?

 

Not a stupid question at all. It's possible to kludge in a data change to turn in a titlescreen into a game-over screen, but it would eat variables and might not be worth it.

 

A minimal game-over addition could be done... but I'm not looking at taking on additional features until the official titlescreen kernel is released and the dust settles. If I do take it on, I'll also make a similarly optional "built with bB" logo screen.

 

Attached File titlescreen_kernel_alpha_20100726.zip (16.59K)

 

Is this the latest and greatest or is there a newer version? Just wanted to ask before I try using it. Also, could you please post the latest ZIP to the first post. Makes it a little easier to find.

 

That alpha is the only released version so far. I'm looking at releasing the latest code in a week or two, if I can get the time to work on the docs.

 

The data format is changing for the bitmap minikernels, so I could only recommend using the alpha if you're just playing around. If you're trying to build something you want to keep, then wait for the official release.

Share this post


Link to post
Share on other sites

 

The data format is changing for the bitmap minikernels, so I could only recommend using the alpha if you're just playing around. If you're trying to build something you want to keep, then wait for the official release.

 

Got it. If you need any help testing, let me know. I am thinking of maybe multibanking passthrough 2600 and writing a new game, so that would give me an opportunity to try them out then.

Edited by Cliff Friedel

Share this post


Link to post
Share on other sites

What I was thinking that since space didn't matter to me.. I'll just bump my cartridge up to say 8K or 16K.. I thought maybe two or three screens could be swapped in.. so you could give the appearance of say your title on top, and a monkey hanging off a tree branch below, but swinging.

 

I didn't try your older versions because I was waiting for the finished product, so this might be a stupid question. Will we be able to have a title screen and switch out the data for a game over screen too? If not, would it be possible to use a less advanced version of your code to display a game over screen?

 

 

Thanks.

Share this post


Link to post
Share on other sites

What I was thinking that since space didn't matter to me... I'll just bump my cartridge up to say 8K or 16K.. I thought maybe two or three screens could be swapped in. so you could give the appearance of say your title on top, and a monkey hanging off a tree branch below, but swinging.

With the present code multiple titlescreen kernels won't work, for reasons similar to those that limit you to one bB kernel at a time.

 

It's possible to animate an image within a titlescreen, so long as the animation takes 256 vertical lines or less. (so you could create 4 frames of a graphic 64 lines tall)

Share this post


Link to post
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.

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...