Closed GoogleCodeExporter closed 9 years ago
I know Puggsy CD has a a lot of (and rather impressive for the time) FMVs in
it, if you need further testing. The final boss of that game is just to avoid
getting killed by the FMV rendered boss.
Original comment by cheatfreak47
on 6 May 2012 at 11:29
[deleted comment]
Thanks but it's not the case as I'm already handling the "latency" thing in
vdp_68k_ctrl_w, in fact it's handled exactly as SVP RAM latency since it's
similar behavior. I only had to fix the way I was initially doing it a little
bit as it caused issue when reg[21] was set to zero, which was the cause of
Popful Mail screen corruption.
Off topic, I appreciate the fact you decided to maintain your IOS/Android port
of Genesis Plus GX through googlecode from now and although I still doesn't
like the fact you didn't respect our demand and obviously made a business out
of it, it seems like you did a good job in integrating Picodrive CD stuff in
the core.
Original comment by ekeeke31@gmail.com
on 7 May 2012 at 12:54
[deleted comment]
Actually, it's where the problem lies: when i press start to keep the intro, it
takes a very long time (something like 5000 frames) to display the konami
headquarter cutscene then it locks forever and never display what should be
next (act 1 screen then start of the game).
I already fakes the real TOC and got the intro running fine but as soon as the
game is supposed to start, it hangs as described above so i'm sure it's
something else as other emulators handle this part just fine, with or without
any audio tracks and even with "perfect synchro" disabled.
For the record, my whole implementation is written from scratch, using official
docs as main reference and Gens/Picodrive only for CDD commands or when i had a
doubt about expected behavior. I suspect it might be a bug somewhere in this
implementation but unfortunately could not figure it yet.
Original comment by ekeeke31@gmail.com
on 9 May 2012 at 10:40
Actually, it's where the problem lies: when i press start to skip the intro, it
takes a very long time (something like 5000 frames) to display the konami
headquarter cutscene then it locks forever and never display what should be
next (act 1 screen then start of the game).
I already fakes the real TOC and got the intro running fine but as soon as the
game is supposed to start, it hangs as described above so i'm sure it's
something else as other emulators handle this part just fine, with or without
any audio tracks and even with "perfect synchro" disabled.
For the record, my whole implementation is written from scratch, using
available docs as main reference and Gens/Picodrive only for CDD commands or
when i had a doubt about expected behavior. I suspect it might be a bug
somewhere in this implementation but unfortunately could not figure it yet.
Original comment by ekeeke31@gmail.com
on 9 May 2012 at 1:43
I fixed the Snatcher issue: it appears I forgot to handle 16-bit writes to
Timer & Interrupt Mask registers, which was the cause of lockup.
Original comment by ekeeke31@gmail.com
on 9 May 2012 at 11:19
That's great news ekeeke!Can we assume that a release is imminent? :-)
Original comment by pantasda...@gmail.com
on 10 May 2012 at 9:45
There is no planned "release date" and there are still many games to test, so
it's better not assuming anything at all ;-)
Original comment by ekeeke31@gmail.com
on 10 May 2012 at 12:49
Now that the attachement limit has been increased, I can continue uploading
screenshot of my progress.
Here's the result of previous bug fixes to VDP DMA from Word-RAM
Original comment by ekeeke31@gmail.com
on 13 May 2012 at 6:24
Attachments:
Apart from fixed memory handlers, Snatcher need correct TOC data to display the
intro.
The same is required by Lunar games which otherwise freeze at specific parts.
Original comment by ekeeke31@gmail.com
on 13 May 2012 at 6:28
Attachments:
Some other screenshots.
Fixes to the core were required for Vay to boot: this game requires code
running from Word-RAM in 1M mode, which was not possible with my initial
implementation.
I'm now trying to get Time Gal running: this game require very precise
synchronization between the 2 CPU and it seems I was a little bit optimistic
with my previous statement about this issue as my solution obviously does not
work for this game.
I also added .BIN support as the image I had for this game came in this format,
as well as proper name & region detection when loading CD game. Interestingly,
it seems that the region field in the header (same format as Genesis ROM
header) is not used and that the CD BOOT ROM instead compare the BOOT program
on the CD when its hard-coded BOOT program. Using the region field therefore
appeared to be quite unreliable and the method to detect region is to detect
specific byte data from the CD boot program (at address $20B, $7a is for US
security program, $64 for european and $a1 for japan).
Original comment by ekeeke31@gmail.com
on 13 May 2012 at 6:50
Attachments:
X) very exciting to see so much progress!!! Im very eager to try this out when
it gets a release! I allready have my ISOs and Bios on my flash drive and
everything ^_^ thanx EkeEke!
Original comment by cheatfreak47
on 16 May 2012 at 9:18
So cool to see such great progress ekeeke. I never though Mega CD emulation
would be possible on the Wii. This is already the greatest Mega Drive emulator
I've ever used, it's just so authentic, with MCD it will be unbeatable. Really
looking forward to it.
Original comment by tmo...@gmail.com
on 19 May 2012 at 7:21
After a huge amount of debugging and brain scratching (and thanks to the help
of Stef, author of Gens), I was able to fix Time Gal not booting.
For the record, it appears that this game need some delay between the time a
PLAY/READ command is sent to CD drive and the time it really starts reading
from the wanted sector. Good news is that is also fix Road Avenger and Cobra
Command, which share the same booting code as Time Gal.
Original comment by ekeeke31@gmail.com
on 24 May 2012 at 7:43
Attachments:
From the screens above, you would have notice have somehow increase greatly for
games: I indeed implemented CPU idle loop detection (for both CPU) which will
stop one of the CPU if it is detected to poll one of the shared register,
waiting for the other CPU to finish a task. A lot of games actually have CPU
sending lot of time polling this register and stopping them (i.e not
decoding/executing the read instructions until the other CPU unlock the
situation) helps a lot to improve emu performance.
I also improved the way CPU synchronization was done, making it tied to CPU
polling detection and bringing it to a finer granularity, while still being
more optimized than running both CPU in cycle blocks like what "perfect sync"
options are usually doing.
This actually make a lot of more game, which require very precise
synchronization between the 2 CPU, booting fine.
Original comment by ekeeke31@gmail.com
on 24 May 2012 at 8:30
Attachments:
FMV games were THE big thing when CD games appeared in the nineties... until
people realized how short they usually were and that most of them were not
enjoyable to play at all.
Now with casual gaming, I recognize rediscovering these little game is kinda
fun, and Mega CD has indeed A LOT of FMV games to discover ^^
Original comment by ekeeke31@gmail.com
on 24 May 2012 at 8:37
Attachments:
Dragon Lair & Space Ace share the same weird code where they write to a
read-only register and expect data to be written to the next register and
bit-shifted by one. Adding support for this undocumented feature actually make
them playable now.
Original comment by ekeeke31@gmail.com
on 24 May 2012 at 8:42
Attachments:
Next two games to debug would be Ecco & Jaguar XJ220 which both suffer from
graphic corruption in-game. Not sure where it comes from but it might be a bug
with my emulation of some rarely used memory mode.
Original comment by ekeeke31@gmail.com
on 24 May 2012 at 8:46
Attachments:
Here are two screens that better show the performance increase dued to CPU idle
loop detection.
Original comment by ekeeke31@gmail.com
on 24 May 2012 at 9:03
Attachments:
thanks your progress is very impressive, thanks for your work
Original comment by mrdeathj...@gmail.com
on 24 May 2012 at 11:31
Fixed some bugs with DOT Image word access, which fixes Jaguar XJ220.
Original comment by ekeeke31@gmail.com
on 29 May 2012 at 11:19
Attachments:
For the record, this also fixed Dune intro which was badly screwed.
Still need to figure what is causing Ecco CD graphic bugs.
Original comment by ekeeke31@gmail.com
on 29 May 2012 at 11:27
Attachments:
[deleted comment]
[deleted comment]
Wow, can't believe the progress so far! I'm so excited to play.
Original comment by cole...@gmail.com
on 31 May 2012 at 8:05
That seems pretty stable. Good to see theme park, sonic cd, and puggsy are all
working. those were the only games i had for my sega cd (unfortunately, my disk
copy of theme park is no longer in working condition.)
Original comment by cheatfreak47
on 1 Jun 2012 at 12:35
[deleted comment]
Finished testing the entire Mega CD / Sega CD library, compatibility is quite
good with a few games probably still needing a few CPU sync improvement and
maybe some remaining bugs with RAM transfer and/or graphics data handling.
********************************************************************************
**
NOT WORKING (16 GAMES)
********************************************************************************
**
A-Rank Thunder Tanjouhen (hangs during intro cinematic)
Batman Returns (hangs after start intro)
Corpse Killer (random "drive error" hangs during game)
Cosmic Fantasy Stories (hangs when starting new game)
Earnest Evans (hangs after Wolf Team logo)
ESPN Sunday Night NFL (hangs when starting new game + gfx errors during intro)
Fifa International Soccer (hangs after Sega logo)
Arslan Senki - The Heroic Legend of Arslan (hangs at copyright screen)
Jeopardy (hangs during intro)
Joe Montana's NFL Football (hangs when starting a game)
NFL Football Trivia Challenge (hangs when starting a game)
NHL '94 (hangs after intro)
Sangokushi III - Romance of the Three Kingdoms (hangs at Sega logo)
Seima Densetsu 3x3 Eyes (hangs after Sega logo)
Seirei Shinseiki - Fhey Area (hangs after Wolf Team logo)
Shadow of the Beast 2 (hangs at Sega logo)
********************************************************************************
**
GRAPHICAL ISSUES (8 GAMES)
********************************************************************************
**
Adventures of Willy Beamish, The (swapped tiles)
AH3 Thunderstrike / Thunderhawk (corrupted maps)
Battle Frenzy / Blood Shot (graphic issues)
Chuck Rock (corrupted tiles)
Citizen X (corrupted menu bar)
Ecco the Dolphin (random corrupted tiles)
Ecco: The Tides of Time (random corrupted tiles)
World Cup USA 94 (corrupted tiles)
********************************************************************************
**
WORKING (191 GAMES)
********************************************************************************
**
3 Ninjas Kick Back
Adventures of Batman & Robin, The
After Burner III
After Armageddon Gaiden
Aisle Lord
Alshark
Android Assault / Bari Arm
Anett Futatabi
Animals, The
Aoki Ookami to Shiroki Mejika - Genchou Hishi
Arcus 1-2-3
AX-101
Bakuden: Unbalanced Zone
Battlecorps
Battle Fantasy / Revenger of Vengeance
BC Racers / Stone Racers
Bill Walsh College Football
Black Hole Assault
Bouncers
Bram Stoker's Dracula
Brutal: Paws of Fury
Bug Blasters: Exterminators
Burai
Cadillac & Dinosaurs
Capcom No Quiz: Tonosama no Yabou
Captain Tsubasa
Championship Soccer '94 / Sensible Soccer (hangs at menu)
Chuck Rock II: Son of Chuck
Cliffhanger
Cobra Command / Thunder Storm FX
Compton's Interactive Encyclopedia
Crime Patrol
Cyborg 009
Daihosinden
Dark Wizard
Death Bringer
Demolition Man
Denin ALeste / Robo Aleste
Detonator Orgun
Devastator
Double Switch
Dracula Unleashed
Dragon's Lair
Dune
Dungeon Explorer
Dungeon Master II
Dynamic Country Club
Earthworm Jim: Special Edition
Egawa Suguro no Super League
ESPN Baseball Tonight
ESPN National Hockey Night
ESPN NBA Hangtime '95
Eternal Champions
Eye Of the Beholder
F-1 Circus CD
Fahrenheit
Fatal Fury Special / Garou Densetsu Special
Final Fight CD
Flashback
Flink
Formula One World Championship: Beyond the Limit
Funky Horror Band
Gambler Jiko Chuushinha 2
Game no Kanzume - Sega Games Can Vol.1
Game no Kanzume - Sega Games Can Vol.2
Genei Toshi: Illusion City
Ground Zero Texas
Heart Of The Alien
Heavy Nova
Heimdall
Hook
Iron Helix
Ishii Hisaichi no Daisekai
Jaguar XJ220
Johnny Mnemonic
Jangu World Cup
Jurassic Park
Keio Flying Squadron / Keiou Yuugekitai
Kids on Site
Lawnmower Man, The
Lethal Enforcers
Lethal Enforcers II
Links: The Challenge of Golf
Loadstar: The Legend of Tully Bodine
Lords of Thunder
Lunar: Eternal Blue
Lunar: The Silver Star
Mad Dog Mc Cree
Mad Dog Mc Cree II
Mahou no Shoujo: Silky Lip
Make My Video: INXS
Make My Video: Kris Kross
Make My Video: Marky Mark and the Funky Bunch
Make My Video: Power Factory Featuring C+C Music Factory
Mansion of Hidden Souls / Yumemi Mystery Mansion
Marko's Magic Football
Mary Shelley's Frankenstein
Masked Rider, The / Kamen Rider ZO /
Mega Race
Mega Schwartzchild
Mickey Mania
Microcosm
Midnight Raiders
Mighty Morphin Power Rangers
Might and Magic III: Isles of Terra (only works with Mega CD II BIOS)
Mortal Kombat
My Paint
NBA Jam
Night Striker
Night Trap
Ninja Warriors, The
NFL's Greatest: San Francisco Vs. Dallas 1978-1993
Nobunaga no Yabou - Haouden
Nostalgia 1907
Novastorm
Panic / Switch
Penn & Teller's Smoke and Mirrors
Pitfall: The Mayan Adventure
Popful Mail
Power Monger
Prince of Persia
Prize Fighter
Pro Yakyuu Super League CD
Psychic Detective Vol. 3: Aya
Psychic Detective vol. 4: Orgel
Puggsy
Quiz Scramble Special
Racing Aces
Radical Rex
Ranma 1/2 Byakuranaika
RDF Global Conflict
Record of Lodoss War
Revenge of the Ninja
Rise of the Dragon
Road Avenger / Road Blaster FX
Road Rash
Samurai Shodown / Samurai Spirits
Secret of Monkey Island, The
Sega Classics Arcade Collection: 4 in 1
Sega Classics Arcade Collection: 5 in 1
Sengoku Densyo
Sewer SHark
Shadowrun
Sherlock Holmes - Consulting Detective
Sherlock Holmes - Consulting Detective Vol. II
Shin Megami Tensei
Shining Force CD
Silpheed
Sim Earth
Slam City with Scottie Pippen
Smurfs, The
Snatcher
Sol-Feace
Sonic CD
Sonic Megamix
Soulstar
Space Ace
Space Adventure Cobra
Spiderman VS The Kingpin
StarBlade
Star Strike
Star Wars Chess
Star Wars: Rebel Assault
Stellar Fire
Supreme Warriors
Surgical Strike
Syndicate
Tenbu: Mega CD Special
Tenkafubu - Eiyuutachi no Houkou
Terminator, The
Theme Park
Third World War
Time Gal
Time Cop
Tomcat Alley
Trivial Pursuit
Ultraverse Prime
Urusei Yatsura: My Dear Friends
Vay
Virtual Vcr -The Colors of Modern Rock
Warau Salesman
Wheel of Fortune
Who Shot Johnny Rock?
Wild Woody
Wing Commander
Winning Post
Wirehead
Wolfchild
Wonder Dog
Wonder Mega Collection
WWF Mania Tour / WWF Rage in the Cage
Yumimi Mix
Original comment by ekeeke31@gmail.com
on 2 Jun 2012 at 10:55
Attachments:
191 is pretty stable.
good luck fixing the graphical issues
Original comment by cheatfreak47
on 2 Jun 2012 at 11:34
I fixed Citizen X, WIlly Beamish & AH3 Thunderhawk/Thunderstrike graphic
issues, though the two latters still suffer from minor graphic issues as shown
in screenshots below.
It appeared that these games rely on the Word-RAM data remaining intact when
switching between 1M and 2M mode: Word-RAM is indeed divided in two 128K banks
which can either be accessed one bank at a time (1M mode) or entirely (2M mode)
by both CPU. Most games will setup RAM data after switching modes but a few
games will actually expect data to be still in place when modes are switched.
Difficulty comes from the fact that both banks are interleaved (1st word of
bank 1, 1st word of bank 2, 2nd word of bank 1, etc) when seen in "full" 2M
mode and that CPU can actually execute code from this RAM in both modes. I had
to change a few things to make this accurately handled and get these games
working.
For the record, it also fixed Shadow of the Beast II not booting previously and
gfx errors in ESPN Sunday Night NFL.
Original comment by ekeeke31@gmail.com
on 3 Jun 2012 at 11:59
Attachments:
I fixed level 1 interrupt handling to get Batman Returns working: it appears
that this interrupt should not be made pending if it is masked in the interrupt
control register when a graphics operation ends, but rather simply dismissed.
What happened was that this interrupt eventually get triggered later when the
game reinitializes the register, which is unexpected by the game and cause it
to reset itself and crash.
Original comment by ekeeke31@gmail.com
on 3 Jun 2012 at 4:33
Attachments:
Seems like Main-CPU interrupt (and presumably Timer interrupt as well) need to
be handling similarly as "Arslan Senki" got fixed by dismissing pending level 2
interrupts and writes to IFL2 bit when interrupt is disabled in Interrupt
Control register.
Original comment by ekeeke31@gmail.com
on 3 Jun 2012 at 5:09
Attachments:
Good News... most graphical issues were fixed by correcting the way VDP was
reading from Word-RAM using DMA: I forgot to handle rare cases where the
address auto-increment was set to something else than a value of two.
I also added SUB-CPU sync with MAIN-CPU when level 2 interrupt is triggered by
the former, which was required by Earnest Evans & Fhey Area (two games from
Wolf Team... again.. seems like they are all very sensitive to CPU sync).
And finally, I improved CPU polling detection in order to get 3x3 Eyes working.
Side effect is that a bunch of other games (FIFA, Joe Montana's NFL Football,
NHL 94 & Corpse Killer) now run fine, though I'm not sure to what changes it's
related.
Which give the following compatibility now:
********************************************************************************
**
NOT WORKING (6 GAMES)
********************************************************************************
**
A-Rank Thunder Tanjouhen (hangs during intro cinematic)
Cosmic Fantasy Stories (hangs when starting new game)
ESPN Sunday Night NFL (hangs when starting new game)
Jeopardy (hangs during intro)
NFL Football Trivia Challenge (hangs when starting a game)
Sangokushi III - Romance of the Three Kingdoms (hangs at Sega logo)
********************************************************************************
**
GRAPHICAL ISSUES (2 GAMES)
********************************************************************************
**
Adventures of Willy Beamish, The (corrupted logo)
AH3 Thunderstrike / Thunderhawk (minor graphics error)
Original comment by ekeeke31@gmail.com
on 4 Jun 2012 at 9:17
Attachments:
[deleted comment]
It appeared the copy of Romance of the Three Kingdoms III I tried was a
corrupted CD image, hence why it didn't work. Now works perfect now with a
correct copy.
Still have strange issue with this weird Japanese game, A-Rank Thunder, as I
cannot figure why it hangs there. I have the feeling this screen is some kind
of error message but cannot read Japanese so can only guess. If anyone could
translate what is written there, it will be much appreciated.
Original comment by ekeeke31@gmail.com
on 6 Jun 2012 at 8:51
Attachments:
Hey eke, great work as i have been following this for quite some time.! :) will
you be including this with the basic windows port when it is ready? im trying
to help figure out what that japanese writing is above.
Original comment by joepog...@gmail.com
on 6 Jun 2012 at 9:21
All the test i made so far are done with the windows port, because it's much
more practical for quick testing. Thanks to the way the emulator is designed,
backporting to Wii is straight forward, with only a few changes required in the
interface.
So yes, windows port will be updated, although i hardly see why anyone would
seriously want to use it in that state, better use Kega until someone make a
decent PC port of the new core.
Original comment by ekeeke31@gmail.com
on 7 Jun 2012 at 1:33
thanks for the response! The reason why i ask is because of the "secret
project" i have emailed you about a few times with questions and would love to
have it included with the build alongside the genesis emulation. :)
Original comment by joepog...@gmail.com
on 7 Jun 2012 at 5:37
Since the support for sega/mega cd is so good now, any idea when we will see a
wii release? Not to sound impatient or anything. im just happy to see so much
progress on SCD emulation. ^_^
Original comment by cheatfreak47
on 7 Jun 2012 at 9:57
I have absolutely no idea, there is no scheduled release plan and no urge to
release anything, at least for me.
Original comment by ekeeke31@gmail.com
on 8 Jun 2012 at 12:57
hi there ekeeke,
this is Squarepusher. With regards to the Windows port lacking - we could
rectify this problem by finally merging the libretro port into the Genesis Plus
GX master branch - that way, not only do you get native Linux/Windows/OSX
support, but PS3/360 as well.
I would be all for it since it would mean I could drop my fork of the project.
Original comment by libre...@gmail.com
on 8 Jun 2012 at 1:47
I can give you access to the repository if you want
Original comment by ekeeke31@gmail.com
on 8 Jun 2012 at 5:25
Sure, that would be very nice.
I noticed you made a Github repository - is that the main repository now? If
so, I could git clone your repo, commit the libretro port and then do a git
pull request so you can integrate it into your repo.
Original comment by libre...@gmail.com
on 9 Jun 2012 at 12:41
I setup the github repository in case i am once again (and this time
definitively) kicked of googlecode because of license issues, i will update
both repositories simultaneously until i make the decision of leaving
googlecode for good.
You can indeed submit your commit and I will integrate it, but I would suggest
waiting for the core update that will come with Mega CD support, a lot of files
were affected since I modified the way CPU core are handled.
Back to the topic:
- it appeared ESPN Sunday Night NFL & NFL Football Trivia Challenge were not
frozen but you needed to hit 2nd player controller button to go further, my bad
- Jeopardy was fixed by improving CPU polling loop detection once again, now
work with all games which is a relief
- Sangokushi III - Romance of the Three Kingdoms III was a bad dump, a good
dump plays fine
Current compatibility list:
********************************************************************************
**
NOT WORKING (2 GAMES)
********************************************************************************
**
A-Rank Thunder Tanjouhen (hangs during intro cinematic)
Cosmic Fantasy Stories (hangs when starting new game)
********************************************************************************
**
GRAPHICAL ISSUES (2 GAMES)
********************************************************************************
**
Adventures of Willy Beamish, The (corrupted logo)
AH3 Thunderstrike / Thunderhawk (minor graphics error)
********************************************************************************
**
WORKING (212 GAMES)
********************************************************************************
**
Original comment by ekeeke31@gmail.com
on 9 Jun 2012 at 7:24
Fixed the two last non-working Japanese games:
- A-Rank Thunder Tanjouhen requires correct disc TOC as it starts playing
various audio tracks during intro and expect the track index to increment
automatically and reach a specific audio track before continuing.
- Cosmic Fantasy Stories needed better CPU sync, which was achieved by
improving SUB-CPU polling detection once again. I verified other games still
work fine after that change, which is good.
So much for two games which nobody is probably gonna play anyway but reaching
100% compatibility in only two months is something quite satisfying :-)
Original comment by ekeeke31@gmail.com
on 10 Jun 2012 at 2:40
Attachments:
Congrats on getting 100% compatability :) Things are looking good. Excited for
the Wii build :P
Great job.
Original comment by ploggy16...@gmail.com
on 11 Jun 2012 at 5:04
So i'd assume a Wii build isn't too far off. Maybe a month or so? :D I can't
wait to Play Sega CD games on my wii! Its like the Virtual Console Nobody (not
even psn or xbla) got! Congrats on 100% Compatibility!!! Thank you! And Good
luck with googlecode's crap btw.
Original comment by cheatfreak47
on 11 Jun 2012 at 5:24
Fixed a bug with VDP DMA (on the Genesis side) which was the cause of corrupted
logo in Willy Beamish. Contrary to my initial beliefs, DMA source address
registers are not incremented during DMA and should keep the initial written
value. Surprisingly, no Genesis games seem to rely on this as this bug was not
catched until today.
One left... the last being the hardest to figure out off course
Original comment by ekeeke31@gmail.com
on 12 Jun 2012 at 7:16
Attachments:
Thank you!!! I' love to play Dune and Sim Earth on WII. It will be on future a
PC release with a WII GUI ? Your GUI is cool and intuitive.For curiosity are
there any cheats or cheat system for SEGA CD like action replay or game genie?
Original comment by ferran...@hotmail.com
on 13 Jun 2012 at 1:14
Original issue reported on code.google.com by
Yod4zM...@gmail.com
on 29 May 2009 at 7:10