#Philips CD-i

1 messages · Page 6 of 1

hardy hedge
#

But I did also manage to hook in the Verilator thing with the ISO loading C code from Opera.

#

(could only allow either the Verilog or emu to access it at one time, though.)

#

Yeah, I/we did quite a lot on 3DO a while ago, but then the Dreamcast whispered in my ear.

#

(DC code is quite a bit more recent, so works with Verilator 5.)

odd trout
#

The sirens call of the 3DO will lure you back... one day

hardy hedge
#

lol

terse flare
#

Is there a target platform with an FPGA big and fast enough to run a dreamcast? Sorry, I'm living under a stone.

hardy hedge
#

Now I want to do a version of that image, but in the style of CD-i Zelda.

hardy hedge
#

IIRC, just the PVR thing alone (glorified slideshow viewer) was using about 60% of the FPGA on MiSTer, IIRC.

#

Yes, the renders are very crusty atm, but keep in mind that the speed-up logic didn't fit the FPGA, and the "core" was only running at 15 MHz. lol

#

(because I haven't implemented SDRAM burst transfers yet, so had to divide the core clock by 8, so I could do random reads/writes.)

#

The real PVR2 chip apparently does the triangle visibility check on 32 pixels at once, so a whole tile row.

#

That's one of the main places they managed to get enough speed benefit to make it work at reasonable frame rates.

#

Yesterday, I used Claude AI to generate simplified logic for that.

#

When I tried compiling with my old logic for the 32-pixel thing, Quartus said it would have used 227% of the FPGA, so that clearly was never going to fit.

#

The "FPS" count in the sim, is only going by the frame time for rendering ONE frame.

#

And also assumes the (eventual) FPGA design could hit the full 100 MHz.

#

Without the speed-up logic (checking one tile pixel at a time), it was only getting around 3-4 FPS.

#

With the speed-up, 15-50 FPS, or more.

#

Future stuff, like worrying about the RAM bandwidth etc., is kinda secondary to me.

#

Because I would be fine with designing an FPGA board specifically to run Dreamcast / NAOMI.

#

Even if that means using 8MB or 16MB of SRAM as VRAM. lol

terse flare
hardy hedge
#

I was just about to type that. lol...

#

Yep, the Cyclone V is never likely to get anywhere close to the 200 MHz needed for the CPU.

#

And might not even fit the CPU, especially alongside the rest.

#

But maybe possibly Agilex could reach those faster speeds? I don't know. They won't even give prices on the lower-end Agilex chips yet.

#

Or, it would mean using a real SH4 CPU on a custom board.

#

Which again, I'd be fine with doing. It's just - how many people would pay the extra for an FPGA version, vs just using software emus or original hw.

#

The same board could likely run tons of other FPGA cores, so there is that.

#

Or, if some uber devs (like yourself 😉 ) teamed together, maybe the SH4 could be written so that it executes more instructions in parallel.

#

Targeting a larger FPGA, of course.

terse flare
hardy hedge
#

Then I'm even more stunned at your progress, as you got very far with it already. 😮

#

No, I'm basically self-taught in electronics, and a bit of coding.

#

I only got the 3DO and DC stuff this far, through sheer determination, and many months of wasting my life. lol

#

And quite a lot of help from fixel, skmp, and others.

#

I've never written a CPU core, put it that way.

#

Not anything that would be considered "complete".

#

I tried writing some SuperFX stuff years ago, but then Srg320 wrote his.

#

Same with the Saturn DSP.

terse flare
hardy hedge
#

Only thing I really did for CD-i, is designing the "Hat" board with the chip on.

#

It's fun sometimes. haha

hardy hedge
#

I spent SO many months, trying to wrap my brain around the maths for the edge equations and interp stuff for DC.

#

Finding photos of the hat thing...

#

It's possible I didn't get the board made. Can't remember. lol

#

I'm probably thinking of the TMS (NBA Jam, KI) or the Jag DSP one.

terse flare
#

What exactly is this? I'm confused, sorry.

hardy hedge
#

I don't think I finished the routing for the SCC hat.

#

SCC chip thing, on a board that plugs directly into the DE10.

terse flare
#

Why whould you do that?

hardy hedge
#

To do a kind of "black box" testing on it, to figure out the basic bus timings etc.

But also so you have a known-good chip to work with, that frees you to work on other parts of the core.

#

Then, when you have more of that chip done on the core, you could use the hat board to try to compare the signals / timings.

#

Kind of a divide-and-conquer approach.

terse flare
#

Ah, so you eventually wanted to do a CD-i core yourself?

#

I would understand the hat approach for chips that are badly documented. But the SCC68070 has a very detailed datasheet.

hardy hedge
#

Yeah, I read quite a lot of the PDFs etc. at the time, but as usual got distracted by other projects.

#

Mostly PCB stuff.

#

DIY AV receiver, etc.

#

And, as I say, I'm definitely no uber dev either, so that stuff takes me forever.

terse flare
#

I think you are a little bit crazy. 🫣 You seem to do lots of projects in parallel.

hardy hedge
#

Yes, it's one of my big downfalls. lol

#

Last month, I had a sudden burst of energy, and got about seven PCB projects sent off to JLC at once.

#

But the boards and parts have been sat on the bench for over six weeks, and I just can't face it. lol

#

Including a new GD Emu / HDMI board for Dreamcast.

terse flare
#

Please take care of yourself and don't burn yourself out.❤️

hardy hedge
#

DIY AVR boards, and the new Dreamcast Too mobo thing.

#

Which was by FAR the most complex thing I ever attempted.

#

But now I'm scared to actually build it. lol

#

If I get one thing wrong, like smudging the solder paste, and creating a short, I won't know if it's my design that's wrong.

wintry dust
#

always good to see a new dev around here realize the extent of Ash's 6,000 simultaneous projects, haha

hardy hedge
#

lol

#

Original "stock" DC motherboard proto, to test the base schematic.

#

Mini N64 thing.

wintry dust
#

it always starts so innocent too. 'oh you're working on a 3do core!?' and then oh no here it all comes. no hate, I think we all can relate to having too many interesting things going on

terse flare
#

I find the amount of your energy inspiring. Do you have a job next to your electronic ramblings? The day has only 24 hours after all 🙂. I usually try to reduce my private projects to only one at a time because my boss is crazy and I already have like 3 at wörk.

hardy hedge
#

During that recent burst of energy, I designed a new GD Emu... in about 8-9 hours. lol

#

(HDMI output will require a custom flex cable, which I haven't designed yet.)

#

The GD Emu was based mainly on the code by Marcus Comstedt (Zeldin).

#

But it had some limitations, mainly the SD access speed, lack of USB etc.

#

So I immediately started on a new version. It got a bit out-of-hand.

#

And that's the one I haven't built yet. lol

#

Using an STM32 in combination with the FPGA, so it can keep the SD slot, but add USB 2.0 High Speed as well.

#

And a "proper" HDMI chip.

terse flare
#

How many liters of coffee do you drink a day? You are scaryO_O

hardy hedge
#

Actually, not that much. lol

wintry dust
#

be sure to sell them on a website where you only announce orders 2 hours in advance

hardy hedge
#

It's just, the occasionally bursts of activity are often followed by a few weeks of burnout, so not great.

hardy hedge
#

Which is why I never did preorders on a rather large project I worked on a few years ago.

#

cough JAMMIX cough

#

^ One of the only times I got anything to market. lol

#

Also some of THE most stressful times of my life, but it was maybe worth it.

#

Anyway, #oversharing

stray plank
#

This sounds like ADHD, I can relate

hardy hedge
#

Yes.

#

Never officially diagnosed, only Aspie.

#

But I watched a couple of vids on ADHD recently, and it seemed far closer to what I have.

stray plank
#

Hyperfocus on a topic for weeks, which can suddenly disappear completely in an instance

hardy hedge
#

I used to find the Asperger's diagnosis very depressing, for a very long time.

And then I started talking on more retro groups, and realized 90% of us are on the spectrum. LOL

#

Yes, very much so.

#

I just wish I could maintain working on ONE main project for a bit longer.

terse flare
#

@hardy hedge A coworker of mine would call you a Hummingbird because you flap your wings very fast.

hardy hedge
#

I've had some successes, but the burnout is a real killer.

#

lol

stray plank
#

If I didn't have a touch of autism, I wouldn't be good at a lot of my skills

hardy hedge
#

I used to join some Hangouts sessions with retro peeps years ago.

It took them about six months, just to get me to start using my mic instead of typing.

#

And then they couldn't shut me up. lol

stray plank
#

LOL

hardy hedge
#

Well, I do agree it's nice to have skills etc., and I often enjoy designing stuff.

#

But mainly, it has massively held me back in life.

#

Like, barely leaving the house all year. Doing about 70 driving lessons since I was 17, but never once took the test.

#

So I don't drive.

#

Aside from maybe two festivals a year, I don't really go out.

stray plank
#

Yeah, getting over the hurdle to continue something, or getting your focus back can be killing, especially with work.

hardy hedge
#

I mean, just scrolling back at what I just posted, you can imagine how full my brain is with ideas and stress, most of the time. lol

#

It's exhausting, but I feel like if I don't try some of this stuff, my life is running out.

#

(others might consider working on this stuff is a waste of life, but oh well.)

#

Would be nice to actually make a living from PCB design. lol

stray plank
#

Yep. Creativity is like a powerful force that has to get out. I have a lot of unfinished projects as well and a number I would love to start on, but am often too tired from my job to work on them. It is a bit frustrating.

hardy hedge
#

I thought about contacting some local PCB places for a job, but then I realized it would probably be designing boards for John Deere tractors, or ice cream machines. 😦

stray plank
#

The boring work tasks are very hard to get a focus on. The interesting ones are very hard to stop focusing on 😅

terse flare
hardy hedge
#

First thing I need to do, is STOP slouching in bed, coding or watching YouTube all day.

#

It has seriously messed up my neck. Severe tinitus, leg weakness, etc. Not good.

#

Can't seem to get out of it.

stray plank
#

Oof, that does sound rough

hardy hedge
#

It might be half of the problems recently, which I thought were down to low folate / vit B12.

#

VERY similar symptoms to whiplash injury.

terse flare
hardy hedge
#

Unless I'm close to 90% health, I can't bring myself to work on placing components on boards.

stray plank
#

I have a local retro computer club and creative coding meetup that are fun to visit. And I'm part of a demoscene group, but that can get a bit similar to work.

hardy hedge
#

Yes, we (my brother, his wife, and I) joined the gym last year.

#

But we... only went SIX times in total. lol

#

I did start immediately feeling better, which is no surprise.

stray plank
#

Hahaha, I never liked any kind of sports, so that doesn't make it easy

hardy hedge
#

But I did a bit of treadmill on a brisk walk, and my heart rate was around 158 BPM all the way through.

terse flare
hardy hedge
#

Meanwhile, the woman next to me was doing a full jog, and hers was only around 80 BPM. lol

stray plank
#

Nice. Biking is a good option in the Netherlands, you can ride a bike across the whole country, which is pretty insane.

hardy hedge
#

We bought an exercise bike recently. I only used it twice so far. lol

#

Right, I'm gonna shove this monitor onto a wall bracket. This is silly.

stray plank
#

You could watch Youtube on the bike 😅

hardy hedge
#

Yes, the bike is in the Bar now. I’ve managed to drink almost nothing since a festival in August.

#

And not topped up the bar since about June, so it’s empty.

#

Not intending to get back into drinking on a regular basis. I wasn’t enjoying much anyway.

#

Far better to use the exercise bike, whilst watching a mountain trek on YT.

#

The horror…

#

One monitor already on the wall, but it's a crappy 1080p.

#

Will swap for the 4K one, which will force me to use the chair.

stray plank
#

Yep, enough hardware projects from the looks of it 😄

hardy hedge
#

Yeah, but I have three benches. lol

stray plank
#

Hahaha, nice

hardy hedge
#

Quite hard not to dox myself, but oh well.

stray plank
#

Wow, cool workspace

hardy hedge
#

It's all organized, into various grades of "filth".

#

Two rooms, basically.

stray plank
#

A lot of my retro stuff is more like organized chaos

hardy hedge
#

Gantry thing, helps me place chips onto boards, minimizing smudging of solder paste.

#

Never did hook up the motors, but having an actual Pick N Place turned out to be overkill.

stray plank
#

Yeah, cool, I figured that's what it is, initially it looked like a plotter

hardy hedge
#

Had intentions of trying to make it work as a 3D printer as well, but life is already too short.

#

3D printers always seemed like a HUGE time vampire to me. lol

#

Rather just pay a company to print stuff.

terse flare
hardy hedge
#

Plus, you have to know at least some 3D CAD stuff, and I forgot most of that, after messing with 3DS Max, Maya, and Lightwave in a previous life.

#

Nothing much like that near me, sadly.

#

They were holding an Amiga meet-up group about 8 years ago... only three people said they were interested, and I was one of them. lol

stray plank
#

3D printing does seem like a massive rabbit hole. I already do 3D modeling, but have been able to hold off getting a 3D printer

hardy hedge
#

Right, gonna move these monitors. Catch you later. 😉

#

Thanks for reading my ramblings.

stray plank
#

Nice talking to you again, have a great weekend!

gleaming echo
#

Are we getting a core update today Slamy? Happy CDi Friday

gray badge
#

It's been pretty remarkable how far the core has come in what seems like a short amount of time. Testing the early versions and now testing this (still early...but later early) version is almost night and day

gleaming echo
#

I know right 🙂

#

It has been a crazy ride testing the core

terse flare
# gleaming echo Are we getting a core update today Slamy? Happy CDi Friday

My work week was very busy. 😦 During the first half of the week I've prepared something but you all won't really notice the difference. It is only relevant for CD-i homebrew. The driver for the system console was unhappy whenever you were printing to that. But no commercial games actually used that feature. I've only noticed when I developed my own application for the machine.

#

Yesterday I was working on the audio issues of Zelda's Adventure because I thought It might be more important and relevant than implementing NvRAM saving. In the end it turned out that there is not a single emulator in the world, which does Zelda's Adventure correctly. cdiemu is not booting at all, mame has delay and the MiSTer core has hiccups.

#

Right now I'm working on the audio attenuation circuit. It's actually quite interesting that no one has noticed that yet. It seems most people here are not that audiophile 😄

gleaming echo
#

Hehehe 🙂

wintry dust
#

most people don't know what the hardware sounds like anyways!

hardy hedge
#

I think that's probably true.

#

the Venn Diagram of "People who would like a CD-i core" and "People who have actually played CD-i before", doesn't have much overlap. lol

terse flare
# hardy hedge the Venn Diagram of "People who would like a CD-i core" and "People who have act...

For me, this would be unexpected. This would mean, having nostalgia for something you have never experienced in the first place. What would their motivation be to play with something like a CD-i core? Hmmm... well ok. It is probably the same as my relation to the Neo Geo core. I always wanted a real one but it is really expensive so one of the intentions of getting a MiSTer was playing NeoGeo because I never had one.

terse flare
gray badge
hardy hedge
#

In other words, I think having a (good) core on FPGA brings interest from people who wouldn't necessarily play software emulators too often.

#

Some of the cores I'd like to see done, as they were for machines/boards that I never experienced in-person before.

#

(and maybe never bothered to try on software emu. lol)

#

I remember trying the Killer Instinct sw emu many years ago, but it was pretty rough back then, mainly due to my feeble PC.

#

For the most part, the best MiSTer cores "just work".

#

No underlying OS and API stuff to slow things down, unless the slowdown was part of the game / hardware in the first place, etc.

#

(yes, MiSTer has the ARM Linux running, but that's more for handling the higher-level stuff.)

#

I don't think I ever tried emulating CD-i much, if at all. But I'm definitely looking forward to trying your core very soon.

#

(a perfect example there, of why I personally dislike using the term "emulation" as a catch-all term for both software emulation and FPGA cores. lol)

vague imp
#

never played ps2? bruh

hardy hedge
#

I never really played any of the CPS games on MAME etc. either, until Jotego's core.

vague imp
#

some of my most fond memories are on PS2

hardy hedge
#

Then I played games like SF2 quite a lot.

vague imp
#

may I recommend God Hand? shadow of the colossus?

terse flare
hardy hedge
#

Nope, I just always tended to go for different consoles at the time.

N64, Dreamcast, Game Cube, Xbox, etc.

#

To be fair, even PS1 has aged quite well, because the high frame rates make up for a LOT of the wobbly-ness. lol

#

Don't think I ever picked up a controller to play PS2 nor PS3, and definitely not PS4/PS5.

#

I even designed a small PCB, to help people "flash" the PS4, but never tried it myself.

#

I had two Xbox 360s for a few years, but both had RROD.

#

Tried the usual reflow etc., and they would eventually fail again after a few weeks/months.

#

Eventually threw them both out.

#

Played a bit of Gears of War on 360, and was it Project Gotham Racing?

#

Bought a faulty PS3 mobo to mess with once, and Xbox Series S mobo. Didn't get either of them running.

#

Burnout 3 on OG Xbox is where it's at. 😛

#

Need For Speed: Underpants.

vague imp
vague imp
hardy hedge
#

Yes, the more esoteric systems always interest me.

#

And having an FPGA core makes me far more likely to try it.

#

It just... hits different(ly).

hardy hedge
#

Was a very bad situation for Microshaft and Sony, tbh.

#

Was supposed to be due more to the internal solder bumps than the solder balls.

#

Which was why even reballing the chips was often only a temporary fix.

#

Unless they heated and cooled the chips in such a way that it would "fix" the internal ballz.

errant island
terse flare
# errant island I define myself as quite a 'reasonable' audiophile and used to have CD-i systems...

Of course this wasn't meant to disrespect them. Without the accumulated efforts of all of them, we won't have this discussions here today. I sometimes just find the state a little bit sad. There aren't enough developers providing these projects with love. cdiemu is out of question as it is closed source. But at least with MAME I would have thought that it receives frequent love... It's developer has moved on to other projects so there will not be a change anytime soon.

hardy hedge
#

At this point, I don't know if MAME can even boot a Dreamcast game?

#

It didn't a few years ago.

#

I do find the MAME sources to be great for overall info, though.

#

And its debugger is one of the best out there, imo.

spring gate
#

Looks like another CDi title added to Redump list

terse flare
#

Sometimes the face palm really hits hard. I've tried to implement the audio attenuation today. It did work in simulation but did never work on the MiSTer. "Oh god, why", I thought. Why the discrepancy? Is it synthesis vs simulation? The slave controller just refused to implement the required protocol. After 3 hours of debugging I've noticed that I've swapped out the slave rom on my MiSTer for some experiments. It wasn't zx405042p__cdi_slave_2.0__b43t__zzmk9213.mc68hc705c8a_withtestrom.7206 but instead zc405352p__slave_cdi_4.1__0d67p__lltr9403.mc68hc705c8a.7206 which is the slave of the Mono II board. This was the first time this ever caused a problem.🤦‍♂️ Jeez

lunar nexus
#

Just to say lads, this is all a great read! @terse flare @hardy hedge

hardy hedge
#

I made ONE tiny change to the core the other day, which looked completely harmless.

#

17+ minutes to compile.

#

Not only did the core not come out of reset, but the whole ARM Linux locked up.

#

That signal was to prevent the core doing contant reads from the DDR3 controller.

#

Without it, it was preventing Linux from accessing RAM, so it crashed. sigh

#

One of the perils of having the ARM SoC on the same chip.

terse flare
#

Today I've learned something new. There was an actual arcade cabinet using CD-i hardware, called the Quizard.
https://www.theworldofcdi.com/quizard-on-cd-i-players/
https://www.theworldofcdi.com/tag/quizard/
It is not using the usual pointing device and instead uses some sort of custom board which is required to make these games function. The software is only available in German, so it might not be interesting for everyone. I wanted to post this here as I find this obscure and interesting.

spring gate
#

They have other articles on there about them

#

Could the core theoretically support these titles?

terse flare
# spring gate Could the core theoretically support these titles?

Reading about circuits that can transform a normal CD-i into a Quizard machine, it should be possible. The protection PCB is plugged into the serial port. With a SNAC adapter that should be possible. Without that, the µC on this controller board has to be put on the FPGA. It should be fun, but right now that is feature creep.

spring gate
#

Yeah definitely not something you want to get sidetracked with right now. Would be a neat extra at the end of the project if doable, for people who can read German and like quizzes. 🙂

terse flare
#

I have again learned something new. If you have the STOP button on the front of a CD-i pressed during power on, the tray can no longer be opened. This state is stored on the NvRAM and used in stores so no one can steal the discO_O

stiff flare
#

thats smart

deep roost
strange crater
#

I believe there is theoretically an English-language version of the game out there, but the protection ROMs for it haven’t been dumped

deep roost
#

Now that I think about it, is Quizard even supported on MAME?

spring gate
#

Team Europe are big into Quizard so would be surprised if their dumps weren't supported

sterile glade
sterile glade
spring gate
#

Hopefully it finds it way to Team Europe at some point, although those chaps are in Germany

#

On the plus side, the hardware should be well documented by them, and they can be contacted for info if Slamy decides to look at adding support when the core is done

terse flare
# deep roost Now that I think about it, is Quizard even supported on MAME?

That was quite wild yesterday. The maintainer requested from me to test my pull request against the Quizard machines. I did and thus I found out about them. It seemed to be important to him... but they weren't affected by the change... It is written, only Hotel Mario was affected by it.... and probably other games I don't know.

spring gate
#

Was that one of the Team Europe guys?

terse flare
#

It was TheMogMiner. His avatar is a moogle from Final Fantasy in a handsome suit.

#

I don't know about Team Europe, because I live under a stone.

modern mirage
spring gate
#

Hah, you should check out their blog, it is really interesting. They are also fellow Germans.

modern mirage
#

He is one of the senior Mame Devs

spring gate
#

Although my one interaction with them, buying some carts, the guy was... A bit grouchy shall we say

terse flare
spring gate
#

Is there a pack somewhere of these Quizard games or are they bundled in with a load of other stuff?

#

What format are they? Disc images?

terse flare
spring gate
#

You should have tried German!

terse flare
spring gate
#

Cool, up on archive?

terse flare
terse flare
spring gate
#

Ah, maybe he isn't one of the Team Europe guys then

#

They are all German

terse flare
#

As there was no update of the core this week I still want to provide you with insight on the current progress. As mentioned a few days ago, during the early days of the week I've managed to repair the UART IRQ. I haven't uploaded this core as no commercial game actually prints text to the system console. But if - for some reason - you want to start developing software for the CD-i, you can now just call printf in your application and receive that text by opening the UART on the Linux on the MiSTer. This is good for debugging software. Before that change, the application just hang.

The next thing I've done was investigation concerning Zelda's Adventure and the weird sound hiccups. It was then that I've noticed that the volumes of the games are never correct as the CD-i has a mixing circuit. With 4 parameters it can mix certain amounts of left and right audio into left and right output.
This circuit is missing in MAME and is implemented using HLE in cdiemu. All current implementations are wrong. This is a result from my own measurements and a discussion I had yesterday with the developers. Right now this is something untouched and therefore rather difficult as no one knows how it really works. The logic is part of the slave controller but there has to be more to it.
Right now I have a semi-working state which has these mixers implemented. However, for yet unknown reasons the audio can unmute itself on a real CD-i using a mechanism yet unknown. No emulator out there replicates this behavior but the games need it. Otherwise they are just silent. The MiSTer core is a little bit alone in that regard as I intended to use the real slave controller and not something that replicates its behavior.
There is a theory I want to check. The CD servo controller actually talks to the slave and I assume that this is where the unmuting comes from.

valid onyx
#

great work again mr. Slamy!

gray badge
#

Killing it, my friend

spring gate
#

Brilliant work Slamy, the fact you are now at the stage you are finding issues in emulators nobody has noticed, and actually fixing things there as well, is incredible. You are literally breaking new ground in CDi emulation.

gleaming echo
#

That was an interesting read, good luck Slamy

whole thicket
#

Im almost ashamed to say this, but Hotel Mario is kind of fun, lol

#

Never thought Id be able to say I enjoy the CDi, lol

sterile glade
strange crater
#

I know that’s also a CD-i based arcade title, but I haven’t heard that it uses the same system technology as the Quizard boards.

spring gate
#

Interesting, are these CDi arcades supported by Mame or any other emulator? Any tech specs for them?

strange crater
#

Not sure - Quizard should be, from what other sources here have mentioned, but I’m sure from that video that Yakyuuken Super would require the DVC.

spring gate
#

That's a good point about DVC. I assume Quizzard doesn't need it?

errant island
#

There was at least that title on a CD-i drive, serving the rest of the arcade system PCB.
The drive was only used for the sound/video FMVs, in streaming mode.

deep roost
#

TIL that the Philips CDi even reached Japan.

errant island
#

Majorly for some obscure karaoke systems.

strange crater
#

Not completely, though. I’d really like to see a copy of Cyber Soldier Sharaku get found someday - it’s a cyberpunk adventure game set in anthro wolf Japan, made by the creator of Putlestory.

strange crater
#

Interesting that it would address it as an MPEG1 player and not use the CD-i functionality for the game code - reminds me a lot of how Laserdisc players are addressed, actually.

spring gate
terse flare
# spring gate Just wondering Slamy, what is the solution to this circuit not existing in an em...

The only entity in control of the mixer circuit is the slave controller. The ROM of that thing is luckily known and I've disassembled it frequently for all the progress I had so far. The best case would be to "see" in the software which other possibilities there are to unmute the mixer. Because this is the problem right now: Games like Wand of Gamelon are muting the audio mixer without unmuting it. However, this is only happening when the Audiomap is not used. This means that there are yet unknown mechanisms which are raising the volume again when music is played. Most games are playing music without CPU interference. My first bet was the communication between SERVO and SLAVE. But I don't yet "see" it. A less involved solution would be a manual override of memory addresses to force the slave into thinking that an unmute is performed. This would be a hacky solution. Another solution would be analysis of the bus protocol on a real Mono I board... which I don't have right now.

#

If I'm not making progress on this for a certain duration, I will go for the hacky solution. I've already cartographed some of the functions and variables. The ROM is rather small with 8k.... Nevertheless if I can do it right, I will do it like this. My way how thinking might be weird. Sometimes I believe it would be better for the project if multiple persons are looking at the problem

modern mirage
spring gate
#

Yeah, absolutely. Also, don't worry if you need to leave something working "well enough" but not perfect. Sometimes it is good to park something and do something else, and come back at a later date with a fresh perspective.

quartz crest
modern mirage
valid onyx
copper ridge
terse flare
dawn iris
#

The 200/17 (US) is also Mono I.

#

I link a cool side (no German) with much CDi infos...

glacial sonnet
#

Sorry, I'm probably the 1000th person to ask but search isn't pulling up anything. Are Faces of Evil and Wands of Gamalon playable from start to finish? Or is the core still in early development?

gray badge
#

I'm not sure anyone has had the.....constitution.....to play either to completion

glacial sonnet
#

Eh, I'll give Faces a go. Worst thing that can happen is bugs I can report!

spring gate
#

Are all the video modes in now for those ones?

glacial sonnet
#

So I downloaded the MiSTer file, renamed it as instructed, placed it in the root
Added the line to my mister.ini
Added the renamed bios

At boot my TV just says it can't find the source anymore, can't tell if it crashed or it's outputting a weird res my TV doesn't like. My MiSTer is currently outputting 1080p

Possible issue with the BIOS, or does this core need Dual RAM? Mine's only single right now.

sinful hornet
#

Single ram is fine

#

Did you use Filezilla to transfer it?

glacial sonnet
#

Yep.

sinful hornet
#

Is your transfer setting set to Binary and not auto?

glacial sonnet
#

I'll check in a minute, but I removed the Mister.ini line telling it to use MiSTer_CDi and it's booting now. BIOS is working, it's just seemingly not reading games. If I select 'play CDi' it just boots back to the BIOS. Using Redump

odd trout
#

the mister main replacement that you removed is required to read CD-i discs, your issue is normal if you're using the wrong version. filezilla is most likely the culprit here, not transferring files in binary mode.

wintry dust
#

Filezilla claims another victim

sinful hornet
#

Nooo I was hoping it would sneak by zakk marioohno

glacial sonnet
#

I've switched it over to Binary, do I need to re-transfer everything or just the Mister_CDi and my ini file?

sinful hornet
#

Just the mister_cdi

odd trout
#

Most likely just the mister_cdi and your modified ini file

glacial sonnet
#

Working now, thank you all very much!

glacial sonnet
#

Working great for the most part, only issues I've encountered is that cutscene audio on certain cutscenes will mute the audio entirely until you reset.

This happens notably on the 'Help' cutscene just after Link demonstrates the Power Sword as well as Gwonam's cutscene in Goronu

#

Ah, and saving doesn't work-
No option to save manually or Autosave in the MiSTer menu that I can see, but saves persist between resetting the core.

modern mirage
spring gate
#

Saving not implemented either, but those two issues you mentioned are known to Taki and he is looking into them.

lunar nexus
spring gate
#

Why doesn't it default to binary? Seems bizarre

modern mirage
#

just use winscp on windows problem solved

spring gate
#

Alas, some of us have Macs

modern mirage
#

enjoy the read on the messageboards where macs are adding hidden file to the wallpaper directory

gray badge
#

transmit

lunar nexus
#

It's no wonder I've bricked that many sd cards, really p1ssed me off, should be pinned somewhere on the forums. Unless it is and I've missed it! 🙂

lunar nexus
#

I'm going through stuff we tested ages ago, and updating the spreadsheet in the appropriate places. Now, play Golden Oldies 2, the Blockbuster game. And tell me how they didn't get sued from Taito for not only it being the same as Arkanoid Revenge of Doh, and having the same music! 🙂

stiff flare
lunar nexus
#

It's interesting, those that updated the spreadsheet a lot back in September, try the same titles again. Much much better. A lot of stuff that had garbled gfx now hasn't, we have sound, and some games I would think would be completable.

#

@spring gate @gray badge You 2 guys tried a lot, try them again if you've any spare time. Thanks.

spring gate
#

Will be able to dig in again later this week, really keen to see what is all working now.

#

Are all the video modes supported now or are there still graphics garbled and missing on some things?

sinful hornet
#

Finally have a bit of time to test again so I'll do some now

terse flare
spring gate
#

What are regions in this context?

gray badge
lunar nexus
#

THe ones I've tried have perfect graphics, only tried half a dozen or so. But it's wierd isn't it? @spring gate I think it was you that said of the pinball one, that you couldn't play it as you couldn't use the flippers? Well now you can, and it's fine. Just the little things like that, and having perfect non garbled graphics, so far, is great.

spring gate
#

Interlaced is still missing isn't it? Phot CDs are still garbled?

lunar nexus
#

Not tried any photo ones yet mate.

terse flare
# spring gate What are regions in this context?

On the SNES it is called "Windows". It allows to change some display settings during a horizontal line. Some games do some fancy visual effects with that.
And yes, Interlaced is also still missing which is most relevant for Photo CDs. For games, I don't know if there are any.

lunar nexus
spring gate
#

I don't think anyone has looked at the demos and betas tab if anyone runs out of things to test or is feeling adventurous

gray badge
#

the latest core is in markedly better shape than any of the other cores I have tested

sinful hornet
#

Zombie dinos actually working fine now

#

Yeah I bet tons of stuff will look great now

spring gate
#

"One Photo CD playable by Christmas" 🙂

#

Brilliant work Slamy, you are repeatedly knocking this out the park

lunar nexus
#

Just tried The Whos - Tommy, I don't know if this is like an enhanced audio cd, or video footage? Either way, it boots, but gives the "disc may be dirty" screen.

terse flare
sinful hornet
#

The wonders of the cdi core elmorise

terse flare
spring gate
#

Oh, so do not all photo CDs need interlaced?

terse flare
terse flare
#

... hmmmm... probably.... Hmmm.....ok. There is the possibility that the other image can have a totally different ICA/DCA list of commands. And these are not executed at all in our current case.

sinful hornet
terse flare
sinful hornet
#

I have no idea why they made all these animals anthropomorphic and wearing suits

terse flare
sinful hornet
#

I like the one with the acoustic guitar, he's funny looking

#

Striker Pro does have some graphical issues during a match but more interestingly it seems to run really fast

lunar nexus
#

Should just stress, I'm only trying the porn titles and adult games, purely for research........... 🙂

stiff flare
merry oyster
dawn iris
grim moat
sinful hornet
#

I was introduced to Blacksad by the recent point and click game and it was pretty cool

terse flare
#

It saddens me to admit it but I have to take a short break of 1-3 weeks from core development. It was a little bit too much lately and I'm noticing I'm a little bit exhausted. I just wanted to tell you that, because communication is key.
My hobby projects seem to have a bad timing. When I started this core, a person on Forum64 (probably the biggest German Commodore 64 community) decided to mass produce my last open source project (Yaumataca) out of the blue because they liked it on the last retro convention. Now, there are ~100 users having some problems of sort and issues are rising. I've told them I'm unable to do multiple projects in private time but the project is still my "child". After some months I think I should fix some problems as it is still my project.

gray badge
#

take as much time as you need, Slamy. Thanks for everything you have done so far 🙂

dawn iris
#

Take your time, but feel no pressure to support them. It was there decision to mass produce your project. Normally it’s normal that there’s no support…

strange zephyr
#

Massproducing sounds like someone is earning some money...

lunar nexus
#

Take it easy mate. There's no rush for any of this. It's stunning how far you've got!!

spring gate
#

Don't feel bad Slamy, as everyone has said, just do this at your own pace and don't burn yourself out. This is a hobby after all. This gives us a bit of time to get the library retested on the current core as well and see where we are all at. 🙂

sinful hornet
#

No worries Slamy, I could imagine how tiring it would be to have all those issues popping up in the background

earnest kraken
#

Good luck and get that bag 👍

pale ivy
#

You must love yourself first! Take care and we appreciate all you do

terse flare
# strange zephyr Massproducing sounds like someone is earning some money...

In his defense, he doesn't. It is a person which seems to have an affinity for providing hardware to other users of this forum. He is selling it for about 4€. This is the price for just the parts to buy and he does that because not all C64 users are equally able to craft and solder. (The C64 scene is a little bit more ... communal than the Amiga scene in Germany which usually has large Euro signs in their eyes when it comes to hardware) Some just want to use it. And this is also where some problems start when just talking about a "project". Some expect a finished and polished "product". This is of course nothing I can deliver and no one is allowed to pressure me into delivering their vision of how this project should be. Everyone can fork it but sadly not many are able to develop software.

#

Also, I don't know about other countries but in Germany you can't just sell something. elmorise The tax office will track you down.richer

spring gate
#

That's a neat projector

strange zephyr
#

Oh yeah, no fun allowed plus liability

#

Always sounds so nice somewhere else where small hobby projects can earn money (with profit even)

lunar nexus
#

I must have missed something, what's this got to do with the great work Slamy is doing here?

modern mirage
terse flare
lunar nexus
#

THe YM2149? How dare you!!! 🙂 I had a spectrum 128 with the 8910, but liked the ST for it's AY harness. Of course, best sound chip of all time, 6581. 🙂

glad cedar
wintry dust
#

I know this sounds wild, but some people actually prefer graphical file managers

gray badge
#

God gave us ambition so we didn't have to have to use SCP

lunar nexus
spring gate
#

FileZilla works fine, you just need to change the setting to binary once and then you are good to go

sinful hornet
#

Is Filezilla open source? Somebody just make a pull request to default it to binary smugnep

spring gate
#

That is a good point, someone could probably just raise a ticket or contact them if it isn't open source, if doesn't seem there is a reason to not default to binary

sinful hornet
gray badge
#

#wnf

wintry dust
#

autodetect uses file extension to determine mode, and for some reason no extension -> default to ascii. everything I can find in their bug tracker indicates to me that have no intention of changing

copper ridge
gray badge
#

Dear dev

hardy hedge
#

I'm currently in the burnout stages as well, for at least the past six weeks.

#

I've not been able to face building any PCBs, and I've had several projects (plus parts) sat here for two months.

#

I've been slowly working on some DC PVR stuff, but that's about it. Sometimes just have to force yourself to chill for a while. 😉

stiff flare
#

Is the latest build pinned?

spring gate
#

I had a quick check yesterday before I went out to see what was going on with Photo CDs and the one Japanese Karaoke disc I have on my card. No change on the Karaoke disc graphics since I last tested, still garbled graphics. On Photo CDs I looked at (namely the Ghost In the Shell) stock menu look good now, but the images don't load, just black screens.

spring gate
#

Looks like Redump are back uploading fresh dumps to their packs on IA. I have added 9 fresh dumps to Photo CD tab. We will have to keep an eye on what fresh CDi titles get added, last I looked it was a handful of non games that had been dumped.

river sphinx
#

Wonder if those missing CD-i games will ever get dumped.

spring gate
#

Are they all Japanese ones?

river sphinx
#

Not sure how updated the lists are though.

spring gate
#

I imagine more will turn up and get dumped, and definitely more corporate and non game ones will be out there nobody even knows about some of which will no doubt turn up, but everything on that list seems to be non game stuff. I am sure there are obscure Japanese games out there though that are known but not dumped, has been mentioned before

#

Same issue we come up against elsewhere, where Japanese collectors don't dump, or don't share their dumps, for various cultural and legal reasons

river sphinx
#

Seems like the Japanese stuff is obscure even in Japan.

Like just typing the Japanese names in search engines is wielding no results.

#

You know it's a bad sign when it's pulling up results from English sites instead.

lunar nexus
#

Redump is a big bugger, best known set is 223TB when I asked a mate the other day.

spring gate
#

Oh yeah, the whole thing for every different type of disc would be insane.

#

You would have to be a lunatic to try get every single file they have done and keep it updated

lunar nexus
#

I know hundreds that do!

spring gate
#

How do they even have storage for that much? Are they running massive server racks?

errant island
#

Multiple RAID servers on an optical fiber Mesh topology.

spring gate
#

Well good people are backing it all up, the recent IA issues highlight how important it is that people are doing that

errant island
#

Redump is just a part on my personal archives.

spring gate
#

Do you have it set up to automatically grab new files when they are added?

errant island
#

Semi-auto.

#

I need to check once a week.

#

And note what is MIA and what is Non-dumped, if I could find them by myself.

errant island
#

If IA should go down.

#

Another one could step up.

spring gate
#

Do you know if there is much of a drive within the Redump community to track down and dump the missing CDi and Photo CD discs?

errant island
#

Not at the moment, otherwise I should contact you privately.

spring gate
#

Tracking down undumped CDi would be hard at this stage, but there are tonnes of Photo CDs out there

spring gate
#

I find Photo CDs bizarrely fascinating, it is such a funny time capsule from the early 90s, and interested to see how people tried to push the really basic and restrictive format, especially trying to make games run on them

cloud crater
#

On CRT with component out im getting a rolling picture on the core.

Tried the most recent version of the core on my mister, edited the .ini file to use the experimental main with the specific name, added the bios correctly, not sure what went wrong. Is the core compatible with CRT through the analogue IO board?

cloud crater
#

current regular main ver is v240912

modern mirage
#

did you download the special mister version, name it correctly and upload it to the Mister

#

just changing the ini is not enough

#

the file is needed

glacial herald
#

Might be in pal mode. Switch to ntsc in the core's video settings

cloud crater
#

Yes, the special version of mister was named correctly and loaded into the root of the card

cloud crater
glacial herald
#

Open the OSD. Scroll down to Video and Audio and it should be in there.

#

It defaults to PAL

cloud crater
#

Gotcha. Ill try plugging in to an HDMI source, swapping to NTSC and then saving the core setting

modern mirage
#

how did you transfer to the Mister. Did you use filezilla, if you did, did you switch it to binary mode transfer ?

spring gate
#

Does NTSC definitely work properly on the core? I thought it was still missing some functionality

glacial herald
#

it works for me

spring gate
#

On a CRT?

glacial herald
#

yeah

spring gate
#

Cool, good to know

glacial herald
spring gate
#

Strong. Quite a disparity in the colours between those two screens

sinful hornet
#

Look at that pixel art. Definitely the best looking console of that generation

glacial herald
glacial sonnet
#

Hey guys I've been inactive for like 2 weeks, what's the latest update by @terse flare ?

gray badge
#

There's a "unfortunately, it's still a CD-i core" joke to be made here.

glacial sonnet
#

I mean the core release itself

#

Like the changelog

gray badge
#

thats the latest core

glacial sonnet
#

Ah sorry, okay

#

Thanks

gray badge
#

no worries 🙂

glacial sonnet
#

I don't remember so I'm sorry for asking but are Hotel Mario and the 3 Zeldas fully playable now? I remember there were some issues

#

Zelda's Adventure still has issues I think

#

I'm mainly interested in Hotel Mario

terse flare
# glacial sonnet I don't remember so I'm sorry for asking but are Hotel Mario and the 3 Zeldas fu...

Zelda's Adventure has multiple audio issues. The 2D Zelda Games and Hotel Mario share a common issue: The lack of NvRAM storage and also the lack of sound mixing. These games are unplayable with headphones. Hotel Mario has also one specific issue. There are flickering graphics at the bottom quarter of the screen. I don't know the cause yet. But since the the 17.11. release, Hotel Mario should no longer hang up on the score screen. This was an issue before in the core and also MAME.

cloud crater
terse flare
#

I've just won an auction of a Mono I machine on eBay. With taxes and tariffs (y u no in EU brits?) it sadly was quite an expense. 230€.... Let's just hope that the machine is working after shipment from the british islands. I also hope that it was worth it to spend that money. I hope to gather more info about the audio mixing and servo controler behaviour... I also think that I will use the Patreon money for this spending. @valid onyx and I were searching for multiple days on ebay and kleinanzeigen. They also looked on the dutch marketplaces. Mono I machines seem to be rare compared to the others.

lunar nexus
#

So, about 190 quid, sounds a bargain. Well if you've a spare 190 quid that is! 🙂

terse flare
young grotto
#

hadn't noticed you were on patreon, subbed

#

you should mention it more often 🙂

terse flare
terse flare
young grotto
#

thats fair, you shouldn't let your patreon rule you either, do whatevers most comfortable

lunar nexus
#

I was just going to sign up, then noticed I'm already a paid member! Doh! 🙂

terse flare
#

I also think, I need inspiring input from you all concerning NvRAM saving which I will probably do next as the audio mixing stuff has to be paused until the machine arrives. If I'm not wrong, machines like PSX and Saturn are rebooting the whole thing when switching memory cards / NvRAM. For the PSX I can understand this approach, as the memory cards are small and the save games were huge. Concerning the Saturn I don't know how many games can be stored on a single system.
For the CD-i I don't know if it is really necessary to have multiple save files for each game. If this is desired, the machine would need a reset too on inserting a CD. If it is a single file I can just leave it as it is. The source code of MiSTer Main is also a small disaster as it lacks documentation everywhere I look.
For the Saturn srg320 himself seems to have implemented everything. For the N64, it seems that the Main was not really touched by Robert. I'm not yet sure whether to implement the save file on the Linux side by myself or not...
These are just my ramblings for thursday. ^^

nocturne vortex
#

Nice good luck, hope your seller packs things really well

gleaming echo
#

I am happy with single file for saving Slamy

nocturne vortex
#

I’ve started a new hobby where I try to buy a laserdisc player and destroy it in shipping. I’m 2/2, 3rd one is en route

#

Uh but I’m sure your CD-i will be fine, damn now I sound like I’m jinxing it

spring gate
#

What model LD player are you getting? I have three I have picked up over the years

gray badge
#

I also am good with a single save per game

spring gate
#

Great news you were able to get the player you were after Slammy, even if it was a bit pricey

#

Something I was wondering, do you think you may need to do more changes to MiSTer Main for the core down the line, or does it look like the changes you did awhile back will be all that is needed?

terse flare
terse flare
young grotto
#

i'd recommend doing independent memory per-game since there's always more games in the library than can fit on one , and also just because its what every other core does

gray badge
wintry dust
#

does cd-i have any multi disc games?

#

anyways, doing save file per disc come with some advantages like users being able to just delete problematic saves, or being able to send you a single save file when debugging game specific issues

#

you also don't necessarily need to reset the system for this, I think it just does that for a lot of the disc based systems because that's what made sense for that system

terse flare
# wintry dust you also don't necessarily need to reset the system for this, I think it just do...

That cannot be answered so easily yet. The CD-i has an actual operating system which right now scans the NvRAM on every boot and initializes it as it is all zeros after the core has loaded. This means that some entitity is working with this memory even so no application was yet loaded.
If it can be ensured that this driver is reloaded on application start, we would be fine. However, if this is not the case, we maybe would get into trouble as the driver is unable to anticipate such a rug pull.

#

In the end this is maybe what we even want. Most other disc based cores perform a direct start into the game after the disc is inserted. We have generated evidence that the Mono I is also capable of this when the Play button is pressed on the front panel. So maybe the behaviour of the playstation shall be replicated. Booting into the system menu, when the core is loaded for nostalgic reasons and reset directly into the game when a selection is made.

gray badge
dawn iris
dawn iris
whole thicket
terse flare
spring gate
#

Slamy, what is the "table of contents" that you mentioned? Not heard of that before, no idea what it is, sounds interesting

modern mirage
#

its the table of content on a cd

#

he mentioned it weeks ago as being used by the CDI

spring gate
#

How is the core reading discs if this isn't supported? Or is this just for audio CDs?

modern mirage
#

You will need Slamy for that

#

#1103404843512631357 message

nocturne vortex
#

Slamy you stink at taking a break. What happened to holiday time off?

modern mirage
#

time to release his C64 dual joystick to the masses and give him time off to answer a billion queries

terse flare
# nocturne vortex Slamy you stink at taking a break. What happened to holiday time off?

You should have send an emoji together with your message. Something like 😅 or 🤨 or 😬. Because now I don't know if this was a concern for my health or development addiction or something else. Communication only via text is really not that expressive. as the non verbal component is missing. I really should take a break. I also haven't touched the code yet again. It was mostly thinking about stuff and planning.

nocturne vortex
#

Not everyone may have seen that and keep pinging you and I was worried you’re too nice to tell them you’re taking a break 😅

terse flare
modern mirage
#

and yes thats a joke !!

gray badge
#

core runs zelda and hotel mario

#

core is done

nocturne vortex
#

I wonder if there’s a recipe for bowsers sourpuss bread

sinful hornet
nocturne vortex
#

I overuse winking emoji usually and I didn’t on my slamy take a break message and look what happened

wintry dust
#

wait until you find out about the 'millennial pause'

strange crater
#

That is quite the rusty butt

spring gate
#

Vinegar should get that off, but what is left will not be pretty

sly sedge
gray badge
#

Messy party bottom

whole thicket
# nocturne vortex

You can tell that guy picked it up out of the woods. Cheers to Phillips for manufacturing a tank

#

The rusty part was probably covered in dirt and leaves, lol

sinful hornet
#

Who here hasn't found a dirty cdi player stashed in the woods

gray badge
#

let he who is without sin cast the first stone

nocturne vortex
strange crater
#

It’s under a coated paint layer, so there’s only so much you can do without sanding off the original finish.

But yeah, it’s pretty far beyond the point when that should have been done lol. My guess would be that this unit sat in water for quite a long time.

nocturne vortex
#

I bet if you sanded it down and treated it it would look okayish. At any rate it’s just the arse so as long as they do something to stop the spread

strange crater
#

Given I’m assuming this sat in a puddle for years, I think you’re overestimating this person’s level of presevation acumen

nocturne vortex
#

Yeah fair probably experiences a different level of urgency about things

whole thicket
whole thicket
#

Is the Limited Run Games CDi Controller worth it??? I have no experience with CDi, but sorta looks like a TV remote to me

#

Was considering getting one to use on the MiSTer CDi core

gray badge
#

is it available anywhere?

whole thicket
#

Ebay has a few listed as low as $59

gray badge
#

oiooooooo

strange crater
#

If you’re looking to recreate the feel of playing CD-i, I’d save your money and go for something like an 8BitDo M30 or a RetroBit Big 6. Most of the CDis I’ve seen out in the wild have the 3-button 22ER9021 controller, which is closest to a Genesis layout.

whole thicket
#

Silly question…but how do you hold it? Is it intended to be one handed like the Wii nunchuck?

noble talon
#

I would imagine so

river sphinx
#

You're supposed to hold it like a remote.

whole thicket
#

That sounds awful…I feel like I need it for that full authentic CD-i experience 😆

stiff flare
#

Yeah, at first I was annoyed it was kind of shit but then I realized that’s the whole point and I was enlightened.

whole thicket
#

Not gonna lie…I sort of enjoy Hotel Mario

chilly flax
#

The controller is more suited to adventures which you can play with one hand. and of course for titles like "Girls"

river sphinx
#

I prefer the hit sequel Girl 2.

lunar nexus
#

Copyright Juice! 🙂

gray badge
#

Copy Right

stiff flare
whole thicket
#

Well I’ll be coping along side you soon enough, lol. 😂

strange crater
strange crater
#

There’s really two ways you can hold it - the remote method and the two-handed method.

#

With the remote method, you hold it in one hand (either hand) and hit the buttons & D-pad with your thumb. This works fine for the traditional cursor-based games (comprising most of the library), but having to take your fingers off the buttons for the D-pad feels really awful for games with significant action sequences.

#

That’s where the two-handed method comes in - you sort of loop your back fingers behind the controller and use one thumb for the D-pad and another for the buttons. This is bizarre to control for so many reasons, not least of which is that the buttons are on opposing sides - meaning to comfortably hit them, you still need to take your fingers off the D-pad to use the non-dominant button.

strange crater
#

Actually, playing with it a bit more, I think the best two-handed method to control it is to hold the controller in your dominant hand, then wrap your hand around the top like so, crossing it over top of the D-pad with the hand controlling the buttons:

#

You then sort of hook your thumb over the one controlling the D-pad to hit the reverse button:

#

If you’re looking to mimic the layout of the original controller on this one, X is button I and A is Button II. (The Y button doesn’t exist on the original controller.)

sinful hornet
#

But how did he take the pictures while both hands are in frame? eyes_squint

strange crater
#

I put my phone on a shelf, and then cropped out said shelf

#

Kind of awkward-looking uncropped, but it works:

river sphinx
#

That poor controller is getting manhandled! 😭

gray badge
#

Someone’s ready to play Girls

terse flare
gray badge
#

My poor babygirl dog is a bulldog so I wouldn’t know what normal dog nipples look like. Thanks breeders!

stiff flare
#

@strange crater now do the N64 controller!

strange crater
#

Here's an updated version of my organized set snapshot for Philips CD-i:

#

Notably, this version adds CD-BGM discs. If you know of disc images for any that exist which aren't included on this list, let me know so I can add them.

#

Next version will also add Photo CD, which also includes some Japanese-only adventure games in it.

(If anyone knows how to make discs in the Portfolio CD subformat of Photo CD, I'd be interested in helping translate some of these - let me know.)

terse flare
#
HPS: Backup and Restore of NvRAM
     One save file per game. Loading a CD is causing a system restart
     as OS9 is writing to NvRAM every restart.
     Save format is compatible with MAME. (Also just a 8kB dump with no header)
     Backup is performed when OSD is opened and NvRAM has changed since then.
     User LED on I/O Board indicates that a write is pending.
SCC68070: Fixed UART IRQ (only relevant for Homebrew)
MCD212: Added debug option to forcefully view a video plane (Only for curious people)
#

Happy CD-Friday everyone!🎉 I know, I shouldn't have, but I'm getting rusty and thought that would be a cool addition

stiff flare
#

Updated pins to point to your post. Also just pinned your post for ease of access.

gray badge
#

CDIDAY?!

terse flare
gray badge
past crag
#

what are we supposed to do with cd-i?

#

is there mario

terse flare
past crag
#

ok well... i can't stay here. it's making kitrinx very depressed. bye now.

median finch
#

CDI!!

#

Nice work, can’t wait to test

terse flare
# past crag is there mario

There is a mario. It's Hotel Mario and with this release of the core, you can pause the game and continue the next day.

stiff flare
#

Sorry Slamy, I posted your latest update to a couple of channels for more visibility.

terse flare
stiff flare
past crag
#

hotel mario with pause functions? i'll take it

terse flare
stiff flare
hot wave
#

wait

#

REALLY?

#

for how long have we been able to use a per-core MiSTer binary?

stiff flare
hot wave
#

I honestly had no idea that's awesome. That would've been so handy in the earlier N64/Saturn days

gray badge
#

I realize I don't have this on my main mister. Does it support DV?

ionic island
#

that has to go

#

way too tempting for some egotistical dev to start requiring a hacked up custom binary for their jank core

terse flare
ionic island
#

sure it can

#

and yes, it's not the code i've have written, but having a million binaries with their own takes on the framework would be nightmare for UX and project coherence

quartz shadow
ionic island
#

im going to discuss it with alexey becase that's really not good

#

fwiw im not talking about you Slamy

terse flare
ionic island
#

yes

#

I'm extremely insistent that there only be one single mister binary and that it can't be easily swapped around

#

I always have been on that point

#

because people will abuse that, eventually

stiff flare
#

got it, i'll remove that from the pins

#

done

past crag
#

too late, i've already pushed a per-core-unstable-nightly for my new ps2 core

gray badge
#

I feel like we were playing in our room, maybe getting into a little trouble, and robby was too loud so mom came and knocked on the door

#

thanks robby

#

now i'm grounded

terse flare
# ionic island because people will abuse that, eventually

Right now it offers the people around here a possibility to to test the core without me intervening with the Main line in case I'm not sure about my changes. What alternative would we have except manually replacing it without the ini file?
I mean, I'm always replacing the real one 😄
But of course this gets overwritten by scripts.

stiff flare
#

Maybe we can get those custom MiSTer changes pushed to mainline

terse flare
#

If it is more akin to the project I can create a Pull Request right now.

ionic island
#

manually replacing it for testing is what we've done in this situation, but I encourage you to simply submit your core's supporting code to main

#

if there's some kind of significant change to the framework you should discuss it with alexey

#

eg saturn

#

it also has supporting code as do all cd systems

terse flare
gray badge
#

If it goes into main....then it's real and there is pressure with that. If you would prefer to keep the pressure low, Slamy, I'm happy to swap mains around to test

ionic island
#

if there's reasons to expand upon it, then that's fine, but it should not be a fork from main

#

having multiple forked frameworks is not acceptable

terse flare
ionic island
#

yes, and I appreciate that

stiff flare
#

@terse flare I think this is an awesome opportunity to get Main updated to do what you need for the CDi core or alternative solutions can be evaluated. But either way they definitely want you contributing and submitting a PR.

#

Plus this means testing will be easier for everyone and being officially incorporated into Main will make getting support if you need it, that much easier. 🥳

terse flare
stiff flare
terse flare
stiff flare
#

LOL sorry

gray badge
#

You have to meet him in a dark alley

#

by appointment only

stiff flare
#

Yeah I have to use Facebook messenger to harass him

terse flare
stiff flare
#

@terse flare but the dude is awesome about chatting on GitHub

terse flare
stiff flare
terse flare
stiff flare
#

I can’t really offer much but I’m here for you, amigo! 🍻

ionic island
#

he will talk on github or the mister forums as well

median finch
#

...................

#

wow wish I knew about this before

#

that is so cool

stiff flare
#

👀

gray badge
#

damnit robby

median finch
#

Oh no is that forbidden knowledge

gray badge
#

yes

#

you have 7 days

median finch
#

Reading up I understand philosophically why the binary gets replaced though

#

Makes sense

nocturne vortex
ionic island
#

yeah that kind of thing is the problem

#

now there's some unmainted alternate binary floating around with unmergable changes

nocturne vortex
#

I think Calamity agreed to maintain it after psakhis death

ionic island
#

I mean unmergable in the sense that they weren't really suitable for being part of main

nocturne vortex
#

(Of switchres / groovy fame)

ionic island
#

but eventually the code will diverge too

#

features wont work, hardware wont work, etc

sterile glade
# ionic island now there's some unmainted alternate binary floating around with unmergable chan...

Last I read, despite the demise of the lead dev, Groovy is being maintained. I understand you want to be protective. But given that this has benefited the development of an official core (N64), an in development official core (CD-i), has opened up a path forward for unofficial work without destabilizing official work (Groovy), and it seemed to even escape your radar for months (not causing issues), I urge you to reconsider.

ionic island
#

It just hasn't been abused yet

nocturne vortex
#

More like a year

ionic island
#

wait for someone to release a core that needs a DRM'd main

median finch
#

is this a common issue in multiple FOSS projects?

sterile glade
#

Anything can and probably will be abused given a long enough timeframe. Nothing is stopping anyone from compiling their own main or cores. This still requires manually putting an entry into the ini.

ionic island
nocturne vortex
#

If psakhis changes could get merged that’s fine but there’s a lot of people out there using it with the emulators they added support for and Shane Lynch’s MisterCast

#

So making it harder to use would be unfortunate after sorg added it specifically for this use

ionic island
#

the more people depend on it, the worse it will be when someone abuses it and it has to get removed

nocturne vortex
#

I mean it would also be kind of shitty if it wasn’t at least merged then since psakhis was an incredibly humble, kind person who contributed a really cool thing that tons of people have taken enjoyment from and it was his last work

ionic island
#

as an aside, I hate thumbs up emojis. I am never sure if im supposed to interpret them as the literal millenial sense or the ironic gen z sense

sterile glade
#

How does this cause more fragmentation or abuse than manually swapping the MiSTer binary during testing? This just 'automates' this by allowing you to have an ini entry that points to a particular bin. I am inferring this comes down to the fear of user confusion and support requests in the future? Which as someone in IT, I can wholeheartedly understand. However, you have to kind of know what you're doing to fiddle with this in the first place. I fail to see how it is any different. My understanding from Sorg adding it, in the first place, was exactly so it wouldn't affect the stability of 'official' work. How exactly do you envision this being abused that can't already be done? Seriously asking so I can learn.

ionic island
median finch
#

but easy to switch to cheers 🍻

gray badge
# ionic island wait for someone to release a core that needs a DRM'd main

This is really the problem with it. I love being able to override main with the ini - it has made CDI testing so much easier - but it really shouldn't be easy to do. If you're going to use a custom main, it shouldn't be something you can set and forget, because folks will exploit it.

I hate that I'm arguing against the ini system, but Kit's right, it will just be abused because humans fucking suck.

#

With that said, there should be a solution for groovy because a) that project is really fucking cool and b) psakhis (from everything that I have seen) was a really cool dude

ionic island
#

I dont know the details of what the particular issue was with merging that

gray badge
#

yeah me neither. im just here to cheerlead

sterile glade
#

Again, how is this more exploitable than before? You have to manually download a different binary. You manually edit and ini, which at the very least means you are 'documenting' the fact you're using something non-standard?

wintry dust
#

the issue is it is a huge change that is kinda out of scope. it's a lot to add to main. I'm not 100% sure sorg added this feature just for groovy, because his comment at the time was 'I've been meaning to do this for a while'

gray badge
# sterile glade Again, how is this more exploitable than before? You have to manually download ...

it's not more or less exploitable. its more accessible right now. there is no way to prevent folks from custom building main - but you can add friction to make it less accessible (and something folks would only use under specific situations). If folks are going to sell a custom main, it's a harder sell to say "yeah, and it's going to be behind main until I have a chance to rebuild it".

Beyond that, it's fragmentation, which is just bad for the project

wintry dust
#

if anyone is selling a main and it is behind mainline they are incompetent

sterile glade
# gray badge it's not more or less exploitable. its more accessible right now. there is no wa...

Only using under a specific situation, like using Groovy, or testing the CD-i, right? My point is the ini setting makes it's more accessible for people already having a unique situation. The abuse/exploit angle already exists. If someone is makeing a custom DRM'd MiSTer main binary, they can easily include a shell script that automatically kills and replaces the binary. I fail to see, how the ini setting leads to more fragmentation, abuse, exploitation than not having it.

hot wave
#

Does anyone want to buy my custom Christmas themed main?

#

It has Denuvo though

dawn iris
#

I don’t really understand the situation not. The ini is a manual thing, the unstable swap is a manual thing, but here for all cores. So the ini for a special core is more elegant and make no higher risk. As the Saturn core started I asked for a way to easy swap Main in the main menu, but that was not answered anywhere. So the actual situation is much better at before. We have now much new users and they have to learn but a willing to test things out in new cores. The actual possibility give them the change to do it, without to break anything of the other cores. So I see no problem here. If the core don’t need a specific main, just remove the line - and done.

nocturne vortex
#

Yeah who wants to swap back and forth to participate in testing when it can make playing other things annoying?

#

It’s a great feature, hope sorg keeps it

dawn iris
#

Not only that, sometimes it is not clear if a feature is in the latest unstable. We had often discussions about that.

nocturne vortex
#

It doesn’t really stop anything, just makes it more annoying. We would have scripts and people would run those to swap mister yada yada. Same end result just dumber

dawn iris
#

I see no reason why Sorg should remove this feature

dawn iris
nocturne vortex
dawn iris
#

The actual situation make it possible to test more as one new core with different unstable main versions without any tinkering. This helps also Sorg, as he has more time to bring things in the unstable versions. It is also more flexible.

sly sedge
#

It is a very nice QoL feature and is quite beneficial. It solved a pre-existing problem in a rather elegant way.
I would recommend going forward that any unstable test builds of MiSTer main specific to any core be properly named as such ahead of time before uploading (MiSTer_CDi for example, instead of just MiSTer). It already takes into account Discord adding underscores in place of spaces for file attachments. This also removes the extra step of requiring the end user renaming it, and eliminates the possibility of the test build overwriting the stable official one accidentally.

sterile glade
south urchin
lavish crow
#

Agreed. Most people use the thumbs up emoji to show they either agree with you or acknowledge they heard you

whole thicket
sly sedge
#

I'm well aware of that. I know how it works. I was attempting to advocate for that feature's continued existence in light of some wanting to have that feature removed because of unfounded fears of potential abuse.

whole thicket
#

Im sorry I may have missed it, but how would it be abused??? From a security perspective?
EDIT: oh my bad. Yep we’re on the same page. I really like the feature.

sly sedge
#

How indeed...

#

It's not like there aren't already scripts that can outright replace MiSTer main with an unstable/unofficial one, which has the potential to break everything.
At least the current INI method doesn't interfere with the normal operation of the system.
It's something sorg himself added back on March 25, and at that time it was a similar to a feature he was already planning to add "some time ago" (custom HPS binary support instead of standard MiSTer main).

queen arch
#

I'm currently catching up on this thread. I find it really interesting Philips made a mono version of the CDi.

#

It sounds like that's also an early (and rare) version.

strange crater
#

Mono I is just the hardware name - it’s not monaural. There’s also Mono II, Mono III, and Mono IV, alongside other player model ranges.

Mono I comprises the second generation version of consumer players, including certain models of the 200, 210, and 220.

You can find more info on the various player models here:

https://cd-i.wiki/en/hardware/players/complete_list

spring gate
#

Are you happy with how you have implemented save functionality now Slamy? That finalised and fully implemented?

terse flare
# spring gate Are you happy with how you have implemented save functionality now Slamy? That ...

There are certain things I don't like about the current solution which are not directly visible. The bootup of the operating system forces the video chip into the NTSC PAL compatibility mode which is used by some games to implement the region free behavior. At least my MiSTer test monitor and my TV do take some time to sync in again on the video signal. I don't like that as it slows down everything. With the current implementation, a reset is required when a new CD is loaded. But maybe that is fine... I could think about an option to force a common NvRAM for all titles. Most games tend to use only 4% of the available space. I don't think this will get full very fast. Quite a few people will only play the core for the Zelda games anyway xD. Apart from that, the solution should work. It was a low hanging fruit which provides the testers now finally a way of completing a game without starting over.

little latch
#

Is there an easy to find and follow tutorial to get this core up and running even in its pre-beta State?

strange crater
little latch
terse flare
#

The price for not word aligned framebuffer access goes to the dog simulator P.A.W.S (personal automated wagging system)
I really had hopes high, that every title would behave and fetch data on even addresses. But no, so sad it fetches the data on odd addresses and fails in these lines.

spring gate
#

Hmm, so is the issue that PAL games should be set to PAL in the menu and NTSC should be set to NTSC for them all to run properly?

terse flare
# spring gate Hmm, so is the issue that PAL games should be set to PAL in the menu and NTSC sh...

I don't know the answer to that yet. According to the documentation, every title should run on every machine. I assume this is similar to the situation of the Amiga. Most applications were designed for PAL in mind but are also runnable on NTSC because the PAL versions have a black area below or maybe just some nice graphics which are not part of the gameplay.
I personally would look for the originally intended region and play that version.

#

The CD-i also feels like it was intended for the PAL region with NTSC being second priority.

#

The core should support both but I rarely test the NTSC mode.

spring gate
#

Down the line may be worth looking at how Robert was able to set the BIOS for the PSX core depending on details on the disc images. Failing that the N64 core as an .XML file that sets options in the menu, if needed we could maybe maintain a list like that, but would be a beast

little latch
strange crater
#

Rename the file to MiSTer_CDi and place at the root of your SD card.

little latch
#

Oh perfect. Thanks.

little latch
#

Hmm...I get everything up to the loading games. I have the play CD-i Menu up, but games wont boot

#

i have both bios files where they need to go

gray badge
#

It’s because they removed a pin that’s important (but controversial)

#

in your mister.ini add [CD-i] main=MiSTer_CDi

#

(make sure that's what the custom main you downloaded is named)

little latch
#

Awesome. I now have this shitty console working.

stiff flare
#

no one asked me but I gotta support what the boss lady says

gray badge
stiff flare
gray badge
tulip orchid
#

well...it sounds like we're going to get cd-i in update all soon perhaps?

terse flare
tulip orchid
wintry dust
#

lmao removing that pin

tulip orchid
#

slamy I'm sure you're already aware of it, but in case you didn't happen to see the issue there's something odd happening at the beginning of loading Kether - have some video of it captured as well if you need it

stiff flare
stiff flare
rugged panther
#

or wait is it in soviet russia vodka makes potato

terse flare
# tulip orchid slamy I'm sure you're already aware of it, but in case you didn't happen to see ...

I think you are overestimating how many different games I test. The core is so full of errors, a small collection of games is enough right now. The modus operandi is still to get features inside with what I have right now. Nonetheless, your contribution is helpful. This is the first case of a directly visible region usage I've seen so far.
I can use Kether to debug the not yet existing region circuitry in the MCD212. As I don't know how many people are familiar with this conept I think I might explain it a bit as it is interesting.

#

The MCD212 has 2 planes which are fed from framebuffer data in one of the many pixel formats available. I don't know yet but the right one is probably on the top and the left one is at the bottom. Usually transparency can be generated using a color key: A special color which lets the other plane shine through. This is not done here.

#

The game makes use of the DCA, the Display Control Area. The instructions are as follows

Line   0 Region A 7   CMD:0000   RF:0   Weight: 0   X:   0
Line  78 Region A 0   CMD:1001   RF:0   Weight:63   X: 266 Set Region Flag at Pixel 133 / 78
Line  78 Region A 1   CMD:1000   RF:0   Weight:63   X: 506 Reset Region F. at Pixel 253 / 78
Line 170 Region A 0   CMD:1000   RF:0   Weight:63   X: 266 Stop all that at Line 170
Line 271 Region A 0   CMD:1000   RF:0   Weight:63   X:   0
#

The export of the simulation is doubled in width for High Resolution Pixels which is the resolution of the Regions.
The lines are starting inside the blanking area. This means I would draw it like this.

Pixels from the visible left edge 536 -> Divided by two is 268.
Pixels from the top is 78.

It matches

#

The same here

1012 divided by 2 is 506.
So it matches as well at the bottom right of the small screen in the center
#

The reason for not using the color masking feature of the MCD212 is because DYUV is used for both planes. This pixel format doesn't allow having a "transparent color".

terse flare
#

Maybe I'm very bad at explaining all that. This whole feature is essentially a combination of HDMA and Window from the SNES. The regions are defined for one line and stay like that until these are changed. For a rectangular shape only two lines need to have the region changed. The start and the end.

spring gate
#

Ah that's, interesting, thanks for explaining. I thought maybe is was similar to photo CDs and was looking for interlaced features

tulip orchid
spring gate
#

We have a testing sheet, if you are testing games it would be really helpful if you are able to log yours findings on it - even if everything seems fine on the current build

#

It is pinned in the chanel

tulip orchid
#

looks like i'll need to upload images somewhere and provide links to screenshots

#

are we creating separate tabs for each build? i notice all of the US testing was done on an older build

tulip orchid
spring gate
#

Just override the details for the game you are testing with your name and latest build and update comments for issues. We aren't at the point of logging specific issues on GitHub, there are still features to be added that Slamy mentioned.

#

As an aside, there is now a pack of the enhanced music CDs in the usual place if anyone is interested in grabbing those and keeping an eye on how they are working now and going forward. Pack isn't too large.

pine stump
#

Merged, very nice

terse flare
# pine stump Merged, very nice

He didn't even question my changes.flushedshyI've shortened the "Saving..." screen time by half for all cores. I'm not used to this. Usually at work, my colleagues are more pedantic when it comes to source code quality.🫣
This means now that for a while (until Red Book audio is included) no further changes to Main are required.

terse flare
# tulip orchid Thanks for going to all the trouble to explain this. Going forward, do you like...

Difficult. In general it keeps the channel alive and shows that the core is used. However, filing a GitHub issue would be against the etiquette of the MiSTer project as moondandy had mentioned: The core is still experimental. Robert Peip has it also phrased once on the N64 core development. In general we all know that things are broken. It's not like I'm running out of TODOs. If you look at the GitHub page of the project, there is a TODO list in the Readme with all the lacking features and discovered issues.
https://github.com/Slamy/CDi_MiSTer?tab=readme-ov-file#todos-in-order-of-priority
The testing sheet would probably be a good approach. Right now, I'm not actively working from top to bottom in that list as fixing one problem also fixes a lot others.
Maybe I should remove the "order of priority". It's not like a try to keep that order. Sometimes I go for low hanging fruits first.

spring gate
#

That's ace your changes were added in so quickly and cleanly, hopefully get pushed to live pretty soon. 🙂

Red book isn't supported by any emulator (yet) is it?

lunar nexus
#

This and the Next in unstable nightlies, splendid. Does that mean we don't need the cdmister thing in the ini file now?

spring gate
#

You will still need that until the CDi changes get pushed to the next official update of Main, and that is rolled out to everyone

#

These only happen periodically so no timeline on when this is likely to happen

wintry dust
#

(and then you'll need it every time slamy makes a change to main that isn't released)

spring gate
#

Yeah, I am guessing that it may not make sense for Slamy to do the other features just now that will need Main updates so they can all go live together, if it is all CD audio related and there is no emulator to use as a reference

stiff flare
#

AND YOU ALL MADE FUN OF ME

#

MY MY HOW THE TURN TABLES

sly sedge
#

You still did a bad thing.
We will never forgive your brave sacrifices. 🤣

terse flare
# spring gate That's ace your changes were added in so quickly and cleanly, hopefully get push...

Mame and cdiemu both support red book tracks in the context of interactive discs. So this is something achievable for this core as well. What indeed is not working on any emulator right now is bringing the operating system into Audio CD playback mode. I know of at least one game which makes use of red book audio. That would be Apprentice.
Sometimes I wish I could divide myself into multiple persons. There could be the CDIC Slamy and the MCD212 Slamy. And the one soldering and measuring a real CD-i..... but we would probably not get along very well due to a lack of patience for each other.

deft talon
#

So … does the core support
CRT ?

terse flare
deft talon
deft talon
#

What’s up with the new MiSTer unstable ?

gray badge
#

Means we no longer need the custom main that Slamy made - it's all in unstable main

iron valley
#

So we should go into the ini and remove the thing pointing the CD-i core to the other MiSTer_CDi, and also remove it? Or will it be needed at any point in the future, so keep it on there somehow?

gray badge
#

yeah, you can remove all of that now

iron valley
#

Okay, thanks.

spring gate
#

This is not accurate, you can't remove anything. All the unstable Main means is that down the line it will be merged into stable Main and released to everyone. At that point you can delete the bespoke CDi Main and remove the lines from your .ini

gray badge
#

if you're using unstable main, you don't need it, no?

#

or am I wrong

spring gate
#

If you swap your stable Main for unstable then sure, but you could have been doing that anyway.

gray badge
#

Oh I just run the unstable all the time

spring gate
#

But nothing will automatically swap for people now it is an unstable Main build

gray badge
#

So I should clarify: If you're running the unstable main, you don't need the custom main and ini stuff.

deft talon
#

I think I’m just gonna wait until it’s merged

gray badge
#

sorry, that's an important clarification - thanks for the catch, dandy

spring gate
#

That was always the case, but you need to manually swap to unstable main (which you could have been doing already with Slamy's one)

gray badge
#

right, unless you just live dangerously and run the unstable as your normal main all the time. Then you don't need to swap anything because the mister_cdi changes are in unstable main now.

spring gate
#

Are you manually swapping in your unstable build or have you automated this some way?

gray badge
spring gate
#

Ah OK, cool

spring gate
stiff flare
#

Updated pins to point to the latest CDi core and also to add a link to the latest experimental main.

#

You no longer need to have a unique MiSTer main, just use the experimental one and replace your existing one with it.

terse flare
terse flare
# spring gate Now that is interesting, I wonder what is so tricky about getting regular CDs to...

For some abstract reason, the decision to launch the Audio player is not done by the main cpu directly. The SERVO controller which is never replicated in any emulator right now makes that decision and provides this info to the SLAVE. That info is then provided to the CPU. The magic words which are required to make that transition were not yet recorded. I've tried to ask this question on the CD-i discord but it seems there is not much interest in performing recording of this scenario.
Concerning the SLAVE, we are on our own as I choose the path of emulating the SLAVE as a real controller instead of replicating the communication alone via HLE.
This is also the reason, why no emulator right now is simulating the automatic cross fade of the SLAVE as it controls the audio mixer without CPU intervention.
A Mono I PCB is on the way to me and when it arrives I can hopefully measure these things with a logic analyzer to get them right.
Hopefully in one piece. It comes from UK and seems to be sent around in circles when looking at the parcel tracker.

#

For the curios, here is a diagram of this patchwork family. It shows which parts are communicating to whom.

iron valley
glacial sonnet
#

Recording the "magic words"

austere heart
sly sedge
#

You could do it that way... or you could rename this latest unstable MiSTer main to MiSTer_CDi like before, if you're unwilling to overwrite your stable MiSTer main just yet for some reason.

austere heart
#

Does using Update_All still overwrite any current MiSTer main with the stable variant unless they're named differently?

Cuz' if so yeah I think this is easiest for me.

gray badge
#

No, I believe update all looks for whatever the latest date of the main binary is. If you're using the unstable, it will skip updating from update_all unless the stable main is a later date

#

I have unstable as my main and update_all doesn't replace it

austere heart
#

Oh that's wonderful, I guess I don't need to do anything then 👍🏻

merry oyster
#

I'm an unstable person, so I'm always running an unstable main!

#

In all seriousness, I actually can't remember the last time I was using a stable version of main. flushedshy

gray badge
#

same

stiff flare
#

I would always replace the unstable Main whenever updating it. The more people who use it the quicker we can find issues if there are any.

gleaming echo
#

been given permission from Markun to share this build, it is rebased to Friday's build but contains mouse and analog controls, you still need to press a button or a direction on the D-Pad on your primary controller but then after that you can move with analog or mouse without the need for changing any options, it is good for point and click games

spring gate
#

That's cool, is there some limitation that means you will always need to activate with a standard controller connected?

errant surge
#

I'm guessing this core is like the other disc based cores where each disc image needs to be in its own subdirectory for saves to work right? Assuming saves are even a thing on CD-i I have no idea.

sinful hornet
#

I believe subdirectories like that is the recommended method with mister

gleaming echo
#

I cannot take any credit for any of the code added to it though, the work is all Markun's I have just helped to test it

strange crater
#

Makes sense. I don’t know of any title which uses two mice - the only ones I know expect the second controller to be a gamepad.

#

And even that’s pretty rare.

gleaming echo
#

This mostly gives you the choice to use a mouse in games that will make it easier, point and click games, edutainment games, photo CDs, karaoke discs etc

spring gate
#

That's great that is in there now, very nice QOL for people who have a desk set up MiSTer with mouse attached. Be good if keyboard support gets added at some point to finish that off.

errant surge
#

I used a script to sort all of my chds into subdirectories and now none of the games will boot, and dump me back to the CD-i main menu. Anyone else experiencing this? Are game supposed to be in subdirectories named after themselves a la the other disc based mister cores or not?

spring gate
#

CHDs don't need to be in sub directories

#

Are you selecting to run from the CDi bios screen after you have selected a disc?

#

Did these files run before?

errant surge
#

They worked before, selecting Play CD-i fails to run the game and returns me to the bios screen. I’ll guess I’ll just pull them out of the subdirectories

strange crater
#

I had that on the new core after trying certain titles that wouldn't boot. Try rebooting from the OSD back to the MiSTer menu, then load the core again.

#

I can report a lot of fixes recently. Micro Machines and Pac-Panic are now running just about perfect on this new core; same with CD Shoot.

spring gate
#

That's ace. I haven't had time to test recently, but be good to get the game library run through again on the latest build and see where things now stand

errant surge
strange crater
#

Weird. I have games working in subdirectories on the core, but granted I'm working from bin-cue files.

#

Is everything not running in subdirectories, or just certain titles?

errant surge
strange crater
#

I've gotten into game on Mystic Midway: Phantom Express.

It looks like the main game mode crashes after the opening cutscene for the first area, but you can play the individual stages via the Practice option.

quartz shadow
#

CHDs in directories work for me, I have them a couple of directories deep.

strange crater
#

@errant surge What titles did you test, out of curiosity?

errant surge
spring gate
#

Have you rebooted your MiSTer since you copied all the folders across? It could be something weird there that is fixed with a reboot

errant surge
spring gate
#

Also am assuming if you copied over using FileZilla you have it set to binary

#

But yeah, if in doubt, turn it off and on again and see if it works 🙂

errant surge
#

Everything works fine now, just had to power down. Was using a direct usb connection with external ssd, so no filezilla involved.

terse flare
#

The machine from UK has arrived. I have now access to a model 450/00 (my first CD-i, a Roboco PCB), the model 210/20 (Mono II) which I thought was a Mono I (because I'm dumb) and now from today on a model 210/05 which is finally a real Mono I.
For all the people around here who like to buy a real CD-i: All my 210 machines which I've received had spindle motor issues. The spindle has touched the housing. It seems this is a common issue with these models. It needs to be lifted with a very thin screw driver.

nocturne vortex
#

Congrats on it making it in one piece

strange crater
#

Nice! I have a 220/37 and a 910/17P, myself.

valid onyx
#

So for the communication eavesdropping, I'm assuming you need to solder on some extra wires? No nice points to clip onto?

#

And which of the 2 is the new one?

#

(well, new, new to you. I know it's older :))

strange crater
#

In other news, Voyeur and The Wacky World of Miniature Golf are now fully working without any notable visual issues. Mega Maze also runs well (I hadn't played it before now - not at all what I expected; it's actually a pretty clever little puzzler.)

deep roost
strange crater
#

Escape from Cybercity's also running well, as is Zelda's Adventure and Lords of the Rising Sun.

#

Still encountering crashes on Burn:Cycle before getting ingame, though.

#

Kether appears to be playable, but only in French.

Keeping it on the default French setting lets you run through the game with some visual and audio issues (health bar is invisible, some borders appear incorrectly, and certain cutscenes will have both English and French audio on top of each other.)

strange crater
#

You're also able to get ingame now in Laser Lords with some visual glitches along its borders. I was able to talk to the first few NPCs and pick up the jiva, but I haven't tested it beyond that yet.

Trying out Zombie Dinos from Planet Zeltoid now. So far, everything seems to be working perfectly there.

terse flare
spring gate
#

If the game is playable, even with some audio weirdness, then that is great at this stage. 🙂

Do you think Markun's controller code is at the point it can be merged into your branch, Slamy?

gleaming echo
#

Markun tried to PR it when I posted his build but github was having issues so hopefully it will get PRd before Slamy releases a new build so he can merge it with any other changes that he makes

spring gate
#

That would be nice, hopefully he gets the PR working

gleaming echo
#

Yeah 🙂

strange crater
# terse flare Zelda's Adventure is running horrible. At least in my opinion. The ADPCM buffers...

It's still a substantial improvement, and good enough to make it significantly better to play.

The main issue I'm noticing compared to my reference 220 is a subtle repeating popping sound on NPC dialogue & enemy sounds. I added your note about the ADPCM buffers to the compatibility list.

The visuals look just about perfect, and aside from the popping, most of the sound otherwise is very accurate to the original. (Keep in mind, the original game was released unfinished. Some things, like item collection sounds not playing when being attacked by a large group of monsters, do appear to be authentic to the original behavior of the game on my 220/37.)

I expect it's potentially completable, if someone wants to give it a shot.

strange crater
#

Secret Mission has also gone from a black screen to playable. If anyone can help go over the list and help report any changes, I'd appreciate it.

terse flare
# spring gate If the game is playable, even with some audio weirdness, then that is great at t...

I'm very pedantic and maybe markun has felt that. It's very important for me that the changes to the input system have no negative effects which maybe cause frustration. There were some impediments with analog sticks that have a slight drift I do remember. In general I like the changes. Nevertheless, he needs to PR again. I can't see the source code right now, so I don't know what else he has changed.

gleaming echo
strange crater
#

Say @terse flare , any idea why the images in Myst are currently appearing as black screens?

#

The hotspots, cursors, and audio are working, but it's like the images are invisible.

wintry dust
terse flare
terse flare
wintry dust
#

if a user has a stick that drifts so much it causes issues they have to set a deadzone parameter in the ini. I think main has some built in deadzone for ps4/ps5 sticks? i'd have to go look

terse flare
terse flare
#

@strange crater I understand the issue now. Myst disables the top part of the plane by setting the weight to 0. The weight is multiplied with the RGB channels to darken them. The CD-i does hardware based fading to black with this feature. The weight value can be set using regions which is not supported by the core right now.
If you force the weight to be maxed out, the game looks like this.

#

One of the next release builds will probably fix this as I've already started to work on regions to fix graphical issues with PAWS, Flashback, Tangram and Kether. Flashback will still not be bootable though... that game needs additional features from the CDIC which I wasn't even aware to exist... sigh
I originally thought that the Apprentice would be the final boss of the core. 😄

nocturne vortex
#

CD-i stands back up and has 3 life bars. You hear Carmina Burana

terse flare
neon fulcrum
#

man, it's lovely that they silkscreened GLUE LOGIC beside the IC

terse flare
terse flare
neon fulcrum
#

I love the "Do not pinch DIGITAL VIDEO" section

neon fulcrum
terse flare
neon fulcrum
#

Yeah, I thought that might be the case. I've never seen pinching fingers for that previously

valid onyx
#

And I've used a logic analyser myself too, I find them quite cool. Was mostly wondering if the chips were analyzer friendly 🙂

dawn iris
neon fulcrum
#

Small gifts!

#

At least it's not a Commodore machine with random chips socketed in the worst single wipe sockets imaginable!

terse flare
dawn iris
#

They do this only for cost savings these days. Only chips like bios, etc. got a socket.

terse flare
#

YES! SO MUCH YES!

#

MAME is playing an Audio CD

#

With the machine arrived, I was able to decode the status words responsible for bringing the operating system into the media player. Afterwards it still didn't work but with a hint of CD-i fan I digged a little deeper into subchannel data. MAME emulated it wrong, resulting into the "Table of Contents" to be not correct. After fixing that, MAME is now playing an Audio CD.
If my assumption is correct, this would make MAME the first CD-i emulator playing just a basic Audio CD

spring gate
#

Well done! That's a serious milestone!

dawn iris
#

Good job. So the investment in the other Player was a good idea and will pay off.

neon fulcrum
#

wow, that's amazing

spring gate
#

Does this mean you have the knowledge you need to implement it into your core now as well, or it not that straightforward?

terse flare
sinful hornet
#

Slamy da gawd 💪

neon fulcrum
#

The labor of love for a "console" that sold dozens is just amazing

#

being able to preserve it is so important

sinful hornet
#

That's the piece that will allow the elevator music, right?

terse flare
#

I do have to say that the current state of my MAME experiment is not really mergeable. There is one open question still. The information that it is an Audio CD must be injected at some position. It must also be discovered at some point and I don't know how the real machine does it. According to ... a PlayStation 1 documentation .... the disc type is part of the Table of Contents. Though I think whenever we are burning a CUE/BIN information, this is probably not written. How would our burner application know about the CD-i standard. So maybe some heuristics have to be applied at first to find out about that.

#

I have to be careful to not have too many open ends in this development! 😄 This was just the result of my curiosity as the machine has arrived during the last days.

wintry dust
#

each track has a type/mode, I don't think any read toc command on a normal audio cd has a 'this is an audio cd' flag.

unreal sparrow
#

is Flashback working on Mame ?

stiff flare
#

❗ May I have your attention for one moment?

Hey everyone, watching this core develop is really exciting. What's impressive though is that @terse flare spent his own money to purchase an original CD-i unit so this core can be as accurate as possible for all of us. Please consider donating to his Patreon to show your support for both Slamy and the CD-i core, thank you!

Patreon - https://www.patreon.com/AmigaSlamy

Patreon

A slightly insane hardware and software tinkerer

terse flare
# unreal sparrow is Flashback working on Mame ?

The intro has glitched graphics but the game itself seems to be working. I have not much experience with this game. It looks interesting though. Reminds me of cinematic platformers like "Heart of Darkness" or Prince of Persia

unreal sparrow
spring gate
#

If you mean the BGM background music discs, those should actually play now. @strange crater has been doing a lot of work collecting and collating them into a CHD pack. Should all be up in the usual place these things are now if you are wanting to have a try of them. You probably need to change the date in the console, as they are mostly date locked. Would be interesting to see if there is a way to remove the date lock on these at some point though, but way above my head how that would be done.

strange crater
#

I think it’s more Redbook CDDA audio they’re discussing now. CD-BGM discs run fine on the current core (they’re just Green Book like a standard CD-i title.)

spring gate
#

Yeah, Redbook would (presumably) make the Enhanced Music CDs all play, and maybe some of the Karaoke discs are that format

#

Do we know if any Photo CDs have music and what format those are in if they do?

strange crater
#

Not traditionally, but it is included as part of the proprietary Portfolio CD subformat. Not entirely sure how it works yet there, but I'm looking into it.

#

(Portfolio CD is used by many of the Photo CD adventure games, among others.)

spring gate
#

Oh, Interesting. Do you think there is more that the core would need to support other than interlaced feature in order for them to all work properly?

strange crater
#

I'd kind of say test and see.

#

Going through the filesystem, the player stores the disc music in Redbook CDDA on Track 3, but also duplicate the contents in a .PCD file in the AUDIO directory under PHOTO_CD. The file looks to be about the same size as an uncompressed .WAV rip of the Track 3 stream, and playing back Track 3 goes through all individual section clips played in sequence.

Why this is in both places, I have no idea yet. My theory is that it's for compatibility between certain players.

spring gate
#

I wonder if @bold dragon knows anything about these, from his dives into all things PC-FX related

bold dragon
#

The logic traces are also in the repository - I have two PhotoCD related ones: one is boot time, and one is playing it

#

In there you will see various reads of the table of contents, and before it reads any data, it reads whether the data is encoded as MODE1 or MODE2

#

Here is the TOC of a representative PhotoCD

#

I have no idea what/how much is in common between CDi and PhotoCD

#

BTW, the "...Boot_PhotoCD..." trace is the one where it reads the table of contents (track 0 = get number of tracks, etc), track 1, track 2, track3, then "(44) read header" to sense whether it's MODE1 or MODE2 to set up for the data reads which follow

strange crater
#

Not too much. It's ISO9660 format, like Video CD. They both load a player file out of the CDI directory on the disc.

#

They both fall under the White Book standard, which also documents wider use cases for CD-i Bridge.
(Although Kodak reportedly has its own specification book for Photo CD, referred to as the Beige Book, the specifics of Portfolio CD are reportedly not specifically defined in any particular book.)

spring gate
#

So many different colours of book...

#

Does the core fully support white and beige?

sly sedge
#

Plaid Book, which was only widely popular in Scotland for some reason...