alex_79 Posted September 12, 2016 Share Posted September 12, 2016 (edited) I'm not an electronic expert, but I guess the additional circuit is a latch that prevents further bankswitch after the first one. If so, you only need it if you're using a 8Mbit EPROM like the 27C80 in the schematic, having 255 4k games on the cart. If using the original schematic, in fact, only the upper 128 games would have the bankswitch locked. The advantage of it is that you can have games larger than 4k in the lower half of the eprom (but the games have to be modified to work with the multicart).If you're using smaller eprom (for 127 4k games or less), you don't need the extra circuit, because you can make the menu itself to lock the bankswitching after the game is selected, and you can do that for each game independently, allowing to mix 4k and larger games in any order (you still need to modify games larger than 4k).In the source attached previously in this thread, you need to change the values in the "BankList" table. Here is how it looks like in the source: BankList .byte 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 .byte 10, 11, 12, 13, 14, 15, 16, 17, 18, 19 .byte 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 .byte 30, 31, 32, 33, 34, 35, 36, 37, 38, 39 .byte 40, 41, 42, 43, 44, 45, 46, 47, 48, 49 .byte 50, 51, 52, 53, 54, 55, 56, 57, 58, 59 .byte 60, 61, 62, 63, 64, 65, 66, 67, 68, 69 .byte 70, 71, 72, 73, 74, 75, 76, 77, 78, 79 .byte 80, 81, 82, 83, 84, 85, 86, 87, 88, 89 .byte 90, 91, 92, 93, 94, 95, 96, 97, 98, 99 .byte 100,101,102,103,104,105,106,107,108,109 .byte 110,111,112,113,114,115,116,117,118,119 .byte 120,121,122,123,124,125,126,127 If you leave it like that, bankswitching will still be active after a game is loaded, which could cause some 4k games to crash. If you add 128 to a number in the table, the game in that position will have the bankswitch locked after it's selected.So, if you only need 4k games, just replace the entire table with the one below, and you won't have any game crash even without the extra circuit. BankList .byte 128, 129, 130, 131, 132, 133, 134, 135, 136, 137 .byte 138, 139, 140, 141, 142, 143, 144, 145, 146, 147 .byte 148, 149, 150, 151, 152, 153, 154, 155, 156, 157 .byte 158, 159, 160, 161, 162, 163, 164, 165, 166, 167 .byte 168, 169, 170, 171, 172, 173, 174, 175, 176, 177 .byte 178, 179, 180, 181, 182, 183, 184, 185, 186, 187 .byte 188, 189, 190, 191, 192, 193, 194, 195, 196, 197 .byte 198, 199, 200, 201, 202, 203, 204, 205, 206, 207 .byte 208, 209, 210, 211, 212, 213, 214, 215, 216, 217 .byte 218, 219, 220, 221, 222, 223, 224, 225, 226, 227 .byte 228, 229, 230, 231, 232, 233, 234, 235, 236, 237 .byte 238, 239, 240, 241, 242, 243, 244, 245, 246, 247 .byte 248, 249, 250, 251, 252, 253, 254, 255 Here is the source code with the table already replaced.megacardmenu_v2_3--all_games_locked.asm Remember to set the number of games by changing the "NrTitles" value (this menu software supports up to 127 titles, for more titles you'll need to modify it or use a different one) ; --------------------------------------------------------------------------- ; These settings control the behaviour of the menu (Change This) ; --------------------------------------------------------------------------- FirstTitleBank = 1 ; Indicates the real BankNr of the first bank in the menu. ; When setting this to 4, the menu will load the 5th bank ; when selecting the first title. ; By default this would be 1 if bank 0 contains a menu, ; or 2 if bank 0 would contain a safety net and 1 the menu. NrTitles = 127 ; The actual number of menu items, currently a range of 8 to 230, ; But since bank 128 to 255 are mirrors of 0-127, this number of ; Entries/Titles will not be needed. PAL = 0 ; 1 = PAL 0 = NTSC Edited September 12, 2016 by alex_79 1 Quote Link to comment Share on other sites More sharing options...
arturfreddy Posted September 12, 2016 Share Posted September 12, 2016 (edited) I do not know how it is possible, but in two Ataris from different manufacturers, and with slightly different speeds, the menu of the program only works well at slower atari. In Brazil it is difficult to find the 74HCT27, I am using 74HC27. 74HC27 will be the cause of instability in faster atari? Edited September 12, 2016 by arturfreddy Quote Link to comment Share on other sites More sharing options...
arturfreddy Posted September 12, 2016 Share Posted September 12, 2016 I tested the "megacardmenu_v2_3--all_games_locked" with a set of games that works well, I made adjustments in relation to the amount of games and titles, something strange happens, the menu does not trigger the games correctly and Stella does not work properly. Quote Link to comment Share on other sites More sharing options...
alex_79 Posted September 12, 2016 Share Posted September 12, 2016 I tried compiling the menu and it seem to work in Stella. Can you post the file with your adjustements? Quote Link to comment Share on other sites More sharing options...
arturfreddy Posted September 13, 2016 Share Posted September 13, 2016 I may have made a mistake. megacard.asm Quote Link to comment Share on other sites More sharing options...
alex_79 Posted September 13, 2016 Share Posted September 13, 2016 The menu you posted works correctly if it's placed in the first 4k of the eprom. But since you have 30 titles I guess you want the "safe net ROM" (the one in this post) in the first bank so you can use the reset button on the cart. In that case you should change "FirstTitleBank" value to "2" in the source file. ; --------------------------------------------------------------------------- ; These settings control the behaviour of the menu (Change This) ; --------------------------------------------------------------------------- FirstTitleBank = 2 ; Indicates the real BankNr of the first bank in the menu. ; When setting this to 4, the menu will load the 5th bank ; when selecting the first title. ; By default this would be 1 if bank 0 contains a menu, ; or 2 if bank 0 would contain a safety net and 1 the menu. NrTitles = 30 ; The actual number of menu items, currently a range of 8 to 230, ; But since bank 128 to 255 are mirrors of 0-127, this number of ; Entries/Titles will not be needed. PAL = 0 ; 1 = PAL 0 = NTSC Here is the resulting rom after making that change:megacard.binLet me know if it works. Quote Link to comment Share on other sites More sharing options...
arturfreddy Posted September 13, 2016 Share Posted September 13, 2016 Curious, the menu is offset in relation to the game in a step 5, select the River Raid and access the Enduro, this is happening to everyone. In the end of the menu items: I want my mom open Pacman4k Jaw Breaker open Qbert Tac Scan restarts the menu Keystone Kaper open Demon Attack Lockn Chase open Boing Pacman4k open Cosmic arc Qbert open Defender Quote Link to comment Share on other sites More sharing options...
alex_79 Posted September 13, 2016 Share Posted September 13, 2016 Did you include the "safe net rom" before the menu in the eprom?You must have the safe net rom in the first 4kb, then the menu, then the 30 games, for a total of 128KbWith this configuration works fine for me (in Stella emulator). If I only put the menu and the 30 games (124Kb) I got the behaviour you described (offset by 5). Quote Link to comment Share on other sites More sharing options...
arturfreddy Posted September 14, 2016 Share Posted September 14, 2016 Added the safenet.bin, the latest games (Keystone, pacman 4k, qbert) do not work, the reactor jumps to the River Raid. Quote Link to comment Share on other sites More sharing options...
arturfreddy Posted September 14, 2016 Share Posted September 14, 2016 Alex 79, see the result! arqsaida2.bin Quote Link to comment Share on other sites More sharing options...
alex_79 Posted September 14, 2016 Share Posted September 14, 2016 Added the safenet.bin, the latest games (Keystone, pacman 4k, qbert) do not work, the reactor jumps to the River Raid. Alex 79, see the result! I tested the binary you posted in Stella and every game works fine here, including Keystone, Pacman4k, Qbert and Reactor. If it doesn't work for you in Stella, ensure you're using the latest version (http://stella.sourceforge.net/downloads.php). If, instead, the problems you described happen on real hardware I can't be of much help as my skills in electronics are quite limited, but there are many experts here on Atariage who surely can figure out what's going on. Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted September 14, 2016 Share Posted September 14, 2016 I may have made a mistake.I recognize my old Krokodile Cart code here. Quote Link to comment Share on other sites More sharing options...
arturfreddy Posted September 14, 2016 Share Posted September 14, 2016 Alex_79, I did not know the new version of Stella, now worked well, later will test the Atari! Thank you! Quote Link to comment Share on other sites More sharing options...
arturfreddy Posted September 14, 2016 Share Posted September 14, 2016 Alex 79, congratulations! I tested the atari! All games work perfectly! Including the reset button! Quote Link to comment Share on other sites More sharing options...
arturfreddy Posted September 14, 2016 Share Posted September 14, 2016 Alex_79 if I want to make a cartridge using 8K games, the procedure will be the same? Quote Link to comment Share on other sites More sharing options...
alex_79 Posted September 14, 2016 Share Posted September 14, 2016 Alex 79, congratulations! I tested the atari! All games work perfectly! Including the reset button! I'm glad it worked! Alex_79 if I want to make a cartridge using 8K games, the procedure will be the same? No, with games larger than 4k things complicates a lot. You can't just place existing roms of those games in the eprom. Instead, they need to be disassembled so that the part of the code that handles the bank switching can be modified to work with the multicart scheme. You need to decide where the game will be on the eprom before modifying it, as it will be hacked to use specific banks of the multicart, and it won't work if you move it in a different position. Moreover, you can't lock the bankswitch as with 4k games after you select them from the menu, so you must also ensure that the rest of the code doesn't accidentally trigger a bankswitch that will cause the game to crash. The design is flexible because allows mixing different size roms in the same multicart, but requires some knowledge of 6502 programming to hack the games larger than 4k to work with it. Quote Link to comment Share on other sites More sharing options...
kaufenpreis Posted October 1, 2016 Share Posted October 1, 2016 If the software on the linker/programmer improves then this might be one of the cheapest dumpers around. But some of the bankswitching shemes are really pretty complex. Quote Link to comment Share on other sites More sharing options...
DrWho198 Posted October 31, 2016 Share Posted October 31, 2016 My latest software on the linker dumps all of my cards, but I can not test compatibility for other cards. I don't use the same software as Blinky does because he focusses on writing his own flash card. I on the other hand focus on dumping cards. My software will detect what kind of bankswitching is used and will dump the complete rom. But not much intrest has been shown by people, and at the moment I'm not working on it myself. 1 Quote Link to comment Share on other sites More sharing options...
arturfreddy Posted November 16, 2016 Share Posted November 16, 2016 (edited) I did some studies and tests, I was able to make the cartridge with menu having games of 8K and 4K. The scheme is not completely adjusted, I used a V29C51002T instead of the emprom to speed up the tests. arqsaida_old.bin Edited November 16, 2016 by arturfreddy 1 Quote Link to comment Share on other sites More sharing options...
arturfreddy Posted November 19, 2016 Share Posted November 19, 2016 (edited) Yesssss! 4K and 8K games together! https://www.youtube.com/watch?v=rrXZi2l3DFw&feature=em-upload_owner Edited November 19, 2016 by arturfreddy 1 Quote Link to comment Share on other sites More sharing options...
arturfreddy Posted November 19, 2016 Share Posted November 19, 2016 My latest software on the linker dumps all of my cards, but I can not test compatibility for other cards. I don't use the same software as Blinky does because he focusses on writing his own flash card. I on the other hand focus on dumping cards. My software will detect what kind of bankswitching is used and will dump the complete rom. But not much intrest has been shown by people, and at the moment I'm not working on it myself. I think I helped with my last test! I found a simple way to join 4k and 8k games with a little extra hardware and using the same program. Quote Link to comment Share on other sites More sharing options...
arturfreddy Posted November 19, 2016 Share Posted November 19, 2016 I found a mistake in the scheme I published a few days ago. I forgot to represent line A0 on pin 2 of IC 74LS74. Quote Link to comment Share on other sites More sharing options...
arturfreddy Posted November 19, 2016 Share Posted November 19, 2016 I'm glad it worked! No, with games larger than 4k things complicates a lot. You can't just place existing roms of those games in the eprom. Instead, they need to be disassembled so that the part of the code that handles the bank switching can be modified to work with the multicart scheme. You need to decide where the game will be on the eprom before modifying it, as it will be hacked to use specific banks of the multicart, and it won't work if you move it in a different position. Moreover, you can't lock the bankswitch as with 4k games after you select them from the menu, so you must also ensure that the rest of the code doesn't accidentally trigger a bankswitch that will cause the game to crash. The design is flexible because allows mixing different size roms in the same multicart, but requires some knowledge of 6502 programming to hack the games larger than 4k to work with it. I found a simple way to join 4k and 8k games with a little extra hardware and using the same program. Thank you very much for your help, DrWho198, Blinky, and all who collaborate with this forum! Quote Link to comment Share on other sites More sharing options...
DablioGames Posted November 22, 2016 Share Posted November 22, 2016 I found a simple way to join 4k and 8k games with a little extra hardware and using the same program. Thank you very much for your help, DrWho198, Blinky, and all who collaborate with this forum! Arthur, como você fez com as tabelas ? Imaginei que em jogos de 8k vc deve ter pulado um numero da sequencia certo ? Em cartuchos com jogos de somente 4k não entendi a necessidade de usar tabelas, vc pode simplismente usar o numero da seleção para tal, tb não entendi porque tem que ser apartir do 128, seja como for, bastava pegar o numero da seleção e adicionar 128 (acho que 127 para dar certo). Voce manja de ASM ou só a parte do hardware ? Abraço Quote Link to comment Share on other sites More sharing options...
arturfreddy Posted December 31, 2016 Share Posted December 31, 2016 Arthur, como você fez com as tabelas ? Imaginei que em jogos de 8k vc deve ter pulado um numero da sequencia certo ? Em cartuchos com jogos de somente 4k não entendi a necessidade de usar tabelas, vc pode simplismente usar o numero da seleção para tal, tb não entendi porque tem que ser apartir do 128, seja como for, bastava pegar o numero da seleção e adicionar 128 (acho que 127 para dar certo). Voce manja de ASM ou só a parte do hardware ? Abraço Opa, não programo em ASM, talvez um dia, a implementação do F8 foi apenas um pico de inspiração! rsrsrs Abs Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.