Jump to content

Photo

Bankswitching Demos/Templates


82 replies to this topic

#76 batari OFFLINE  

batari

    )66]U('=I;B$*

  • 6,666 posts
  • begin 644 contest

Posted Fri Aug 14, 2009 12:16 PM

Assuming the problem is not on my end (I will look at my code again), is there any chance MC support can be fixed? It looks really promising with it's 128K ROM and 32K RAM.

I looked into the specs - it's similar to 3E in that it maps ROM or RAM by writes to zero page addresses, and also similar to E0 in that it uses 1k blocks but there is no fixed bank except on boot. You can switch any bank into any block. Still, 4A50 is far superior and requires about the same amount of hardware to achieve.

The problem with these RAM schemes is that the creators aren't willing to produce hardware until a game exists, and programmers aren't willing to write a game for hardware that doesn't exist in large enough quantities and for a reasonable price. Hopefully, the Harmony/Melody will break through this barrier.

#77 SeaGtGruff ONLINE  

SeaGtGruff

    Quadrunner

  • 5,558 posts
  • Location:South Carolina, USA

Posted Fri Aug 14, 2009 1:49 PM

The problem with these RAM schemes is that the creators aren't willing to produce hardware until a game exists, and programmers aren't willing to write a game for hardware that doesn't exist in large enough quantities and for a reasonable price.

I still plan to create a game or two for the 4A50 scheme, even if it will only ever be playable on emulators. I'm hoping if (or once) I ever get a 4A50 game finished, supercat will still be interested in creating carts (and able to).

Hopefully, the Harmony/Melody will break through this barrier.

Are there developer's programming specs for the Harmony/Melody cart format? How much ROM and RAM will it have, and what are the bank areas and how to select them? From what little discussion I've followed about it, I presume it will be able to emulate existing bankswitching schemes, like E7, F6, F4SC, etc. But would a developer control all of that, and create a game that made maximum use of all available ROM and all available RAM? :)

Michael

Edited by SeaGtGruff, Fri Aug 14, 2009 1:52 PM.


#78 batari OFFLINE  

batari

    )66]U('=I;B$*

  • 6,666 posts
  • begin 644 contest

Posted Fri Aug 14, 2009 3:54 PM

The problem with these RAM schemes is that the creators aren't willing to produce hardware until a game exists, and programmers aren't willing to write a game for hardware that doesn't exist in large enough quantities and for a reasonable price.

I still plan to create a game or two for the 4A50 scheme, even if it will only ever be playable on emulators. I'm hoping if (or once) I ever get a 4A50 game finished, supercat will still be interested in creating carts (and able to).

Hopefully, the Harmony/Melody will break through this barrier.

Are there developer's programming specs for the Harmony/Melody cart format? How much ROM and RAM will it have, and what are the bank areas and how to select them? From what little discussion I've followed about it, I presume it will be able to emulate existing bankswitching schemes, like E7, F6, F4SC, etc. But would a developer control all of that, and create a game that made maximum use of all available ROM and all available RAM? :)

Michael

The Melody/Harmony doesn't have "bank areas" or "programming specs" per se. It's not conventional hardware with fixed logic - it's a 70 MHz, 32-bit microcontroller with 32k ROM/8k RAM, and a developer could use the existing bankswitching schemes or invent new ones. Or, a developer could use an existing scheme along with a C stub and write custom C code on the microcontroller that controls game logic.

That said, I do plan a new "bankswitching" scheme (which is really a sort of graphics coprocessing scheme) that feeds a custom kernel to the 6507 on the fly with data read from a display list.

#79 Wickeycolumbus OFFLINE  

Wickeycolumbus

    Red Sea Crosser

  • Topic Starter
  • 5,151 posts
  • Location:Michigan

Posted Sun Nov 22, 2009 12:23 AM

CommaVid added.

Attached Files



#80 Willsy OFFLINE  

Willsy

    River Patroller

  • 3,062 posts
  • Location:Uzbekistan (no, really!)

Posted Mon Nov 23, 2009 6:25 AM

Interesting topic - I'm a TI99er so please forgive my trespassing :roll:

Wondering what techniques the Atari guys are using for bankswitching?

Of course, the problem is that when you switch banks, your code is suddenly somewhere else.

There seems to be two soloutions on the TI, as suggested by Tursi:

1) Have some common code in scratch-pad ram (the 256 byte ram built into the TI console) - this will take two arguments:
a) The bank to select
b) The address in the new bank to switch to

This neatly gets around the problem.

2) Have duplicated code, (for example, the top 1K) in each bank, with similar code to 1) above.

Is this similar to the Atari way?

Thanks

Mark

#81 zilog_z80a OFFLINE  

zilog_z80a

    Chopper Commander

  • 102 posts

Posted Sun Feb 25, 2018 8:56 AM

Hi!! is there an UPDATED list with Bankswitching codes"name" and specs that i can read to learn? 

 

i mean ¿something like Kevin Horton's list format? : 

CODE:   (3F)
NAME:   (Enhanced Tigervision style)   

SPECS: (up to 512K)

 

cheers!!

 

-----------------------------------------------------------------------------------

 

UPDATE: I HAVE FOUND THIS WITH DATE 2012

EXIST IN SOME OTHER PLACE A RECENT ONE?

 

http://blog.kevtris....600 Mappers.txt


Edited by zilog_z80a, Mon Feb 26, 2018 5:07 AM.


#82 stephena ONLINE  

stephena

    River Patroller

  • 3,134 posts
  • Stella maintainer
  • Location:Newfoundland, Canada

Posted Mon Feb 26, 2018 11:45 AM

The most up-to-date documentation will come from looking at the header files (ending in .hxx) in Stella that are named CartXXX (where 'XXX' is bankswitch scheme).  These names match the bankswitching naming scheme, and provide a wealth of information on how they work.



#83 zilog_z80a OFFLINE  

zilog_z80a

    Chopper Commander

  • 102 posts

Posted Mon Feb 26, 2018 10:36 PM

The most up-to-date documentation will come from looking at the header files (ending in .hxx) in Stella that are named CartXXX (where 'XXX' is bankswitch scheme).  These names match the bankswitching naming scheme, and provide a wealth of information on how they work.

 

ty stephena!! very nice info!!

 

cheers.






0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users