@GTV reviews the Cosmic Fantasy 1-2 Switch collection by Edia, provides examples of the poor English editing/localization work. It's much worse for CF1. Rated "D" for disappointment, finding that TurboGrafx CF2 is better & while CF1's the real draw, Edia screwed it up...
Main Menu

System card dreams....

Started by OldMan, 02/25/2015, 12:18 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

OldMan

I haz a dream:  Someday Arkhan will tell me all of the Alantean boards are done, sold and shipped.

I haz a dream: Arkhan will total everything up, and we will have actually made a small profit...
  And it's enough money to develope the new system card....
  And he's willing to do that.

I haz a dream: We order prototype boards and all the pieces...
  And I put them together without screwing things up...
  And they work...
  And the bios is reprogrammable, for future changes.

I haz a dream: Bonknuts has time off from school, and decides to work on translations....
 And he finishes one using the new system card....
 And expands on MegaMan-CD as well.

I haz a dream: With the extra flash space, we start adding useful routines for translations and developement....
 And speed up the cd reading routines....
 And fix some of the problems in the bios....
 And it is still backwards-compatible.

I haz a dream: Other developers look at this, and start other fan translations....
 And actually finish them...
 And decide to produce pressed cds.

I haz a dream, that tobias sees everything going on, and decides to get 500 copies
of each new translation pressed. He opens up orders and starts taking money....
And then finds out he needs the new system card for them to work :)...
And has to refund everything....
And goes broke :)

Of course, I also have a dream where everyone from the turbo game shows appear at my door to use the bathroom,
piss all over the shower, and my wife says "They're your friends. *You* clean it up....."

NightWolve


Arkhan Asylum

The part where Tobias gets fucked is the best part.
This "max-level forum psycho" (:lol:) destroyed TWO PC Engine groups in rage: one by Aaron Lambert on Facebook "Because Chris 'Shadowland' Runyon!," then the other by Aaron Nanto "Because Le NightWolve!" Him and PCE Aarons don't have a good track record together... Both times he blamed the Aarons in a "Look-what-you-made-us-do?!" manner, never himself nor his deranged, destructive, toxic turbo troll gang!

NecroPhile

Heh, I like your dreams.  :mrgreen:
Ultimate Forum Bully/Thief/Saboteur/Clone Warrior! BURN IN HELL NECROPHUCK!!!

poponon

IHave-ADuo.png
the dream is real

TailChao

If you're actually serious about this, what kind of features are you looking for in a new system card?
Several years ago I made a custom order cartridge with 512KB of RAM in banks $40-$7F. Aside from the lack of firmware rewritability this was a pretty big improvement over the Super System Card. Ideally you just want enough RAM so you can soft-patch firmware issues anyway.

HailingTheThings

Quote from: poponon on 02/25/2015, 11:05 AMIHave-ADuo.png
the dream is real
Slap on a pair of Air Zonk shades and that would be an amazing shirt.
IMG

elmer

Errr ... shouldn't this wait just a little bit to see what Krikzz comes up with in a couple of months with TED2?

He's already said that it's based on RAM instead of flash.

ToyMachine78

Dreams happen with action and intention. Get off your ass and make it happen ;D

elmer

#9
Quote from: guest on 02/25/2015, 06:57 PMDreams happen with action and intention. Get off your ass and make it happen ;D
Sure ... and if you want to make that dream come true, then IMHO ...
  • Make the dozen-or-less line modification to Mednafen to emulate 512KB ROM/RAM.
  • Gather together your crew that's going to work on the first translation that uses it.
  • Start development with the modified Mednafen and make sure that you can use the RAM effectively.
  • That's all.
By that time you've already used up 2-3 months, and you'll know if TED2 will do everything that you need.

If it doesn't, then you've already got a project started, and you've got real motivation to find someone like TailChao that can actually put together a simple ROM/RAM cart ... or perhaps the guys that are doing the AbCard.

It's not that much of a technical challenge ... it's a matter of will.

Jeez ... I'll make the damned mods to Mednafen if they're not already there ... I want them for my own development, and have to screw around inside Medafen anyway to enhance the PC-FX debugging.

poponon

Quote from: HailingTheThings on 02/25/2015, 05:21 PMSlap on a pair of Air Zonk shades and that would be an amazing shirt.
duodreams.png

Jah feel?

http://printallover.me/products/0000000p-i-have-a-duo?social=true

SamIAm

Quote from: TailChao on 02/25/2015, 03:22 PMIf you're actually serious about this, what kind of features are you looking for in a new system card?
Several years ago I made a custom order cartridge with 512KB of RAM in banks $40-$7F. Aside from the lack of firmware rewritability this was a pretty big improvement over the Super System Card. Ideally you just want enough RAM so you can soft-patch firmware issues anyway.
Your card is exactly what inspired Bonknuts (aka Tom) to want to have this for translation projects.

If you would be willing to share more details about what you did to make that card, that would be wonderful. In another thread, I was talking about putting up money to build some prototypes, and that could be arranged with you if you are interested.

I hope Bonknuts can get in touch with whomever is most interested in making a card and work out the technical details. I'll start bugging him to weight in here.

Quote from: elmer on 02/25/2015, 06:44 PMErrr ... shouldn't this wait just a little bit to see what Krikzz comes up with in a couple of months with TED2?

He's already said that it's based on RAM instead of flash.
If the TED2 does the job, that's wonderful. However, it will be $80 to ship that thing. I don't know, but I wouldn't be surprised if we could ship a custom card for less than $30. I think that would make a big difference in the number of people willing to pay to play our translations.

You're right that any hacker who really wants to can just go ahead and start planning on using extra RAM, though.

QuoteIt's not that much of a technical challenge ... it's a matter of will.
Yep. We can make it happen. We will make it happen.

OldMan

QuoteIf you're actually serious about this, what kind of features are you looking for in a new system card?
I'm not looking for any particular features; someone else was talking about needing a few extra pages of RAM for modified/new routines for a translation (Xak II, iirc). I just tried to move the discussion of the modified system card out of the main topic.

Quoteshouldn't this wait just a little bit to see what Krikzz comes up with in a couple of months with TED2?
Depends on how he's planning to use the RAM. I think it would be a lot harder to code for than a simple extension to the page mechanism already in place, but I could be wrong.

QuoteDreams happen with action and intention. Get off your ass and make it happen ;D
I'm in no hurry; this is my hobby, not my job.

But for what its worth, I have the board designed already. Just need to get parts to make sure the pad footprints / traces are right, and have the boards made. All that has to go through Arkhan - I don't shop online. And he's waiting to see if we have enough $$ from atlantean to do it.

Quote...or perhaps the guys that are doing the AbCard.
Yep. That would be us :)

QuoteI'll make the damned mods to Mednafen if they're not already there....
Do it, and post the changes (and how to re-build everything). Maybe that will inspire people to get some of the translations done.
If you do, would you please let me know where to look in the mednafen source for the cd handling routines? If I can see how it's emulated, maybe I can figure out what is going on with the scsi bus in bios.

BTW, I'm not sure you would actually have to modify mednafen much. You can already write to ROM, and have it change. We were going to add a message based on that to atlantean :)
("Emulator in use")

...........................................................
QuoteI wouldn't be surprised if we could ship a custom card for less than $30.
Assuming just 10 cards are made: It's $220+ to make them. The chips and such are about $10.
That would make each card about $35.

But we know from experience, large quantities are the way to go. If you make 50 cards, it's only a bit more expensive - but the cost per card drops dramatically (to around $5, iirc). The majority of the card cost is setup expenses. So yeah, I could see $20 for a card.

You are right, though. We need bonknuts to get some time off school so he can work on this. I honestly think if he were to fix/re-write/extend the bios, this could be a big thing....

poponon

Quote from: SamIAm on 02/25/2015, 08:39 PMYep. We can make it happen. We will make it happen.
damn sam your dedication is really inspiring. I'd really like to help out in some way - I know translators are a dime a dozen but I may be able to help out with spot translations.

ToyMachine78

Quote from: TheOldMan on 02/25/2015, 08:58 PM
QuoteIf you're actually serious about this, what kind of features are you looking for in a new system card?
I'm not looking for any particular features; someone else was talking about needing a few extra pages of RAM for modified/new routines for a translation (Xak II, iirc). I just tried to move the discussion of the modified system card out of the main topic.

Quoteshouldn't this wait just a little bit to see what Krikzz comes up with in a couple of months with TED2?
Depends on how he's planning to use the RAM. I think it would be a lot harder to code for than a simple extension to the page mechanism already in place, but I could be wrong.

QuoteDreams happen with action and intention. Get off your ass and make it happen ;D
I'm in no hurry; this is my hobby, not my job.

But for what its worth, I have the board designed already. Just need to get parts to make sure the pad footprints / traces are right, and have the boards made. All that has to go through Arkhan - I don't shop online. And he's waiting to see if we have enough $$ from atlantean to do it.

Quote...or perhaps the guys that are doing the AbCard.
Yep. That would be us :)

QuoteI'll make the damned mods to Mednafen if they're not already there....
Do it, and post the changes (and how to re-build everything). Maybe that will inspire people to get some of the translations done.
If you do, would you please let me know where to look in the mednafen source for the cd handling routines? If I can see how it's emulated, maybe I can figure out what is going on with the scsi bus in bios.

BTW, I'm not sure you would actually have to modify mednafen much. You can already write to ROM, and have it change. We were going to add a message based on that to atlantean :)
("Emulator in use")

...........................................................
QuoteI wouldn't be surprised if we could ship a custom card for less than $30.
Assuming just 10 cards are made: It's $220+ to make them. The chips and such are about $10.
That would make each card about $35.

But we know from experience, large quantities are the way to go. If you make 50 cards, it's only a bit more expensive - but the cost per card drops dramatically (to around $5, iirc). The majority of the card cost is setup expenses. So yeah, I could see $20 for a card.

You are right, though. We need bonknuts to get some time off school so he can work on this. I honestly think if he were to fix/re-write/extend the bios, this could be a big thing....
You guys really impress me. Where do you learn to design boards? Are you guys computer engineers? Electrical engineers? I'm a software engineer in the business/mainframe world. But you guys really blow my mind.

SamIAm

Quote from: TheOldMan on 02/25/2015, 08:58 PM
QuoteI wouldn't be surprised if we could ship a custom card for less than $30.
Assuming just 10 cards are made: It's $220+ to make them. The chips and such are about $10.
That would make each card about $35.

But we know from experience, large quantities are the way to go. If you make 50 cards, it's only a bit more expensive - but the cost per card drops dramatically (to around $5, iirc). The majority of the card cost is setup expenses. So yeah, I could see $20 for a card.

You are right, though. We need bonknuts to get some time off school so he can work on this. I honestly think if he were to fix/re-write/extend the bios, this could be a big thing....

But for what its worth, I have the board designed already. Just need to get parts to make sure the pad footprints / traces are right, and have the boards made. All that has to go through Arkhan - I don't shop online. And he's waiting to see if we have enough $$ from atlantean to do it.
Thanks for the info.

Arkhan, I know you'll read this sooner or later. Hit me up. I'll pay for the parts.

I don't mind paying at a higher rate to make some prototypes before we go for a large-quantity order. Ideally, I'd like to test the proto-boards with literally a couple dozen games as well as some sort of test-program, if Bonknuts or someone else can whip one up.

TailChao

#16
Quote from: elmer on 02/25/2015, 08:18 PMSure ... and if you want to make that dream come true, then IMHO ...
  • Make the dozen-or-less line modification to Mednafen to emulate 512KB ROM/RAM.
  • Gather together your crew that's going to work on the first translation that uses it.
  • Start development with the modified Mednafen and make sure that you can use the RAM effectively.
  • That's all.
This is basically why I asked what people are looking for in a System Card. If all that's desired is 512KB ROM + 512KB RAM, MCGenjin already gives you that and is fully supported in Mednafen. You just need to add an MCGenjin header to a modified system card, and configure it for 2 x 256KB.
I have some crappy prototypes with 1MB of RAM and RAM paging, but those aren't emulated (and are really overkill in my opinion).


Quote from: SamIAm on 02/25/2015, 08:39 PMYour card is exactly what inspired Bonknuts (aka Tom) to want to have this for translation projects.

If you would be willing to share more details about what you did to make that card, that would be wonderful. In another thread, I was talking about putting up money to build some prototypes, and that could be arranged with you if you are interested.

I hope Bonknuts can get in touch with whomever is most interested in making a card and work out the technical details. I'll start bugging him to weight in here.
Gotcha,
All the MCGenjin work I did is here.
To get 512KB of RAM you can use the supplied POFs as is and connect two 256K x 8 SRAMs to User CS0 and User CS1.
An easier way (since 512KB x 8 chips are common) is to alter the decoding to just trigger a single User CS when A20 is low and A19 is high. If you want me to post modified POFs and VHDL here which do essentially that, I'd be happy to.

SamIAm

Quote from: TailChao on 02/25/2015, 09:38 PMThis is basically why I asked what people are looking for in a System Card. If all that's desired is 512KB ROM + 512KB RAM, MCGenjin already gives you that and is fully supported in Mednafen. You just need to add an MCGenjin header to a modified system card.
I have some crappy prototypes with 1MB of RAM and RAM paging, but those aren't emulated (and are really overkill in my opinion).
Yeah, we really shouldn't need that for translations. As little as 8kb of extra RAM would make an enormous difference.

Your experience making a real card would be very valuable if you can share it. With the basic 512KB ROM/RAM card that you built, did you encounter any compatibility problems?

TailChao

Quote from: SamIAm on 02/25/2015, 09:45 PMYeah, we really shouldn't need that for translations. As little as 8kb of extra RAM would make an enormous difference.

Your experience making a real card would be very valuable if you can share it. With the basic 512KB ROM/RAM card that you built, did you encounter any compatibility problems?
I actually never tried flashing it with the System card image, so I'm not sure. It was built upon request for someone when I first finished the MCGenjin stuff way back when, and I just tested it for functionality (i.e. does the RAM and mapping work properly).

I just looked at the system card in a hex editor and the end of the first bank is padded with $FF, so an MCGenjin header can just be slammed in there no problem. Will test with Mednafen later.

elmer

#19
Quote from: TheOldMan on 02/25/2015, 08:58 PMDepends on how he's planning to use the RAM. I think it would be a lot harder to code for than a simple extension to the page mechanism already in place, but I could be wrong.
You know that it's already going to be readable through the regular mapping mechanism ... he wants to replace the current flash memory with it.

But there is definitely the question of whether it will be CPU writable through the same mechanism, or even at all!

He's currently using 8MB of flash memory ... but I can only find 1 supplier of 2MBx8 5V SRAM, and 3 suppliers of 1MBx8 5V SRAM ... and it's not very cheap.

I guess that he could be using SDRAM ... but that would be one heck of a lot of work!

It'll be very interesting to see what he's using when it comes out.

QuoteBTW, I'm not sure you would actually have to modify mednafen much. You can already write to ROM, and have it change.
Huh??? If it's not actually masking off writes to the emulated ROM memory, then the capability is already in there and I don't need to do anything!

You should just be able to pad a system card up to 512KB or 1MB with zeros, fix up it's header for that size ... and Mednafen would then allocate you a whole bunch of spare memory for you to write into.

Is there some reason that wouldn't do everything that you need?

QuoteDo it, and post the changes (and how to re-build everything).
Sounds like you don't actually need any changes!

I'll certainly post build instructions if/when I've got the PC-FX changes done ... but unless someone tells me that expanding a system card didn't work, I'll keep on with the PC-FX stuff while I'm still on a roll.

QuoteIf you do, would you please let me know where to look in the mednafen source for the cd handling routines? If I can see how it's emulated, maybe I can figure out what is going on with the scsi bus in bios.
What are you looking for? Do you already have the SCSI and SCSI3 documentation?

QuoteWe need bonknuts to get some time off school so he can work on this. I honestly think if he were to fix/re-write/extend the bios, this could be a big thing....
I'm new here ... may I ask what's wrong with the existing SuperCDROM BIOS???

elmer

Quote from: TailChao on 02/25/2015, 09:38 PMThis is basically why I asked what people are looking for in a System Card. If all that's desired is 512KB ROM + 512KB RAM, MCGenjin already gives you that and is fully supported in Mednafen.
So no need to change Mednafen at all ... and the translation crew can just get to work!  :wink:

QuoteAll the MCGenjin work I did is here.
Cool stuff! I hadn't seen that before ... really nice!  :D

spenoza

Now, I'm trying to remember a previous discussion some time back about how the system uses RAM. For main RAM, what is the max the system can use? Can it access main RAM through the cart slot? Can cart slot RAM only server as extended memory?

Maybe I'm mixing metaphors, here... I think what I'm remember was related to the SuperGrafx. The SGX doubles the system memory, does it not?

elmer

Quote from: guest on 02/25/2015, 11:28 PMNow, I'm trying to remember a previous discussion some time back about how the system uses RAM. For main RAM, what is the max the system can use? Can it access main RAM through the cart slot? Can cart slot RAM only server as extended memory?

Maybe I'm mixing metaphors, here... I think what I'm remember was related to the SuperGrafx. The SGX doubles the system memory, does it not?
The PCE's HuC6280 CPU is a classic 8-bit CPU with a 64KB logical-address range ... but it can map any 8KB logical-segment into any 8KB memory segment in it's 2MB physical-address range.

That's actually one of the nicest memory schemes of any of the early consoles.

So ... the cartridge memory is mapped into the bottom 1MB of the physical address range (thus the 1MB limit on carts - without a second level of mapping, like Street Fighter used) ... and the top 1MB stays internal to the console.

Most of the internal space is wasted, after all, who would EVER need a cartridge more than 1MB!!!!!

The original PCE had 1 internal 8KB segment of RAM, the SGX had 4 internal 8KB segments of RAM.

The cartridge port does have the "write" signals taken out to it, so "yes" you can put RAM on a cartridge and map into into regular memory like any other segment.

OldMan

toymachine78:
QuoteWhere do you learn to design boards? Are you guys computer engineers? Electrical engineers?
Actually, I'm a software engineer (retired). Back when I got my degree, you had to take 3 courses in computer design, though. Was pretty interesting; starting from some transistors, build a flip-flop. Or two. Or three. (Hmm.... monostabile multivibrator, then j-k, then D, iirc). Then build the basic gates (and, or, not, eor, etc).
Second class was build basic circuits using those gates. Latches, selectors, adders, etc. Third class was more high-level; using building-block circuits, build other 'blocks': address bus, data bus, basic cpu, instruction decoder, etc.
The guy who taught the class was really cool. At the end of each class, he actually brought in a huge breadboard, with all the various devices built onto it - and made totally from transistors (he did cheat a little - each 'chip' was on a smaller board, and the boards were wired together)
Hey, 1kHz may not be fast, but it did work. I think in the end we ended up with a 4 bit cpu.

elmer:
QuoteHuh??? If it's not actually masking off writes to the emulated ROM memory, then the capability is already in there and I don't need to do anything!
Have not tested with a cd system card. My test was with a regular card image. But since the actual card should be treated as ROM, I was pretty surprised to find out you could write to it :)

QuoteWhat are you looking for? Do you already have the SCSI and SCSI3 documentation?
What I'm looking for is a useful description of the registers used to access the scsi bus; I have docs on how it works, but knowing $0401 bit 6 is scsi select line (or ack, or whatever) would go a long way in decoding how to 'talk' to the cd reader itself. Right now, I just have a bunch of i/o addresses, with individual bits being toggled. Would be nice to know what those bits are actually doing.

Quotewhat's wrong with the existing SuperCDROM BIOS???
There's a bug loading palettes when the cd boots.
I suspect (but am not positive of) there is a problem with the status register being saved correctly in some irq situation.
And I'd really like to have a faster cd loading routine.

Keep in mind, if we have more space in the bios rom, we can expand the funtionality; would be nice to have de-compression in bios, rather than RAM. Or the possibility of two different chip tune players :) Heck, we could even remove the cd check when bios boots a cd :)

Spenoza:
QuoteNow, I'm trying to remember a previous discussion some time back about how the system uses RAM. For main RAM, what is the max the system can use?
I'm fairly sure any page on a card could be RAM, with the exception of page 0 (which has to contain the boot code). I know a card can access 512K; I'm pretty sure that's only half the max size of a card.

TailChao:
I know nothing about fpga chips. But one request Tom would like I know is out of my league.
Would it be possible to mirror a bank of RAM into both the card space and the system space?
I -think- the idea there is to mirror the system RAM (page 7e, I believe) into an unused area of the boot/bios page.  Not positive, though. You'd have to ask Tom about what he wants mirrored, and how.

EvilEvoIX

IMGIMGIMG
Quote from: PCEngineHellI already dropped him a message on there and he did not reply back, so fuck him, and his cunt wife.

TailChao

Quote from: elmer on 02/25/2015, 11:05 PM
Quote from: TailChao on 02/25/2015, 09:38 PMThis is basically why I asked what people are looking for in a System Card. If all that's desired is 512KB ROM + 512KB RAM, MCGenjin already gives you that and is fully supported in Mednafen.
So no need to change Mednafen at all ... and the translation crew can just get to work!  :wink:

QuoteAll the MCGenjin work I did is here.
Cool stuff! I hadn't seen that before ... really nice!  :D
The Super System Card still needs to be modified though. I did a quick first try this morning.
I used the padded space at the end of bank 0 to add multi-region capability, automatically set up the MCGenjin ROM page select to the second 256KB page (so $20-$3F will be whatever you guys want to add to the BIOS routines), and patched EX_MEMOPEN to always yield A = $86 X = $03 and CLC.

Will try it with some games tonight, and distribute it here if it works.


Quote from: TheOldMan on 02/26/2015, 12:24 AMI know nothing about fpga chips. But one request Tom would like I know is out of my league.
Would it be possible to mirror a bank of RAM into both the card space and the system space?
I -think- the idea there is to mirror the system RAM (page 7e, I believe) into an unused area of the boot/bios page.  Not positive, though. You'd have to ask Tom about what he wants mirrored, and how.
It's possible.
I think a better way though is to have a 512KB ROM + 1MB RAM cartridge, where normally the ROM is fixed to banks $00-$3F and the RAM is set up with 256KB fixed and 256KB pageable in banks $40-$7F. Then add a new register to "switch out" the ROM and replace the whole cart address region in $00-$7F with the 1MB of RAM.

This way you could load whatever patches you want to the System Card, use it as a HuCard loader (which would be compatible with most everything), and just get more memory in general.

For now I'll just try and get MCGenjin + Super System Card + 512KB RAM working in mednafen in case people want to use it for translations. However, if there's a desire to actually do a developer run of cards, I suggest we do the latter setup with 1MB of RAM.
I'll leave this open to suggestion (not just from Tom, but anyone). Might be able to do a run in April or so.

elmer

Quote from: TailChao on 02/26/2015, 12:15 PMFor now I'll just try and get MCGenjin + Super System Card + 512KB RAM working in mednafen in case people want to use it for translations. However, if there's a desire to actually do a developer run of cards, I suggest we do the latter setup with 1MB of RAM.
I'll leave this open to suggestion (not just from Tom, but anyone). Might be able to do a run in April or so.
Way cool! Thanks for this.

Further points to consider as this snowball picks up speed ...

Are you going to make this work on the original CDROM systems?

You'd need to be able to map 256KB of your RAM to the regular System Card 3.0 banks ... but not do it by default in case you're running on a Duo or higher that already has that memory.

How are people going to get the modified System Card image on to the card in the first place?

Are you going to ship pre-flashed cards and risk the copyright issues that that would involve ... or is there going to be some other way to get the modified System Card image on to the cartridge?

TailChao

#27
Quote from: elmer on 02/26/2015, 01:13 PMAre you going to make this work on the original CDROM systems?

You'd need to be able to map 256KB of your RAM to the regular System Card 3.0 banks ... but not do it by default in case you're running on a Duo or higher that already has that memory.
Getting everything to work on the original hardware is the basic intention, yes.
I don't own a Duo (only a PCE, TG16 + CD, and Express), but I'm assuming its internal memory is enabled by the HuCard detect line (otherwise there would be a conflict with normal games). In which case we don't have to do anything.
However, if it doesn't work this way, adding a workaround in some modified MCGenjin CPLD is not a big deal.

Quote from: elmer on 02/26/2015, 01:13 PMHow are people going to get the modified System Card image on to the card in the first place?

Are you going to ship pre-flashed cards and risk the copyright issues that that would involve ... or is there going to be some other way to get the modified System Card image on to the cartridge?
This is basically my major concern, and I don't want any legal trouble.

The "right way" is to roll our own compatible BIOS, but I'm definitely not doing this.
Having users able to flash the cartridge with a system card image in their home (assuming they don't own a chip programmer) would drive up the cost, too. What will probably have to happen if I do a run of developer cards is that they'll just have an empty 29F040 / 39F040 DIP socket, and the owner will have to toss the image on a chip themselves, or get a preflashed one from someone else.
Or a preflashed chip could happen to have fallen in the same bag as the board, I have no idea how that would happen though.

For now, let's just get the emulator support working and see what people want in the hardware.

Edit:
I was impatient, seems the patched System Card works okay with a couple games in Mednafen.
Are IPS patches okay with people here, or is it alright just to post a binary?

elmer

Quote from: TailChao on 02/26/2015, 01:29 PMGetting everything to work on the original hardware is the basic intention, yes.
I don't own a Duo (only a PCE, TG16 + CD, and Express), but I'm assuming its internal memory is enabled by the HuCard detect line (otherwise there would be a conflict with normal games). In which case we don't have to do anything.
However, if it doesn't work this way, adding a workaround in some modified MCGenjin CPLD is not a big deal.
AFAIK, you're going to need that work-around.

People with DUOs have reported being able to run SuperCD games when using a System Card image on a TurboEverdrive, which definitely doesn't have the RAM.

QuoteThe "right way" is to roll our own compatible BIOS, but I'm definitely not doing this.
Having users able to flash the cartridge with a system card image in their home (assuming they don't own a chip programmer) would drive up the cost, too. What will probably have to happen if I do a run of developer cards is that they'll just have an empty 29F040 / 39F040 DIP socket, and the owner will have to toss the image on a chip themselves, or get a preflashed one from someone else.
You definitely can't rely on people having a programmer!

Is the flash chip in-system-progammable from the PCE side?

If so, then you could pre-flash it with an absolutely minimal custom program that just loaded a modified BIOS off CD and then flashed it. Then that CD image gets put somewhere out in the cloud.

TailChao

Quote from: elmer on 02/26/2015, 01:54 PMAFAIK, you're going to need that work-around.

People with DUOs have reported being able to run SuperCD games when using a System Card image on a TurboEverdrive, which definitely doesn't have the RAM.
In that case it's quite possible that the read sequence in EX_MEMOPEN (which I disabled) triggers this.
I'll investigate this more if we end up actually manufacturing cards.

Quote from: elmer on 02/26/2015, 01:54 PMYou definitely can't rely on people having a programmer!

Is the flash chip in-system-progammable from the PCE side?

If so, then you could pre-flash it with an absolutely minimal custom program that just loaded a modified BIOS off CD and then flashed it. Then that CD image gets put somewhere out in the cloud.
Right now on MCGenjin cards no write control is given to the ROM, only RAM.
The reason is that the MCGenjin mapper is basically acting as a ROM data bus passthrough, deciding whether to invert the data lines depending upon our region. Having this act bi-directionally is complicated and I'll have to do some thinking about it, since the mapper also works by trapping ROM writes. Which means more control registers to unlock, etc.

TailChao

Alright, sorry for the double post but:
Here's a UPS patch for the Japanese System Card 3.0 (Original MD5 should be 38179df8f4ac870017db21ebcbf53114).

Steps for Mednafen:
-Patch the Super System Card image.
-Replace your currently configured PCE-CD BIOS with this patched image.
-Disable arcade card emulation (in your .cfg file).

What this gets you:
-512KB of RAM from $40-$7F plus the base 64K of RAM for a total of 576KB.
-512KB of ROM from $00-$3F. Banks $00-$1F are the (modified) Super System Card. The rest are whatever your imagination can put there.
-Seems to work with most SuperCD games, if something is messed up, let me know.
-Would work in both a PCE and TurboGrafx with no modification.

Next Steps:
I am willing to make a "developer's" run of cards which could support these features and possibly a few more. I'll also release all materials associated with how the cards are designed, how the mapper works etc. Then you guys can do whatever you want with it.

I don't have the resources to do a mass production run or deal with the legal issues, my priority is creating games but I think this card would be a neat thing.

elmer

Quote from: TailChao on 02/26/2015, 02:08 PMRight now on MCGenjin cards no write control is given to the ROM, only RAM.
The reason is that the MCGenjin mapper is basically acting as a ROM data bus passthrough, deciding whether to invert the data lines depending upon our region. Having this act bi-directionally is complicated and I'll have to do some thinking about it, since the mapper also works by trapping ROM writes. Which means more control registers to unlock, etc.
Well, a basic TL866CS programmer goes for about $47 on AliBaba ... so the translation crews might be happy enough to just have one guy buy one and send out updated ROMs to the others when they're needed.

It sounds like a total pain to me, but I'm sure that someone will have a better perspective on that than I do.

From my very, very personal POV, I'd much rather have the mapper simplified to get rid of the multi-region capability and allow the PCE's CPU to flash updates.

For a "developers" run and not a "mass-production" run, I would think that any developers are likely to be using Japanese systems, or to have a kisado/mirai available.

Anyone that really only had a US system could just swap in a bit-flipped ROM chip ... and the PCE's flashing software could take the region into account whenever it did the updates.

For a mass-production run ... it would just be a case of having some ROMs pre-flashed with a Japanese boot loader, and some with a US boot-loader.

But realistically ... it's not my call on this!  :wink:

TailChao

Quote from: elmer on 02/26/2015, 05:21 PMFor a "developers" run and not a "mass-production" run, I would think that any developers are likely to be using Japanese systems, or to have a kisado/mirai available.

Anyone that really only had a US system could just swap in a bit-flipped ROM chip ... and the PCE's flashing software could take the region into account whenever it did the updates.

For a mass-production run ... it would just be a case of having some ROMs pre-flashed with a Japanese boot loader, and some with a US boot-loader.

But realistically ... it's not my call on this!  :wink:
For any sort of production run, I'd rather just make the 1MB version I described earlier, since then you can just include whatever version of the system card you like with the CD game itself, and just load it at start.
Then you get to keep the multi region capability and get more memory anyway.

elmer

Quote from: TailChao on 02/26/2015, 06:00 PMFor any sort of production run, I'd rather just make the 1MB version I described earlier, since then you can just include whatever version of the system card you like with the CD game itself, and just load it at start.
Then you get to keep the multi region capability and get more memory anyway.
I sat back and gave it some more thought, and realized that I was entirely wrong ... but you'd already beaten me to replying and it was too late to retract!  :oops:

Yes, a stable base version that doesn't change is more important.

Then you can either go the 1MB route and load a new BIOS, or just ship it as 512KB with a modded BIOS that vectors everything through new jump vectors in the extra RAM and so allows each game to patch/add just what it needs.

The 2nd solution would be a little cheaper to make, and potentially require less extra space on the game's CD.

SamIAm

Some of these technical aspects are a little over my head, but I am really grateful for the discussion happening now, and especially to TailChao for sharing so much.

Now we just need Bonknuts. I'll try and get at him again.

elmer

Quote from: TheOldMan on 02/26/2015, 12:24 AMWhat I'm looking for is a useful description of the registers used to access the scsi bus; I have docs on how it works, but knowing $0401 bit 6 is scsi select line (or ack, or whatever) would go a long way in decoding how to 'talk' to the cd reader itself. Right now, I just have a bunch of i/o addresses, with individual bits being toggled. Would be nice to know what those bits are actually doing.
I wish that I could help you with that ... they're excellent questions.

I assume that we're both working from the same resources ... Charles MacDonald's brilliant work, the Hu7CD documentation, and the SCSI CD standards.

I do wonder if Hudson reused the same basic interface design for the PC-FX (which is a little better documented) ... but haven't really given it a serious look.

Quote
Quotewhat's wrong with the existing SuperCDROM BIOS???
There's a bug loading palettes when the cd boots.
I suspect (but am not positive of) there is a problem with the status register being saved correctly in some irq situation.
And I'd really like to have a faster cd loading routine.

Keep in mind, if we have more space in the bios rom, we can expand the funtionality; would be nice to have de-compression in bios, rather than RAM. Or the possibility of two different chip tune players :) Heck, we could even remove the cd check when bios boots a cd :)
I'd heard of the palette problem ... just assumed that everyone worked around it with a multi-stage boot.

As for the other things ... a custom CD BIOS scares me because it limits the audience to those with your specific hardware add-on.

PCE owners are already fragmented enough with all the different variations!

OldMan

elmer: this is what I was testing ROM writes with. You can see if your copy of mednafen blocks ROM writes.
.............................................................
/*.....................................................................................*/
/* emutest.c - program to test ROM writeability.                                       */
/*.....................................................................................*/

#include "huc.h"

main()
{
 
  init_satb();
 
  if( emuCheck() )
  {
     put_string( "Is Emu", 0, 0 );
  }
  else
  {
     put_string( "Not Emu", 0, 0 );
  }
 
  while( 1 )
  {
      vsync(0);
     satb_update();
  }
}

emuCheck()
{
   #asm
   ; map empty page in
   
   tma      #7            ; next to last page : $C000-DFFF
   pha
   lda      #0            ; boot bank in ROM
   tam      #7            ; set page
   
   lda      #$aa
   sta      $dffe         ; would be $fffe, the reset vector
   ldx      $dffe         ; if mapped one segment higher, like normal
   
   pla
   tam      #7            ; put page back
   
   cpx      #$aa
   bne      .fail
   
   lda      #0            ; return 1 if match
   ldx      #1
   rts
   
.fail
   lda      #0            ; return 0 if no match
   ldx      #0
   rts
   
   #endasm
}

..................................................
Huc -scd emutest.c
mount iso and run it.

HailingTheThings

Quote from: poponon on 02/25/2015, 08:21 PM
Quote from: HailingTheThings on 02/25/2015, 05:21 PMSlap on a pair of Air Zonk shades and that would be an amazing shirt.
duodreams.png
Jah feel?

http://printallover.me/products/0000000p-i-have-a-duo?social=true
Well damn. I totes bookmarked dat page, may purchase, may, may.
IMG

elmer

#38
Quote from: TheOldMan on 02/26/2015, 11:22 PMtma      #7            ; next to last page : $C000-DFFF
Am I missing something here?

I'm not familiar with HuC ... but the general instruction form that I'm familiar with is tma 0-7 ... so you'd actually be switching the bank that's mapped into $E000-$FFFF ... and then you're doing the test by writing the byte at $DFFE, in a totally different bank.

Does HuC use tma 1-8 instead?

NightWolve

Quote from: TheOldMan on 02/26/2015, 12:24 AMtoymachine78:
QuoteWhere do you learn to design boards? Are you guys computer engineers? Electrical engineers?
Actually, I'm a software engineer (retired). Back when I got my degree, you had to take 3 courses in computer design, though. Was pretty interesting; starting from some transistors, build a flip-flop. Or two. Or three. (Hmm.... monostabile multivibrator, then j-k, then D, iirc). Then build the basic gates (and, or, not, eor, etc).
That's cool. I would've liked some transistor experience when I worked on my CS degree now that I think about it and the interests I gained due to Le Steve. Funny enough I minored in physics and in one lab course is where we did quite a few projects teaching us the basics of resistors, circuit design and so forth revovling around Ohm's Law.


HailingTheThings

IMG

poponon

Quote from: HailingTheThings on 02/27/2015, 05:10 AM*unzips*

I'm waiting.....
*unsheathes katana*

Hmph, you're almost not worth it...

*teleports behind you, cutting you in half*

heh...nothing personnel...kid...

*tips fedora*

elmer

Quote from: TheOldMan on 02/26/2015, 11:22 PMHuc -scd emutest.c
mount iso and run it.
So ... HuC has built me a 900KB iso ... but the current version of Mednafen doesn't support physical CDs any more, so there's no point in mounting it ... and Mednafen refuses to run it from the command line, it wants cue&bin, not iso.

Any suggestions?

TailChao

Quote from: elmer on 02/26/2015, 09:42 PMAs for the other things ... a custom CD BIOS scares me because it limits the audience to those with your specific hardware add-on.

PCE owners are already fragmented enough with all the different variations!
It limits your audience, but not so much if the card is cheap.

This is actually the major reason I want to do the 512KB ROM + 1MB RAM version of the card. You can just include a very slightly modified 3.0 BIOS (i.e. startup area only, like the 512KB RAM patch I posted), and it will just work as a normal super system card.
But if the game requires (or optionally can use) the extended RAM or wants to use a patched BIOS, it just loads that into RAM, maps out the system card ROM, and continues on.

When I first got a TurboGrafx and wanted to play Super CD games, I literally couldn't do so until I added a region modification to the system. The US system cards were too expensive.
This way you get an affordable card which works with either system and would offer expanded capability for translations.

OldMan

elmer:

QuoteAm I missing something here?
My apologies. I will get to why in a minute...

pceas supports 2 versions of the tam/tma instructions. The book I was using as a reference used
a single version, with the mmu register as an operand. That could be a tma7 as well.

Which brings us to the apology. The routine was originally written for a HuCard. I *thought* it was testing ROM writes; what it actually did was write to a non-existant area of the card. Mednafen would put RAM there - and thus I would know it was running on an emulator. Fwiw, ootake would do the same thing, iirc.

Now that I've thought about it some more (and run a few more tests), I'll admit I was wrong. Mednafen does block writes to ROM, at least on a cd system. If you change the addresses to $FFFE
( the reset vector), the program will report that it is not on an emulator, indicating that at least ROM page 0 is blocked from writing :( My bad.

As for running it, I mount the iso image (in Nero Image drive) and then run mednafen with -loadcd pce e: But if mednafen no longer supports 'physical' cds, that's no help. There are ways around it (burn a cd, and rip it to a cue/bin) but at this point, it's not worth the time and effort.

Again, I apologize for the mistake. Guess you will have to fix mednafen after all :(

Quotea custom CD BIOS scares me because it limits the audience to those with your specific hardware add-on.
Yes it does.  That's a later part of the dream (to keep folks from pressing a bunch of cds and re-selling them). If the card could be made cheaply enough, the people who want to play translations could buy it (and would only have to do so once) for that purpose.
Kinda like the girly 'games' :)

elmer

#46
Quote from: TailChao on 02/27/2015, 12:02 PMThis way you get an affordable card which works with either system and would offer expanded capability for translations.
Everything that you've said makes perfect sense ... you've just got to get that low 512KB of ROM switchable for RAM, and then (switchably) mirror the top 256KB of RAM into the regular SuperCD RAM location.

I really look forward to being able to buy one!  :)

Quote from: TheOldMan on 02/27/2015, 12:32 PMAgain, I apologize for the mistake. Guess you will have to fix mednafen after all :(
It looks like TailChao has already given you the capability that you want with the MCGenjin ROM, so I think that I still get to punt on the mednafen changes ... for the moment, at least.  :wink:

QuoteThere are ways around it (burn a cd, and rip it to a cue/bin) but at this point, it's not worth the time and effort.
IMHO, someone either needs to fix HuC to produce .cue/.bin, or you guys need to finally let HuC rest-in-peace and get on the CC65 bandwagon.

QuoteThat's a later part of the dream (to keep folks from pressing a bunch of cds and re-selling them). If the card could be made cheaply enough, the people who want to play translations could buy it (and would only have to do so once) for that purpose.
Please don't kid yourself ... Tobias (or whoever) will be able to go to exactly the same Chinese factory that makes your production-version carts and get them to make some for him.

If you don't get them made in China, then he'll just get them reverse-engineered in China.

Then he'll put a PCEWorks logo on it sell it as the "offical" cart for his Deluxe Edition boxsets ... and sell it for more money than you're asking ... and the crazy fools out there will buy it anyway.

If you're doing this ... do it to encourage more/easier translations, please don't make the mistake of thinking that it will have any effect on the people that re-sell translations.

HailingTheThings

Quote from: poponon on 02/27/2015, 08:22 AM
Quote from: HailingTheThings on 02/27/2015, 05:10 AM*unzips*

I'm waiting.....
*unsheathes katana*

Hmph, you're almost not worth it...

*teleports behind you, cutting you in half*

heh...nothing personnel...kid...

*tips fedora*
Talk about not knowing how to read someone. Jeeesh, were s'posed to wet your lips and close your eyes. This is the greatest gift I can give.
IMG

poponon

Quote from: HailingTheThings on 02/27/2015, 04:53 PMTalk about not knowing how to read someone. Jeeesh, were s'posed to wet your lips and close your eyes. This is the greatest gift I can give.
IMG

HailingTheThings

Quote from: poponon on 02/27/2015, 05:05 PM
Quote from: HailingTheThings on 02/27/2015, 04:53 PMTalk about not knowing how to read someone. Jeeesh, were s'posed to wet your lips and close your eyes. This is the greatest gift I can give.
IMG
I quit.
IMG