Jump to content
IGNORED

Can 8 Bits Play MP3 ?


Math You

Recommended Posts

Just a hypothetical question to satisfy my curiosity.

 

Could the 8 bit pokey sound chip in the Atari 400/800/1200 computer be programmed to play MP3 music if someone wrote the appropriate software?

 

Some other 8 bit computers such as the Commodore 64, only had 4 bit sound, though the Ataris' 8 bit chip seems to give it some potential as a music player. I expect a shortage of memory would be a problem :?

 

Matt

Link to comment
Share on other sites

Howdy Matt

 

There are small boards that plug into the back of a C64 or C128 that can play MP3. But they use a small chip on that board to do all the decoding.

 

The average MP3 is under 16MB in size. All you'ld need it a pretty big memory upgrade or a way to load it real fast. Like from a CD, DVD or Harddrive.

 

Greetings

 

Mathy (who's booted this XE from a CD-ROM)

Link to comment
Share on other sites

Way too slow. I think the minimum requirement is 20 MHz 68020, possibly more?

 

I've been looking to implement some sort of audio compression for waves on the Atari.

 

Some sort of predictive algorithm is probably best - the problem is that it's a lot harder to reduce the size of a 4-bit waveform than it is for an 8 or 16 bit waveform.

 

But the biggest hurdle is CPU cycles - playing a waveform at 15 KHz is demanding enough, let alone having anything more than a simplistic decompression algorithm.

Link to comment
Share on other sites

Howdy MRB

 

Maybe the files could be read from a memory card?

 

They could. Problem is, you have to get them into the computer fast enough. Most devices that let you connect a memory card to an Atari 8 bit computer use the SIO-bus, which might be too slow.

 

Greetings

 

Mathy

Link to comment
Share on other sites

maybe it is possible to do a similar kind of sound-generation when you not use sampling but a music player that plays sound at 2000 updates per second.

 

F.i. you don't have to play a sawtooth wave as a sample if the atari already has a hardware generated sawtooth waveform. Then you'd be talking about 'pseudosampling', a kind of combined AM/FM synthesis

Link to comment
Share on other sites

Could the 8 bit pokey sound chip in the Atari 400/800/1200 computer be programmed to play MP3 music if someone wrote the appropriate software?

 

Some other 8 bit computers such as the Commodore 64, only had 4 bit sound, though the Ataris' 8 bit chip seems to give it some potential as a music player.

 

Don't confuse your specs; there are several different bit numbers at work here. For example, the Commodore 64's sound chip has an 8-bit data bus, is capable of 16-bit analog tuning, and can play 4-bit digital samples.

 

Any system that can be rigged to play digital samples, including Atari 8-bits, the Commodore 64 and even the Atari 2600, can play decoded MP3's. Actually being able to decode the MP3's before playing them is another matter, and I doubt any machine from that era is capable without extra hardware.

Edited by skunkworx
Link to comment
Share on other sites

Don't confuse your specs; there are several different bit numbers at work here. For example, the Commodore 64's sound chip [...] and can play 4-bit digital samples.

This depends on the sample replay method you choose. 4 bit is achieved by the most simple method of just poking the sample values into the 4 bit volume register. There are other methods (filtered PWM square wave or test bit based stuff) which allow 8 or 12 bit samples. The test bit method was discovered just a few years ago.

Link to comment
Share on other sites

An 8 bit could probably do it but you would need:

1. A large enough storage device to hold the mp3 file

2. A file system that can handle files that large

3. A lot of RAM

4. A 40(?)Mhz or greater CPU... or it wouldn't sound like music

 

We all know #1 has been done. I know of one guy that has 64MBs of RAM in a machine so that's possible. And with FPGAs #4 *is* possible.

It's that #2 that I think would be the problem. You'd need to write a new DOS or OS to deal with files into the megabytes.

Link to comment
Share on other sites

I coded a few small silly and simple programs:

they all play sawtooth waveforms (channel 1&3 both on 1.79mhz mode, filtered)

 

the first plays sounds every 8 scanlines (±2000 updates/second)

the second plays every 128 scanlines

the third also, but has volume control for channel 1

the fourth is the same as the third, with update of ±4000 per second: every 4 scanlines

 

now if there would be a codec that feeds this thing the right data we could maybe come close to something like mp3

 

BRK

Link to comment
Share on other sites

Seems to me, storage is the biggest limitation.

 

The computers are perfectly capable of decoding the file --just not in real time, IMHO. By way of comparison, a 30Mhz MIPS CPU can decode a 256kbps mp3 file in real time, with about 90 percent utilization. (That's under IRIX)

 

So, the mp3 is pre-processed to distill the audio down to whatever makes sense, given the hardware at hand.

Link to comment
Share on other sites

Seems to me, storage is the biggest limitation.

 

The computers are perfectly capable of decoding the file --just not in real time, IMHO. By way of comparison, a 30Mhz MIPS CPU can decode a 256kbps mp3 file in real time, with about 90 percent utilization. (That's under IRIX)

 

So, the mp3 is pre-processed to distill the audio down to whatever makes sense, given the hardware at hand.

If you are talking music MP3s then you need to deal with 16 bit audio data.

A MIPS CPU handles 16 bit numbers in register where the 6502 does not so you'd need a higher MHz 6502 to deal with an MP3. A 65816 would be a little better but still doesn't have as many registers as a MIPS. 40Mhz may not even be enough if the MIPS has to be that fast.

Link to comment
Share on other sites

You could probably interface a board such as this for playback of Mp3 files. The atari could be the device to send the control signals. Heck, you can get TTL serial out of the joystick port!

 

http://www.active-robots.com/products/accessories/ump3.shtml

 

For United States:

http://www.hobbyengineering.com/H2168.html

Edited by puppetmark
Link to comment
Share on other sites

Seems to me, storage is the biggest limitation.

 

The computers are perfectly capable of decoding the file --just not in real time, IMHO. By way of comparison, a 30Mhz MIPS CPU can decode a 256kbps mp3 file in real time, with about 90 percent utilization. (That's under IRIX)

 

So, the mp3 is pre-processed to distill the audio down to whatever makes sense, given the hardware at hand.

 

I get pretty low CPU utilization (although on IP28/IP30 hardware) using mxaudio under 6.5. CPU utilzation is at about 6% for a 256kbps MP3. If use xmms utilization is around 25%-30%.

 

Probably a little off topic for this forum but based on what you said, I'm guessing your figure is for an IP12?

Edited by warerat
Link to comment
Share on other sites

I think so.

 

It was an Indigo R3000, running IRIX 6.5.9, I think. Pretty sure it was 6.5, just can't remember the version number.

 

The program was mp3play(er)...

 

Command line, no GUI, files played from local disk.

 

I've an O2 that barely registers on a program called amp. Probably similar numbers to what you are seeing. Excellent decodes too, very little of the slurring some decoders introduce into the process. Always wondered about that.

 

I no longer have the box. Gave it to somebody who really liked the system. These days, I've an O2, R12 and an Octane R12. Both run at ~300 something Mhz.

Link to comment
Share on other sites

I think so.

 

It was an Indigo R3000, running IRIX 6.5.9, I think. Pretty sure it was 6.5, just can't remember the version number.

 

The program was mp3play(er)...

 

Command line, no GUI, files played from local disk.

 

I've an O2 that barely registers on a program called amp. Probably similar numbers to what you are seeing. Excellent decodes too, very little of the slurring some decoders introduce into the process. Always wondered about that.

 

I no longer have the box. Gave it to somebody who really liked the system. These days, I've an O2, R12 and an Octane R12. Both run at ~300 something Mhz.

 

Good to see another SGI head playing with Ataris.

 

I've got an O2 R5K-200, two R10K-195 Indigo2 Impacts, and a dual R12K-300 Octane. Awesome machines, even to this day. Wouldn't trade them for anything.

Link to comment
Share on other sites

No kidding!

 

I'm in the same boat. IRIX was very, very good to me. I've had the chance to scale the OS up pretty big. Start with a few users and a LAN, end up with several Origin class machines all serving an application and it's data to 30 or so X window users on PC's of various kinds.

 

The O2 is the slower of the two machines, but it's my fave. Mostly the UMA design allows for some impressive video effects. It's a one of a kind workstation for sure. The Octane is just nice and reliable. Bit power hungry though...

 

To this day, I find the window manager highly productive. It's a bit no frills, but it has it where it counts, particularly on the O2 with it's large graphics memory capacity.

 

Best computers ever made, IMHO.

 

I grew up on Apple ][, Atari 400/800 and CoCo 2 systems. (Really miss the 6809, but I've got a new Propeller chip with some wicked cool assembly to hack on, so I'm largely happy!) I owned a 400, which I still keep and use regularly. Good friend had the CoCo, and the school had the Apples. (The expansion capability of those things really made for some fine machines!)

 

I'm here today, watching and occasionally doing, the Atari thing, just as I did long ago. It simply amazes me how much flexibility Jay Miner built into his chip sets. Here we are, way too many years later, still inventing new ways to create displays on very old hardware. Damn cool stuff.

 

This is why the O2 is my fave as well. It's got that same software driven mindset. It's not seen any serious tinkering, beyond the seriously great Pegamento application that made solid use of the ICE accellerator chip and some heavy texture stuff written by college kids... Maybe it needs to age some more, before we see that happening!

 

The prop chip I'm tinkering with right now is another software driven design. It's got a lot of hacking room there for much fun to be had as well. Love these kinds of machines.

Edited by potatohead
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...