Search Interactive Dreams

CD-i Bits (News about CD-i Emulator)

Linkbar

>> Saturday, October 24, 2009

Gannon has returned! Link has been captured. The land of Tolemac (aka Hyrule) is being overrun. The Celestial Signs have been stolen. Now who's up to the challenge? Zelda! No longer the damsel in distress, she's ready to rock. And this version finally does the CD-i & the Zelda series some justice. It's about time.

With the earlier incarnations of the LEGEND OF ZELDA series on CD-i really stinking up the CD-Rom drive, you'd think there's no way they'd make a third for the machine. Suprisingly they did, and MAN! what a difference. While not on a par with the new Zelda 64 or the SNES' A LINK TO THE PAST, it really does shine. Returning to the original top down display of the NES games, it adds a freedom of movement & removes the rigidity of control that the side scrollers had. Zelda's Adventure regains the respect for the CD-i the other two took away.
Graphicly, the CGI rendered backgrounds really look stunning. Really sharp. However, character definition and animation is just mediocre. Often times the monsters seem really chunky & not well defined. Not overly distracting, but not un-noticable. Another complaint is that there is so much data to load for each area that often there is a very noticable pause between screens. This isn't so bad, excep occasionally durring sequences where you have to cross several screens quickly. It can slow down the fun. I also have to applaud them for switching away from the terrible animated versions of the chacters. Though to be honest, she's not my idea of what Zelda would look like human. Oh Well! It's still better than before.
As to sound, the voice-overs are pretty decent, as is the music (what music there is). The sounds of combat seem a bit dated, even by CD-i standards, but really that can be overlooked. Control is very good with very few problems, except with some menus. Nothing really bad. Play is easy with the 4-Button Gravis pad, but the 3-button will do. I highly reccomend AGAINST the thumb stick, it makes combat & menu operations very tedious.
Overall this game seems like a return to the original NES style of Zelda play. You move off the edge of the screen, you go load another screen. No large scrolling areas. This game is for the real Zelda fan. A decent story. Great control. Good (albeit sometimes muddy) graphics. If you're a fan of the "Old School" Zelda, this game is definitly for you.
Pictures thanks to Quebec Gamer

Remember cdifan rumoured the upcoming CD-i File Player back in March 2008? This would give you the opportunity to extract audio files of a CD-i disc and other files, like graphics. While it's not quite there yet, cdifan introduced today the start of his CD-i Base Library. The CD-i Base library will be a collection of library functions that can be used as a base for building a CD-i application. It will ultimately contain functions to access all the commonly-used functions of the CD-i platform. The CD-i Base library will be brought to you by CD-i Fan, drawing on his extensive experience in programming the CD-i system. More information will soon appear and reported by Interactive Dreams.
Richt now the library is empty, although cdifan already uploaded the first application of the CD-i File Player. cdifan: "My cue file generation tool is now available here; as a bonus I have added raw image file extraction and direct chd file creation (the latter is implemented by calling chdman with suitable parameters). The cdifile program incorporates source code from MAME/MESS (specifically, the lib/util directory and parts of the osd and osd/windows directories) written by Aaron Giles.

The purpose of the CD-i File Extractor program (cdifile) is to extract data from CD-i files.
With the current version of cdifile you can extract the following from any CD-i disc image file that is supported by CD-i Emulator:
- raw file in mode2_raw format with 2352 bytes/sector
- cue file compatible with chdman (chd management tool from MAME/MESS)
- chd file compatible with MAME/MESS (requires chdman)

CD-i Emulator supports "raw disc image" file formats with sector sizes of 2448, 2352, 2340, 2336 and 2332 bytes, with or without two-second pregap and/or scrambling. This should cover all the "raw disc image" file formats out there. In particular, the Nero (.nrg) file format for track-at-once images is supported, as well as the IsoBuster (.bin) and CloneCD (.img) files. A future version of CD-i Emulator will also support MAME/MESS compressed hunk data (.chd) files; cdifile already supports such files and can be used to extract data from them."

Again it looks like the development of the MESS CD-i driver accelerated the development of CD-i Emulator and cdifan's CD-i tools; in the future collected in the CD-i base Library.

>> Thursday, October 22, 2009

Unexpected news to hear that Pete Dabbs (author of the first CD-ICE emulator) and Charles Doty (author of Frog feast CD-i) have both joined the CD-i MESS team, willing to help and share their CD-i knowledge. Hopefully this speeds up MESS CD-i compatibility even more; Although it's going really fast already! Pete: "It's me, author of the "shocking" cd-i emulator :P Devin has asked me to do an interview for Blackmoon and I noticed on his news page that CD-i support was being added to MESS. As I'm thinking about doing a game for CD-i I thought I'd check out see how it's progressing and offer any help I can. It has been 8-9 years since my emu though so I can't remember much about CD-i internals but I do have the Rise of the Robots source code "somewhere"."

cdoty: "That sound amazing. Please post your progress, and findings to a blog. I would be interested to read what you're working on, and how you are implementing things. I am also tempted to get back into CD-i development."

CD-i is coming back to life! The rumors of its death must have been greatly exaggerated!

>> Monday, October 19, 2009

I remember Mathias from Philipscdi.com (dormant CD-i website) used to put up new headers of CD-i games on top of the website, perfectly created from original CD-i art. Now Devin (Black Moon Project) is more and more creating pixel art from CD-i characters on the main website.

It is amazing how fast the development of the MESS CD-i driver goes and how it even helps the development of CD-i Emulator 0.52 as well. A little round up on what happened last week according to some quotes by the developers:"I just fixed the remaining crackling audio issue via a ghastly hack: Duplicating the last L/R sample pair into an additional 8 samples of slop space at the end of the sample buffer. I'm not sure why this fixes the issue, because our DMA-driven DAC certainly shouldn't be reading off the end of the sample buffer, but the results are undeniable.
And that also fixes the long-standing CD-i Emulator "click to continue" issue on many intro animations!
There was a small bug that reintroduced an issue with Hotel Mario, where the RLE video animations do not appear in front of the correct background. I fixed it by only triggering an interrupt if EOF or EOR is set and the FORM bit is set. This should also fix an issue CD-i Emulator has where the Zelda games don't display the title screen properly. CD-i Emulator also appears to suffer from the same Hotel Mario issue as what I just introduced, so this might help nail that one down.

Right now I have it playing the first sample in Lemmings just fine, albeit poppily, where you hear a lemming say "Let's go!" when you start a level. Unfortunately, the game goes haywire when it's time to play the next sample, and it blows up with a coding type of 0xFF. I think it may be because I'm unclear on when to stop requesting data - maybe when it writes a 0xff as the coding byte?
I can get Sargon Chess running great - oh, but what CD-i Fan is telling me flies completely in the face of what it took to get it to run without freaking out, and Sargon Chess doesn't boot in CD-i Emulator, so I can't use that as a reference in this case. I can get background music running great in Hotel Mario now - oh, but when I lose a life, the game crashes because it's trying to do a DMA transfer from some crazy-assed memory location like 0x05140000. Oh, and with my changes to get sound effects "working", Zenith's menu music is truncated. Oh, and also, Pac-Panic crashes with sound effects enabled, because for some reason it tries to do a DMA with the same crazy-assed memory location. To top it all off, background music doesn't work in Lemmings, it just plays sound effects like it would if I had selected SFX mode.

How would one go developing a game for the CD-i in C, and also generating a standard CD-i disc image in the process so that I can boot it on a real CD-i or an emulator without using CD-i Link?
I ask because the more I think about it, the more it wouldn't surprise me if it would be possible to do a Star Fox clone for the CD-i. For fast flat-shaded polygons, you just need hardware RLE support, and the CD-i has exactly that. I imagine it could be done pretty simply using an RLE CLUT7 layer on top of a horizontally-scrolling CLUT7 layer for the skybox.

Despite advice to the contrary, I'm now forcing any audio sectors that match both the Channel Register and Audio Channel Register to 0x2800 / 0x3200, as it allows Sargon to boot and Compton's Interactive Encyclopedia 1992 to play videos (neither of which work in CD-i Emulator, in my experience). That said, CD-i Emulator has better audio, so... - DYUV planes have Color Key forced to true, as Color Key functionality is only defined for CLUT planes. - Added Mosaic File support. This fixes the graphics in Namco Arcade Classics and Jeopardy, allows Sargon Chess to boot and run fully playably, and videos work properly in Compton's Interactive Encyclopedia 1992. CD Shoot also appears to work well."

>> Sunday, October 18, 2009

After four years of silence even the CD-i Emulator Home website is getting new updates. cdifan: "Added Hardware and Software sections containing an inventory of my CD-i hardware and software. I disassembled some CD-i players and most of my DVC collection to take some pictures. Check out http://www.cdiemu.org/hardware/ (adding picture links right now; currently only 22ER9141/00 (Gate Array MPEG rev 3) has them). I haven't gotten around to typing in component numbers yet, but you should be able to make them out yourself. It's mainly DVCs but there a few nice pictures of CDI605 and CDI660 internals.
Some observations:
- The two versions of the 22ER9141 cartridge seem remarkably similar (Gate Array MPEG and VMPEG).
- These cartridges use an XCD251FU chip for video (unmarked in the Gate Array MPEG) and a DSP56001 for audio.
- The 22ER9956 cartridge (IMPEG) uses an XCD270FU chip, presumably for both audio and video (hence "Integrated").
- The GSC38GG307PG* chip is on all three cartridges; it's location near the DRAMs suggests that it is the MPEG video display controller (stored in memory in some YUV format)."

CD-i is not easy to categorize in the line of game consoles of the past years. At core is it a 16 bit design which sounds like it should be capable of games that were also possible on the Super Nintendo/Famicom or Sega Mega Drive. The fact CD-i was CD-based made it slower compared to cartridge-based systems. But I doubt it could handle the speed of SNES games, simply because the system design of CD-i was not positioned at games in the first place. On the other hand: CD-i could be upgraded with a Digital Video Cartridge which was equipped with a 32 bit RISC processor. A few months back we took a look at the Digital Video Cartridge. The acronym RISC stands for reduced instruction set computer, it represents a CPU design strategy emphasizing the insight that simplified instructions that "do less" may still provide for higher performance if this simplicity can be utilized to make instructions execute very quickly. Although it made 3D graphics possible like in Chaos Control, it didn't make CD-i a 32 bit machine. But it's definately more than a 16 bit machine. So what is it?

>> Wednesday, October 14, 2009

As quoted by the MESS CD-i Emulation author: "Incidentally, I get the feeling that [MPEG support] is an area where CD-i Emulator will best MESS for a good ways to come; for patent reasons, we aren't emulating any MPEG-oriented hardware in any arcade machines, computers or game consoles unless it turns out to be software or a ROM running on a CPU that does the decoding. That's why there was so much hope that one of the DVCs might have just use a DSP56k for audio and video decoding."

>> Tuesday, October 13, 2009

Not to forget Devin is getting the news round up again over at The Black Moon Project after a beauty sleep of over one year. It seems like the MESS CD-i emulation is waking up everybody! It's amazing several titles show up on Youtube proving CD-i titles are running in the MESS CD-i Emulation environment. Development seems to improve fast and it is running to beat CD-i Emulator 0.52 possibly in a few months!

The work on the MESS CD-i Emulator also triggered the author of the original CD-i Emulator to improve compatibility. A nice example of the synergy that the MESS guys and CD-i Fan have developed whilst working on their individual wares. Check out Zenith works with the developmental v0.5.2a version of CD-i Emulator:

>> Sunday, October 11, 2009

From the same guy who made the concept art of The Apprentice 2: Marvin's Revenge, this guy made more graphics for SPC Vision games including The Apprentice (background graphics), Steel Machine (background graphics) and Uncover: Featuring Tatjana. He did this while working at his own company Zephyr Studio (based in Eindhoven, The Netherlands). Zephyr was hired by SPC Vision to create these graphics. He was also responsible for an unknown (and unreleased) CD-i game named Falco & Donjon & The Sword of Inoxybur. It was supposed to be published by BMG Interactive, but along the development time it decided to stop its software publishing. Moreover the lead programmer died suddenly. It was a classic point & click adventure (like Monkey Island) with all the classic functions we know. More when it develops.

From what we reported before, The Apprentice 2: Marvin's Revenge was the sequel of one of the best CD-i 2D platform games of 1994: The Apprentice. However, all we got was some concept art of how the game could have been looked. The departure of PixelHazard (two guys from the original development team The Vision Factory) changed plans and the development of CD-i in general wasn't helping either. But... there might be more than the concept art we posted before in 2007. Here's a teaser posted by Devin.
It's a coincidence I was just around some info about the CD-i game 'Falco & Donjon & The sword of Inoxybur', from BMG Interactive. The graphics were made by the same guy who was behind the trailer of The Apprentice 2. It would highly surprise me if actual game code of The Apprentice 2 exists, but there is a trailer (where the screens were taken of that we know) which was used as a promo to get the interest of Philips Media. Who, unfortunately, was going to stop CD-i anyway.

October 5, 2009
The previously unreleased document Mono II Player Status has been included under the CD-i Technical Documentation / System section.
Technical Note #061, titled Software Sprites in CD-i has been included in the Philips Interactive Media Technical Notes section.

October 4, 2009
Created a section to house Philips Interactive Media Technical Notes under the heading CD-i Documentation. Included the first document designated Technical Note #069, titled Technical Status of the Philips 910 CD-i Player.

The goal of MAME and MESS is to provide accurate hardware-level emulation of systems, regardless of the performance implications. There are many games in MAME that aren't anywhere near full-speed on any PC that exists currently simply due to accurate emulation of the hardware. Our goal here isn't to make CD-i Emulator obsolete, not by any stretch of the imagination. Typically, MAME/MESS doesn't care about performance, it's a reference emulator. CD-i fans hoping for "better than the real thing" emulation for special video filtering features, netplay, etc. should better look elsewhere (perhaps, CDiemu).
Update (22) (10/10)

Although... "I'd be willing to bet that the high-pin-count Motorola custom is whatever beastly integrated CD + audio controller solution they're using. If you go directly to the image links to get around the non-linked resize mangling that the boards do to the images, you can read the part numbers on most of the MPEG board's chips pretty clearly. My Google-fu might be weak, but at any rate, I couldn't come up with anything for any of the Motorola-branded customs except the DSP56k. For example, the XCD251FU part has exactly 0 results that aren't fracking Chinese part-mining sites. Motorola does not make one-off customs. Those chips were sold to everyone, so documentation should be possible. The XC prefix is problematic though since it indicates a pre-production sample ("eXperimental Chip"). I'd just figured out MCD251 as part of the typical Motorola chipset."CDI 470/05 PCB
CDI 470/05 PCB (Underside)
Picture of the Digital Video Cartridge in a 490...

Excerpt taken from a CD-i Technical Note (from ICDIA): Architecturally, CD-i is not very similar to a "game machine". Characteristics, such as sprites and collision detection, are not supported by the hardware. Yet CD-i's powerful graphics capabilities, relatively powerful CPU, two-plane video display architecture, built-in, run-length logic and superior audio circuitry - all under the control of a real-time operation system - can provide substantial functionality in the domain of action games, albeit at a different level of coding sophistication.

Although CD-i is not intended as a game machine, several characteristics of CD-i make it a more suitable platform for games than traditional PC's. Thanks to the audio/video capabilities of CD-i, exciting games were possible on CD-i, even without the full motion video addition of the Digital Video Cartridge. The picture above is an early graphic collection of CD-i Steel Machine.

>> Saturday, October 10, 2009

>> Thursday, October 1, 2009

After CD-Ice (2002) and CD-i Emulator (2005) there is a next interesting effort put in this third CD-i emulation project at MESS. Nobody knows how far it will come but it actually triggers the interest of CD-i Emulator again after three years of silence. We'll try to follow the developments close although I have to repeat cdifan's claim of how complex and difficult emulating the CD-i is, but it's a fact there is a start at MESS. User 'Just Desserts' with the help of cdifan (the author of CD-i Emulator) has done all the great work. Screens ate of the actual new MESS CD-i Emulator.

The technical story: "I'm not really sure how much farther I'll be able to go at this point, though. I'm pretty sure it now wants some sort of communication with the CDIC and SLAVE devices, both of which are completely undocumented, as far as I've been able to find. There are multiple CD-i revisions, all of which are pretty dissimilar, and will require a whole lot of work on a per-machine basis to emulate in MESS. I'm currently emulating the Mono Imodel (Philips 220 F2), which is arguably the simplest out of all of them. There is no MPEG decoder in the original base machines, just an external cartridge that is used by some (but not all) games, hence skirting around the MPEG patent issue for now.

"Of course, the screenshots sit on a throne of lies; it's only because I responded to the BIOS's initial 0xb0000000 inquiry with 0xb0000215. Interestingly, it doesn't seem to actually care about the disc base unless I reply with 0xb0004101, which makes sense as the BIOS I'm dealing with looks for bit 6 to be set in the second-least-significant byte. Ahh, progress.
The Mono I model that I'm emulating consists of an SCC68070-based processor, SLAVE (probably an MCU) + CDIC (both working together for CD tasks), some model of off-the-shelf RTC (I forget which, but it's documented in the driver), and an MCD212 video chip. I just submitted mouse movement support for the CD-i driver. I posted that C-Cube CL-450 documentation on the CD-interactive forums a few weeks ago. Sorry that it wasn't the C-Cube chip used in the CD-i for some reason, but I'm at least postive it was used in the Amiga CD32 MPEG module.

I'd also like to see a metric ton of PCB scans/photos to start towards "identifying" the custom chips in CD-I, although I'd venture to say you've done a ton of work. I see that incog and Arbee have stepped up to the plate, but you need to motivate your fanbase and collectors over at CD-interactive forums."
cdifan: "The SLAVE/IKAT interfaces are pretty simple and mostly deal with basic control of the CD drive (seek, start, stop, etc) and full control of pointing devices (except backside port), front display and buttons, and a small bit of machine control (reset). The difficult part is that these interface are referenced from many different drivers (one for each device type accessible via the SLAVE/IKAT), but it's not inherently hard to emulate, just a lot of work.

The main source of incompatibilities is, in my view, in the register and timing details of the CD+AUDIO controller chips. These chips are undocumented and reverse engineering of drivers only goes so far. I have in a few cases made instrumented drivers to run on the the real hardware and provide me with actual chip register access traces, but this is hard to do, the trace buffers are finite and you quickly drown in the data except for very simple test cases (which running a game with compat probs certainly is NOT).
All Philips-built players contain a download routine in the ROMs that you can use to download whatever you want into the player; it doesn't even have to be OS9. You may want to check out my "cdistub" program (it comes with assembly source) and the host program to go with it, "cdilink" (no source yet). Both can be found in the Downloads section of the CD-i Emulator site; they make it possible to upload the ROMs of any Philips CD-i player to a PC needing only the right cable. No need to burn ROMs :-)"

So far the story updated October 3th. Nobody knows where it will end but it's great news in the small world of CD-i.

Welcome to CD-i!

Welcome to the wonderful world of Interactive Dreams. You've just come to a warmhearted place all dedicated to the Philips CD-i. With attention to detail and quality, 2015 should see the rise of CD-i as a Retrogaming platform. For many CD-i has gone as a relative obscurity had it not been for the intervention of websites like The Black Moon Project and Interactive Dreams. Hopefully we're doing our bit to set the record straight along with all the other great CD-i projects.

Visits

Followers of Interactive Dreams

Downloads

About This Blog

Do you have tips on what to post about CD-i? Can you help us with screenshots, videos or reviews? We'd love it when you share it with us! Please email us at interactive [dot] dreams [at] gmail [dot] com, thanks in advance!