Page 1 of 2

Hardware MP3 Card ?? Possible ?

Posted: Sat Jul 01, 2023 9:54 pm
by ahenry3068
Thought of a worthy Hardware project for the X16 if any talented electronics fabricator wants
to pick it up. A hardware MP3 decoder for an expansion slot..

I could devote the rest of my life to that project and probably get nowhere.... So its
just an Idea I'm throwing out..

Re: Hardware MP3 Card ?? Possible ?

Posted: Sat Jul 01, 2023 11:01 pm
by kelli217
Sure. It's possible.

It would technically be entirely possible to build an expansion card to do all kinds of things. Ethernet card, WiFi card, math coprocessor, cassette tape interface, and so on.

There's at least one person who is contemplating what would be involved in building a Z80 card so that the X16 could run CP/M and have a whole new other large secondary library of legacy software to choose from in addition to the various few CBM 2.0 BASIC programs that don't rely on machine-specific features.

At a certain point, though, the tail is wagging the dog. An MP3 player card would be several times more powerful than the X16 itself.

Re: Hardware MP3 Card ?? Possible ?

Posted: Sun Jul 02, 2023 12:47 am
by ahenry3068
Your one of the people I listen to here... a lot.
but I don't completely agree that an MP3 decoder card would be "More Powerful" than the system.

An Ipod or Zune played MP3's perfectly well but either would have made a poor general purpose platform.

There are MP3 decoder IC's that "ONLY" decode MP3 without any other real functionality.

Your correct in terms of "Amount of Math per millisecond" But its a hard coded single purpose
algorithm.


x86 had the 8087 line of co processors, they did Floating Point Math much faster than the X86 itself.
But none(with the exception of a few odd upgrade chips) did the work of the CPU..

Re: Hardware MP3 Card ?? Possible ?

Posted: Mon Jul 03, 2023 7:30 pm
by kelli217
Well in that case, basically, you're talking about a single-purpose DSP.

Someone I used to know in Amiga circles was trying to build a small DSP board that would hook to the Amiga's parallel port for the purpose of being able to play MP3s on that platform, and it was also going to be a single-purpose device. Anything that can communicate over an Amiga parallel port should be able to communicate over the X16 expansion bus, I would think. The standard IEEE1284 parallel port is based on an 8MHz clock, like the X16.

That, in theory, is enough to manage a 320kbps stream, just barely, if the data is completely unrolled into immediate mode LDA instructions. Any more complicated kind of memory accesses will slow things down quite a bit.

Re: Hardware MP3 Card ?? Possible ?

Posted: Tue Jul 04, 2023 6:19 am
by ahenry3068
If the hardware will theoritically give 320 bps, for perfectly optimized data stream
Then 128 or 160 bps should give you some slack. 160 bps MP3's sound pretty good.

Re: Hardware MP3 Card ?? Possible ?

Posted: Tue Jul 04, 2023 6:13 pm
by ahenry3068
Actually this possibility intrigues me enough. That.

If someone sends me a parts list that totals < $200.00

includes an MP3 decoder chip.... (I lack electronics experience, but
I am an experienced Computer user and Maintenance tech, I have a good BS detector. )

If someone wants to tackle this project send me a synopsis, a parts list and I will
purchase 2 of every part and send you my development expansion card.

Part of this has to be software to drive the board..... I can help with that.

Re: Hardware MP3 Card ?? Possible ?

Posted: Tue Jul 04, 2023 8:25 pm
by Wavicle
If you are just looking to play MP3 audio, this can be done for somewhere in the vicinity of $25 in parts. There are a number of MP3 decoder ICs, but finding one that can still be sourced in quantity is a little tricky. VS1011E-S seems to be one of the few I can find a source for, though I'm not familiar with them: https://www.tme.eu/en/details/vs1011e-s ... uits/vlsi/.

Your parts would consist of an RP2040 (aka RaspberryPi Pico) for bus interface (~$1.25), some level shifters unless you are feeling pretty brave (~$1.25), the VS1011E-S ($15.50), maybe filtering hardware (~$3), 3.3V regulator (~$0.50), and whatever passives needed to support those.

Re: Hardware MP3 Card ?? Possible ?

Posted: Tue Jul 04, 2023 9:16 pm
by ahenry3068
I suspected as much... However
I'm in the position of knowing just enough about circuit design
to consider it a Dark Art...

I'm kinda wanting to have a board to do that... But have absolutely
no idea (besides sourcing an IC to start).

Re: Hardware MP3 Card ?? Possible ?

Posted: Wed Jun 12, 2024 1:26 am
by danboid
I was proposing we do something similar for the Uzebox using this:

https://github.com/earlephilhower/ESP8266Audio

We already use the ESP8266 on the Uzebox for WiFi but the community wasn't keen on also using it for MP3 playback etc. The consensus was that it goes against the spirit of the platform and would've caused too much development complexity.

https://uzebox.org/forums/viewtopic.php?t=11356

The X16 isn't quite as minimal as the Uzebox and is sold as a computer instead of a games console so maybe it makes more sense on the X16 to have an add on card for MP3/OGG etc playback?

Re: Hardware MP3 Card ?? Possible ?

Posted: Wed Jun 12, 2024 9:29 pm
by Ser Olmy
kelli217 wrote: Sat Jul 01, 2023 11:01 pmAt a certain point, though, the tail is wagging the dog. An MP3 player card would be several times more powerful than the X16 itself.
That's basically how computers have been designed from at least the 16-bit era and up until today.

The Amiga had custom chips that performed functions much faster than the main CPU ever could. Early PCs had MPEG-2 decoder cards for DVD playback. Modern PCs have graphics cards that are orders of magnitude more powerful than the main CPU for a specific set of tasks.

I don't think the idea of adding an FPGA or two to a neo-retro system like the X16 is contrary to the idea of creating a modern 8-bit system that can be programmed in a similar way to the microcomputers of the 1980's. You're still interacting directly with the hardware, it's just that you're manipulating more modern custom chips.