Jump to content

Photo

Bankswitching playfields

Banks

10 replies to this topic

#1 WizardBone OFFLINE  

WizardBone

    Star Raider

  • 80 posts

Posted Wed Nov 9, 2016 3:03 PM

Hey guys/girls

 

I try to use randomterrain for reference but the site seems to be down? Or my connection is blocked somehow? no ideaaa.

So I will ask here

First, I am using batarti Basic. I'm not looking for coding examples, I dont think. 

My question is,

are certain banks dedicated to certain things? I feel like I may have read that somewhere, but I may be totally wrong, haven't spent much time with bankswitching yet. (until now)
That said, my problem is this. I wrote some code and made a bunch of playfields and sprites. Now bank 1 is used up and some of bank 8 too it seems. I know 32k may be to much for my first project, should be using smaller, but i'm just playing around i'd imagine my question would apply to any amount of banks?

 

I managed to put my sprites in bank 2 no problem, but when I tried the same for playfields, it was a no go. Rolling screens.lolll

Maybe im just coding it wrong, or maybe playfield can only go in bank 1? I have no idea yet and cant find where I think i read something about it lol.

 

So, yeah thats my questions focus,  are banks dedicated? no is a cool answer. But if yes and you got a link or info please share : ) 



#2 gauauu ONLINE  

gauauu

    Moonsweeper

  • 309 posts
  • Location:Illinois

Posted Wed Nov 9, 2016 3:12 PM

Hey, you'd likely get more response if you posted this in the dedicated Batari Basic forum. This one tends to me more filled with assembly language folks.



#3 WizardBone OFFLINE  

WizardBone

    Star Raider

  • Topic Starter
  • 80 posts

Posted Wed Nov 9, 2016 3:13 PM

Thanks, Honestly I think someone said that to me last time I posted. Sorry guys! I knew that... 



#4 gauauu ONLINE  

gauauu

    Moonsweeper

  • 309 posts
  • Location:Illinois

Posted Wed Nov 9, 2016 3:24 PM

Probably me, I think my last 5 posts in this forum have been referring people that direction  :)

 

(I'm not bothered by posts here about it, it's just that I don't know anything about BB but want to help people get a useful answer)



#5 WizardBone OFFLINE  

WizardBone

    Star Raider

  • Topic Starter
  • 80 posts

Posted Wed Nov 9, 2016 3:44 PM

haha thats kinda funny yet annoying for you. It was useful actually, I dunno how I keep missing that forum when I come to this site lol I think I may have found a close enough answer there, thanks! u helped after all lol



#6 doctorclu OFFLINE  

doctorclu

    ******Blue Max****** *****Class 4***** **Moon Master**

  • 7,023 posts
  • Captain - Class 2
  • Location:Dallas, TX - U.S.A.

Posted Fri Feb 10, 2017 12:56 PM

Ok, an ASSEMBLY question:  :)   What tools, code and what-not is needed to add a background image?

 

I want to add graphical enhancements to Joust in the background.

 

Also, need a good recommendation for an assembler.  Would Distella work as a assembler/disassembler? 

 

Thanks!



#7 gauauu ONLINE  

gauauu

    Moonsweeper

  • 309 posts
  • Location:Illinois

Posted Fri Feb 10, 2017 1:41 PM

 What tools, code and what-not is needed to add a background image?

 

Unfortunately, for hacking an existing game, there's not an easy answer.  The playfield is generally updated as part of the display kernel, but the details of how it goes from storage on cartridge rom, processed during the game logic, and then drawn to the screen during the kernel, can completely vary from game to game.  You'd have to reverse engineer joust to figure out how they do it.  (on top of that, some games use hardware collisions with the playfield to do game collision detection, some don't, so you'd have to figure that out as well.)

 

That all being said, I have a simple playfield editor tool that I built to translate playfield graphics into data that can be used in a game.  You can draw, and it will generate playfield data (upside-down, which is usually easier to handle).  But to use that data, you'd have to really understand assembly and how the atari works.

 

 

Also, need a good recommendation for an assembler.  Would Distella work as a assembler/disassembler? 

 

People here tend to use dasm.  There are some other good assemblers for 6502 out there (ca65 for example), but I'd recommend using dasm for atari development, as you'd be able to get more help from people if you use it.



#8 doctorclu OFFLINE  

doctorclu

    ******Blue Max****** *****Class 4***** **Moon Master**

  • 7,023 posts
  • Captain - Class 2
  • Location:Dallas, TX - U.S.A.

Posted Fri Feb 10, 2017 3:57 PM

Thanks Gauauu.  I'll try that shortly.

 

The assembly source I'll be playing with is this:

 

Attached File  Joust (07-05-1983) (Atari - GCC, Mike Feinstein, Kevin Osborn) (CX2691) (Prototype).zip   35.73KB   35 downloads



#9 Nukey Shay OFFLINE  

Nukey Shay

    Sheik Yerbouti

  • 21,637 posts
  • Location:The land of Gorch

Posted Sun Feb 19, 2017 6:25 AM

Good luck with that...the current display looks to be kinda busy.

#10 doctorclu OFFLINE  

doctorclu

    ******Blue Max****** *****Class 4***** **Moon Master**

  • 7,023 posts
  • Captain - Class 2
  • Location:Dallas, TX - U.S.A.

Posted Sun Feb 19, 2017 11:43 AM

:D   True.  I actually decided against a background to Joust for a different reason.  Why the background could enhance the platform look, the player character would not be able to interact with the enhanced look.  

 

That said, thanks to this thread I learned of background tools if I need for another project in the future.



#11 Nukey Shay OFFLINE  

Nukey Shay

    Sheik Yerbouti

  • 21,637 posts
  • Location:The land of Gorch

Posted Mon Feb 20, 2017 6:31 AM

What I meant was that there is a reason the platforms are flat symmetrical with no detail...the program is (potentially) repositioning objects while displaying them. No cycle time to waste altering their appearance, just set it and forget it, and turn them off after HMOVE. Color shading the background might be barely possible with the existing kernel, tho.




0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users