Jump to content

Recommended Posts

So I got out my 7800 a few days ago, and I've been at this all night trying to make this. Five hours I've been working on this, and I have a title screen done. So here is the first attempt for a title screen for GoSub for the Atari 7800. It's using Atari 7800 BASIC (Like I could do something like this for an advanced machine in assembly.)

post-9475-0-13595900-1559043516.png

 

gosub.bas.bin

  • Like 6

Share this post


Link to post
Share on other sites

Hi Chris

 

plays very well.....maybe use another colour for the sub?

How about GREY or YELLOW ?

Just a suggestion....great to see Gosub ported for the 7800.

Lmk...if you need a level designer

Share this post


Link to post
Share on other sites

I think a yellow sub is out of the question because of the Beatles.

Anyway, I simplified the code a lot because I discovered the 'memcpy' function. Because of this, the game is now 128k with RAM though.

I also changed the coral colors to two shades of green.

post-9475-0-34719900-1559243672.png

gosub9.zip

Share this post


Link to post
Share on other sites

begging for help time again.

Say I have this in the last bank:

 

    if levelnumber=1 then memcpy whichmap screen1map 400 : treasurex=128 : treasurey=30 : xpos=24 : ypos=116 : keyy=200 : keygot{0}=1
    if levelnumber=2 then memcpy whichmap screen2map 400 : treasurex=24 : treasurey=45 : xpos=24 : ypos=126 : keyx=134 : keyy=78 : keygot{0}=0
    if levelnumber=3 then memcpy whichmap screen3map 400 : treasurex=44 : treasurey=35 : xpos=20 : ypos=126 : keyx=60 : keyy=100 : keygot{0}=0
    if levelnumber=4 then memcpy whichmap screen4map 400 : treasurex=77 : treasurey=77 : xpos=20 : ypos=126 : keyy=200 : keygot{0}=1   
    plotmap whichmap 1 0 0 20 20
 

 

And screen1-4maps are in bank 2. How would I get the program to identify the bank and then display it?

Share this post


Link to post
Share on other sites

You can call loadrombank to bank-switch to bank 2, just prior to your code running. The last bank will still be in place (as it always is) and bank 2 will be active.

Share this post


Link to post
Share on other sites
    loadrombank bank2
    
    if levelnumber=4 then memcpy whichmap screen4map 400 : treasurex=20 : treasurey=136 : keyx=67 : keyy=57 : xpos=20 : ypos=116 : keygot{0}=0

This is what I got:

post-9475-0-98854300-1559264762.png

Share this post


Link to post
Share on other sites

All of your graphics are included in bank 3, which was switched away to activate the data in bank 2. Add a "loadrombank bank3" after the if...then clauses.

Share this post


Link to post
Share on other sites

Post a zip with the bas and images, and I can take a look. It's easier to debug if I can replicate the issue.

Share this post


Link to post
Share on other sites

The game isn't crashing - I can see it run in the MAME debugger, and if you hit the pause button it turns the screen grey as expected.

 

The reason your graphics are "blanked" is because you've imported your graphics into bank 3, but your main game loop with drawscreen is running out of bank 2.

 

You either need to keep your graphics in the same bank as that drawscreen loop, or you need to import the graphics into bank 8 where they can be permanently seen from any bank.

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