This forum is for discussion pertaining to homebrew and indie software for the Dreamcast, such as homebrew games, emulators/interpreters, and other homebrew software/applications. Porting requests and developmental ideas are not to be made here; you can make those here. If you need any help burning discs for homebrew software, this is the place to ask as well.

No, what I'm talking about has nothing to do with your project, it has to do with dcload and dctool as a link between pc and dc, this is what slows down the connection between the dc and the pc, with too many control functions, and a slow ( way slow ) driver. From a 100mbit connection it's not understandable that you get less than 500KB/s of speed, seriously... that's what I'm talking about...

Yes, I have the BBA, which works fine from PlanetWeb or with Doom. I have no idea why the loader can't reach the DC it just can't. I suspect it might be something to do with ip tables in linux (I use Xubuntu) that doesn't affect Windows.

The adress hardcoded in dcload for dreamcast has to be the same dctool from linux expects, to make sure, get your dc load cdrom, hex edit the bin and search for 192.168, then edit it to suit your ip, burn again and tell dctool to send whatever you want to send to that IP, that or use ARP with the mac and it should work fine.

PH3NOM wrote:Next Ill try out some 96kHz samples to see how the DC's SPU handles it!
Hopefully software re-sampling wouldn't be necessary. But if it is, 48kHz would be the re-sample rate, or should it be 44.1kHz for DC?

Err - from the formula used to set the sample rate, it seems AICA plays at 44.1kHz, and the sample is resampled in hardware to that rate. I have no idea how AICA's resampling would sound for something like that. I guess you'll have to try it and see. 48 to 44.1 shouldn't be a problem.

Cool, I tried some 96kHz MP4's with DCMC last night. It sounds the same as 48kHz!

Chilly Willy wrote:

PH3NOM wrote:And, to be perfectly clear, 6ch audio is down-mixed to stereo ( in software ) before sending the samples to the SPU.

There are a number of different down-mix formulas used by different players to allow simple mixing, or Dolby mixing, Dolby Pro mixing, etc. You'll probably want to check that out... maybe make it an option the user can set.

Yeah, currently LibA52 is using Dolby Pro downmixing, and LibFAAD is using a standard Stereo downmix.
It is a good idea to put the downmixing functions into my audio driver, then it would be easy to allow
the user to change this, in the GUI.

If you notice my posts (I'm JLF65 over there), it cost me a total of $26.14 USD and took almost 7 weeks, but I'm happy with how it turned out. I'm using an 8GB MicroSDHC card in the adapter, with no problems so far. I'm currently ripping my Sonic Adventure disc in DreamShell to the SD card. I'll probably rip a number of my game discs to see if they work so I can cut back on wear on the drive. I already made an SDISO for my Doom port... the SD is noticeably slower than the CD drive but I like the lack of grinding on the drive.

Haha, nice. I have all the parts, I just havn't had time to assemble the adapter, yet.
I need to track down an old friend, to see if he can assemble it for me

PH3NOM wrote:Next Ill try out some 96kHz samples to see how the DC's SPU handles it!
Hopefully software re-sampling wouldn't be necessary. But if it is, 48kHz would be the re-sample rate, or should it be 44.1kHz for DC?

Err - from the formula used to set the sample rate, it seems AICA plays at 44.1kHz, and the sample is resampled in hardware to that rate. I have no idea how AICA's resampling would sound for something like that. I guess you'll have to try it and see. 48 to 44.1 shouldn't be a problem.

Cool, I tried some 96kHz MP4's with DCMC last night. It sounds the same as 48kHz!

Nice! Good to hear... in more ways than one.

Chilly Willy wrote:

PH3NOM wrote:And, to be perfectly clear, 6ch audio is down-mixed to stereo ( in software ) before sending the samples to the SPU.

There are a number of different down-mix formulas used by different players to allow simple mixing, or Dolby mixing, Dolby Pro mixing, etc. You'll probably want to check that out... maybe make it an option the user can set.

Yeah, currently LibA52 is using Dolby Pro downmixing, and LibFAAD is using a standard Stereo downmix.
It is a good idea to put the downmixing functions into my audio driver, then it would be easy to allow
the user to change this, in the GUI.

That would be good - pull all the down-mixing into a single module of the program so it's easier to control. While you're doing that, it gives you the chance to look over all the ways different libs go about doing down-mixing. You may find some do a better job than others.

If you notice my posts (I'm JLF65 over there), it cost me a total of $26.14 USD and took almost 7 weeks, but I'm happy with how it turned out. I'm using an 8GB MicroSDHC card in the adapter, with no problems so far. I'm currently ripping my Sonic Adventure disc in DreamShell to the SD card. I'll probably rip a number of my game discs to see if they work so I can cut back on wear on the drive. I already made an SDISO for my Doom port... the SD is noticeably slower than the CD drive but I like the lack of grinding on the drive.

Haha, nice. I have all the parts, I just havn't had time to assemble the adapter, yet.
I need to track down an old friend, to see if he can assemble it for me

Ah, so you want to build it yourself... or have someone else do the grunt work.

Given the price of a plain USB SD adapter, if you can mod it yourself (or get a friend to), it can save time and money.

It would be nice to have a public release soon, maybe around 4th of July. But that is far from a promise!
Realistically I would like to be finished with the project by the end of the summer.
Aside from finishing what I want to do with the code, I would also like to make a website to centralize the project before I release anything.

Just rest assured I will be working on this project, as much as I can. There are many things still to solidify.

Currently, I am finishing my re-write of the LibMPG123 decoder to use the k:os sound stream functions.

Trying to use SDL audio while decoding with XviD was stupid slow!

I believe my port of LibMPG123 is actually faster than the existing K:OS MP3 port ( the library itself is using SH4-optimized inline ASM for the idct ) but I need to do some benchmarking to provide some numbers to back it up.

Chilly Willy wrote:Is that being done on the ARM processor? We need more sound code on the ARM... ogg-vorbis, mp3, and mikmod/modplug at the very least. That would do games and media players the best good.

Well, the sound driver runs on the ARM, and tells the SH4 when it needs some more data.
SH4 is doing all of the decoding, but the library is using SH4-optimized inline ASM for the idct functions.

There's some disagreement over the ARM... some old AICA docs from people like the Hitmen suggest it's only up to 25MHz, not 45MHz. The older ARM7 (v3 arch) only clocked up to 26MHz and didn't have multiply instructions. However, EVERYTHING else everywhere says it's a 45MHz ARM7, and an ARM7 that speed would have the multiply instructions. KOS sets the default flag for the compiler to

The AICA master clock is 45MHz, so the internal hardware (mixer, DSP...) is running at 45MHz.
However, the ARM has its own clock of 22,5MHz. But because of lack of cache, the ARM won't be able to provide more than ~3 MIPS.

Furthermore, it's an ARM7DI; while it has the mul opcodes, those take a lot of cycles to be executed, compared to GBA's ARM7TDMI for instance (I remember calculating it for a 32b,32b=>64b multiplication, it was something like 8 times slower).