More details found in Cool Addresses section.
The ASR-X uses a Motorola 68340 processor. This is an embedded version of the 68020, which is an improved version of the well-known 68000.
The ASR-X OS resides on two 4Mbit EPROMs, connected in parallel to the 16-bit data bus of the CPU. Therefore, the total memory is 1MB. Here is the newest OS (2.67) for the black box. ASR-X OS v2.67 BTW, don't freak out, Ensoniq gives away this OS for free (just $10 S&H and the EPROMS they give you are worth more than that, so don't let it be said that they don't care at least a little about their customers!).
One 72-pin SIMM, maximum size=32 MB. A 32 MB SIMM is actually implemented as two 16 MB banks on the same card, if ya didn't know... (same with 8 MB= 2x 4MB) The SIMM is more than likely controlled by the 68340's on-board DRAM controller.
This may be implemented in sram on the motherboard?
What happens the second you turn on the ASR-X?
The CPU comes out of reset, and jumps to address 0x0000041a.
the first two instructions are:
MOVE.W #$2700,SR
MOVEQ.L #$07,D0
After that, the simulator chokes on the instruction at 0x420...must be a 68340 or 68020 specific instruction. The opcode is: 0x4e7b0001. Any ideas what that does?
Meanwhile the stack pointer is set to 0x0be77400. This indicates the top of some sort of static memory must be located at 0x0be77400.
After that, the code does a large number of moves to memory locations in the range of $F00000-$F00060. My guess is that these are i/o addresses of either hardware
Pinout of J70, a 10 pin header on the motherboard.
J70 - 10 Pin Header
Addresses of intersting stuff in the OS! (v. 2.67)
Cool Addresses
A simulator for the 68K.
This is primarily the 68K, and has support for 68360 and 68230 (both
68340 variants), so it will work with the asr-x's code.
It's a bit tricky to get started, so be patient, and learn how the CPU
works, it will help, trust me.
BVSC - 68K simulator
A DOS disassembler for the 68K.
Since this is for the 68K, I don't think it will understand some of the
'340's extra opcodes, but it will understand the majority of the code.
68K Disasm
Utilities to join and split images. Since the OS is spread out over two images, it's hard to work with, so these programs will let you combine them into one image. As one image, you can edit values using emacs and save them. After, split the images, and re-burn them!
Internal Zip Drive (100 MB or 250 MB) for the ASR-X
I talked today to the person who put together a kit for using a Zip Drive in a beautiful instrument called the ASR-X.
He seems really nice. He's actually entertaining the notion
of putting together a kit for an internal 2GB Hard Drive, as well
as making the above an official ASR-X Kit. Big Ups to the people
at Iomega, hopefully they'll get a chance to add this to their
page (
http://www.iomega.com/zipbuiltin/beyondpc/audio.html ).
Internal Zip Drive
Back to synthesizer hacking
Back
If you have anything else you like the smell of, e-mail me and if I like it, too, I'll add it. shifty@gweep.net