Chance of a RAM cart for homebrew?

Discussion in 'Sega Discussion' started by vexatious, Nov 10, 2014.

  1. vexatious

    vexatious Rising Member

    Joined:
    Nov 9, 2014
    Messages:
    71
    Likes Received:
    7
    What are chances of a 32mbit ram cart being made for 32X/CD homebrewers? How hard would it be to make one with basic soldering skills? What if I wanted a 64megabyte cart? Would that be too big in a standard cartridge size (what if I wanted simm slots for EDO ram)? Would an Everdrive+SRAM+32mbit RAM combo cart be possible?

    I think the SegaCD/32X would be very nice with a RAM cart. Certainly wouldn't mind tackling a DOOM port, especially with source code available. I find the SegaCD/32X a very nice system considering CDrs are bootable without modchip, and it seems much easier this way compared to the Saturn and its dual VDP setup (32X only adds a simple framebuffer over genesis VDP). Only problem I see are emulators available. I don't know if any work with 32XCD games.
     
  2. retro

    retro Resigned from mod duty 15 March 2018

    Joined:
    Mar 13, 2004
    Messages:
    10,354
    Likes Received:
    823
    Moved to the Sega dev forum, as this has little to do with EverDrive (and Krikzz has his own forum now, anyway).

    The fact that you have to ask this (plus the other questions) makes the answer - extremely hard! You'd need a very good understanding of how all three systems work to understand how to do it... or if it's even possible.
     
    vexatious likes this.
  3. vexatious

    vexatious Rising Member

    Joined:
    Nov 9, 2014
    Messages:
    71
    Likes Received:
    7
    Sorry about that. Everdrive seems like a great option TBH.
     
    Last edited: Nov 12, 2014
  4. vexatious

    vexatious Rising Member

    Joined:
    Nov 9, 2014
    Messages:
    71
    Likes Received:
    7
    Bump

    After getting 2 year online associates college degree in computer networking thought I'd keep asking.

    It appears the genuine Sega mapper allows a full bankswitched 256meg (32 megabyte) memory space in 512kb chunks. Moreover, 32x can only access first 32megs of space and bank switching is only allowed from main 68k. This means only about 4.5 megabytes total of local buffer for CD programs-content (games); at least it's a little more than Saturn.

    Standard Everdrive only comes with 64meg but it seems like re-writable eeprom as opposed to RAM since description states 100,000 writes. Only the "Mega Everdrive" has infinite writes but doesn't clearly describe RAM or rewritable eeprom, and it's larger space.

    According to Sega SDK (assuming it's authentic), each SH2 has 2 dma channels into main 68k of genesis. Furthermore, SDK states this is implemented to allow access to memory space on SH2s (256kb + 256kb) from hardware on CD side. Sounds like the ASIC can draw into 15-bit color vdp directly if I'm guessing right. 68k sounds like a memory-system controller in addition to a CPU.

    Worst part about all this is testing support without a Mars 32x devkit. Doubt any emulator supports full Sega mapped 256meg space, let alone as RAM expansion for CD32x. Hopefully memory spaces are protected against coding error.


    EDIT:

    So far it seems easiest to find a broken "Super Street Fighter 2" cartridge and swap rom for ram (preferably socketed). But problem with this is lack of Sram and only 64megs seems possible.

    Seems humiliating to ask development questions in a forum mostly populated by hackers and hacks. Like walking into High School being preyed by bullies.

    Thanks
     
    Last edited: Mar 17, 2019
    SwedishSonna likes this.
  5. segasonicfan

    segasonicfan Robust Member

    Joined:
    Sep 23, 2011
    Messages:
    262
    Likes Received:
    40
    It's a cool project idea, and the soldering wouldn't be too hard. Let me know if you need help with that part of it.
    Nothing wrong with asking dev questions here, that's definitely part of what this forum is for :)
     
    vexatious likes this.
  6. vexatious

    vexatious Rising Member

    Joined:
    Nov 9, 2014
    Messages:
    71
    Likes Received:
    7
    Thanks for the support, will mention if I need help with soldering hardware along the way. Definitely going to need local buffer for 32-bit CD games.

    I'm surprised how simple BASIC language programming seems. Seems very much like BASH scripting in LINUX and DOS command line usage (e.g. syntax, variables, wildcards etc). If anyone can point me to a BASIC programming interface for 32x SH2 that'd be great, or a open source BASIC library with enough functions for 2D games and sfx which could be converted to 32X-SH2.

    Thanks again!

    EDIT:

    Posting more information here just in case.

    Here's the "Super Street Fighter 2" cart. First two pics are same cart (front and back low definition pics) and third pic is a different cart but should be transparent. [​IMG] [​IMG]
    [​IMG]

    Pinout of mapper thanks to arcadetv @ devster.proboards.com forum
    [​IMG]

    Code for testing RAM from Moon @ devster.proboards.com forum
    Code:
    asm
        move.b #2,($A130F3).l
        end asm
     
        dataptr& = &h80000
     
        for i=0 to 7
            read c
            locate 0,i
            print c
        next
     
        end
     
        asm "org $FFFFE"
    bar:
        data 1,2,3,4,5,6,7,8
    Closest match I could find to these ROM chips is a 44pin SOP 5 volt LH538 or LH5388 from "Sharp" shown here http://www.datamath.org/ROM_IC.htm.

    Looking closer at PCB you'll see 16/32M mask rom markings under each rom (some say 4/8M additionally). This should indicate a maximum of 4 megabytes per mask ROM possible; so 12 megabytes RAM looks possible with this "Super Street Fighter 2" cart.

    Looking at pinout of mapper, you'll see pins 57 + 59-64 seem to be rom to cart select pins. You'll see it's 8 pins total. When you multiply 8*32 sum is 256, and dividing sum against megabits from one megabyte (eight megabits = one megabyte) 256/8 you get exactly 32 megabytes!

    27C160 failed test when arcadetv forum user @ devster.proboards.com used krikzz' multirom-tool.

    More information here http://devster.proboards.com/thread/1012/super-street-fighter-ii-mapper.

    Overall looks really simple to assemble. Just mapper wired to rom/ram chips, capacitor and 4 diodes. Seems very doable on breadboard. Only problem is getting mapper.

    Next step is finding pinout and making sure it's exact match, testing and getting PCB blanks of this cart or equivalent. Development cartridge should have Sega mapper too. Thanks.
     
    Last edited: Apr 10, 2019
  7. vexatious

    vexatious Rising Member

    Joined:
    Nov 9, 2014
    Messages:
    71
    Likes Received:
    7
    Updated and made changes to previous post.

    PAL PCB SSF2
    [​IMG]

    Additional pics and information here http://krikzz.com/forum/index.php?topic=1732.0.

    Forum user "arcade" @ krikzz website forum states krikzz multirom tool doesn't work and all the roms are pin-compatible to any 27C322/160/800/400 Eeproms or 29F1610 etc; "arcade" also made schematics of both pcbs. Wondering if krikzz forum member "arcade" is a member here so I can P.M. or contact to get these schematics; if not then I'll make new ones since I don't want to make multiple membership accounts beyond what I already have. Anyone please let me know.

    I've gathered 48pin sram and pram chips are available in 32mbit (4 megabytes) size. Most 42pin and 44pin seem to be available in many sizes except 32mbit. Seems wisest and maybe easiest to adapt female plug of 72pin 8 megabyte simm and/or 4 megabyte 30pin simms. Other pinouts like 32pin simm exist but seem uncommon.

    Found some sources of Sega IC 315-5779 through quote and request system but not online paypal or other purchasing options. Might be best to simply use a more commonly available mapper or contact a vendor about cloning and manufacturing new Sega IC 315-5779 on blank PCBs.

    One problem here is using the "Super Street Fighter 2" cart for a donor RAM cart. There's a limitation of 12 megabytes total besides the problem of converting cart in the first place. Would be better to swap mapper itself into a blank PCB with proper schematic to the full 256mbit space (via EDO female simm or similar). PC Sound Blaster AWE32 with simm slots is a good reference for schematics and AWE64 Gold has similar built-in Dram as SSF2 cart PCB.

    Implementing 315-5779 Sega IC on new PCBs with 70ns RAM and Sram could be easiest through FPGA but this is expensive and more of a virtual solution with too much hardware.

    EDIT:

    gm71c18163cj6 Hyundai seems most compatible. Last digit in model number describes speed in Nanoseconds * 10. Since this one is 6 that means this one is 60ns. 50/60/70 ns are available in 42pin plastic SOJ and 44(50) pin plastic TSOP II. These use 1045mW maximum electricity. They're optimised for and used on 72pin EDO simm modules (usually single sided) and the red "All in One" Sega Saturn 1mb+4mb ram cartridge. PDF datasheet link with pinout in attachment.

    Attached file mostly for pinout since these are only 2 megabytes. Since only three of these can be used at a time on SSF2 cart, it doesn't allow much system RAM being only 6 megabytes max buffer. Best choice seems to be breadboard with socketed Sega 315-5779 transplanted, and EDO 72pin simms but at least a plan and experimentation can be started. If SSF2 cart can only be used in the end, 6 megabytes is better than nothing.
     

    Attached Files:

    Last edited: Apr 12, 2019
  8. Conte Zero

    Conte Zero Rapidly Rising Member

    Joined:
    Dec 17, 2017
    Messages:
    90
    Likes Received:
    32
    I've missing something... sram doesn't need refresh but edo or fpm needs extra hardware for working; you can't just put them in place of an (e)prom.
     
    vexatious likes this.
  9. Nano Babe

    Nano Babe Robust Member

    Joined:
    Jul 3, 2011
    Messages:
    250
    Likes Received:
    8
    Very interesting I wish you luck
     
    vexatious likes this.
  10. vexatious

    vexatious Rising Member

    Joined:
    Nov 9, 2014
    Messages:
    71
    Likes Received:
    7
    Thanks "Nano Babe"... Just to update...

    74HC74 may solve problem with 2 megabyte DRam being largest available. Quite a few 42 pin drams exist on EBAY but not much 44 pin. Most common is SOJ 42 pin and they're low priced. Making Ram Extension Cartridge is much like assembling computer from scrap (like a homemade z80 or similar). Unfortunately the pinout of most Dram is not transparent to marketed ROM cartridges, but still some useful reference; pinouts are mostly re-arranged. 74HC74 should allow two 2 megabyte DRAMS to co-exist as one 4 megabyte region while making SRAM possible.

    Purchased "Super Street Fighter 2" for Genesis. Unfortunately I think I'm going to regret it since finding more about 74HC74 and other memory mapping methods. It'd be much better to use a very standard and well supported mapper-controller too... Oh well.

    Might be a simpler type of mapper-controller possible with 74HC74. "Sonic & Knuckles" lock-on uses 74HC74. It seems mostly mechanical and not much of a real memory mapper-controller but it's very simple. There's also some mappers used for MSX computer via "Classic PC 16MB" and "Playsoniq" cartridges.

    Guess I'll see what happens but now I'm waiting for SSF2 to come in mail...

    For reference, Sega-Mega CD has three startup modes: "System Mode 0", "System Mode 1" and "System Mode 2". Last two modes 1 & 2 have two different types (1 & 2 respectively); Mode & type used in question is "System Mode 2" "Type 2" which maps cartridge space to $400000-$7FFFFF and BOOT-ROM to $000000. It should be treated the same as $000000 with BOOT-ROM starting @ $400000 (this is "System Mode 1"). System Mode 1 & 2 in "Type 2" both share cartridge space with CD side; they reciprocate program startup location (CD or Cartridge).


    EDIT

    More info and possibly all I'll ever need for full 4 megabytes without mapper; could be useful for a more simple paging-mapper controller too. Thanks to Trash80toHP_Mini @ https://68kmla.org/forums and Author Christopher @ http://randomvariations.com/author/christopher/

    [​IMG]
    Splits 4 & 8 megabytes 72-pin simm into two 16-bit banks for Apple IIGS. Will have to manipulate into two 12 address lines or two 30pin simms. Attached PDF schematic for ram expansion for Apple IIGS (more info here: https://gglabs.us/node/1079).

    EDIT

    74LS612 mapper seems to be the best option I can find. It's a 4 to 16 line decoder and seems available on ebay but still kinda pricey (about $8.00 each after shipping). Some decent guides exist but forgot links. With one of these mappers, it's possible to extend up to 16 megabytes on a 8-bit machine; so maybe 32 megabytes will work on 24 address line 68k. One common difference making this difficult is the 24 address lines on mars; M68000 on Genesis is 24-bits but most machines are either 8-bits, 16-bits or 32-bits... 24-bits is a little odd and I'm not looking forward to this... Geeze.

    EDIT
    Useful reference here https://assemblergames.com/threads/...d-to-1-with-ls139-on-board.67322/#post-954109. Thanks to forum member jaskamakkara.

    EDIT
    Lots of useful schematics and info for 74ls612 16 megabyte mappers here:
    SUPERAMS http://www.unige.ch/medecine/nouspikel/ti99/superams.htm
    HAMS http://www.unige.ch/medecine/nouspikel/ti99/hams.htm
    MAIN PAGE http://www.unige.ch/medecine/nouspikel/ti99/titechpages.htm
    DOWNLOAD EVERYTHING FROM WEBSITE: webpageshttp://www.unige.ch/medecine/nouspikel/ti99/webpages.zip
    free_softwarehttp://www.unige.ch/medecine/nouspikel/ti99/softs.zip
    pictureshttp://www.unige.ch/medecine/nouspikel/ti99/pics.zip
    Special thanks to whoever provided all that!

    EDIT

    Useful reference for 4 megabytes (special thanks to "hackaday.io" user benchoff): https://hackaday.io/project/5-mc68000-computer/log/23-theory-of-ram-and-rom-modules

    EDIT

    Possibly useful projects and GPL programs (maybe code and diagrams too): https://gglabs.us/
     

    Attached Files:

    Last edited: May 15, 2019

Share This Page