Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- EXRAM Locations I mapped out some time ago:
- --------------------------------------------------------
- 0x7D-0x81
- Last ChipIO Command.
- 0x82:
- Changes depending on sample rate. Matches things from the 1900XX regions.
- 0x87:
- This seems a bit more obvious. 29 is the number thats in the 15XX region when
- audio is playing correctly, and 0x87 is set to the sample rate of the audio
- currently playing.
- 0x82-0xDF
- Seems to be a mix of things. But, definitely related to stream connections.
- ----------------------------------------------------------
- 0x63C-0x698
- ConnPointID sample rates. Byte order like this.
- Byte 0: I think stream enable/disable?
- Byte 1: ConnPoint Sample rate.
- Each Connections location:
- Okay, we can pretty easily come to the conclusion that 0x63D is ConnPoint0x00,
- and that counts up until 0x0F at 0x65B.
- 0x03: 0x643.
- 0x0F: 0x65B
- -Between these two? No clue.
- 0x40: 0x65F
- 0x41: 0x661
- 0x52: 0x663
- 0x43: 0x665
- 0x54: 0x667
- 0x48: 0x66F
- 0xN/S: 0x665 Seems to be current outputs sample rate.
- 0x91: 0x681
- ----------------------------------------------------------
- 0x72F-0x8AA
- Stream ID's and their connections. Each are ten bytes, and have a format as
- follows:
- Byte 0: StreamID
- Byte 1: Stream SourceConnID
- Byte 2: Number of Channels
- Byte 3: Dest ConnID
- Byte 4: Not sure.
- Byte 5: For stream enable/disable. Different depending on what kind of stream.
- Bytes 6-9: No clue.
- ----------------------------------------------------------
- 0x8AB-Around 0x95D
- These are kind of confusing. I think they're 6 bytes long each. But, they change
- depending on streams turning on or off. When stream 14 is selected prior to being
- turned on, 0x8C1-8C6 are:
- 08 02 00 01 FF FF.
- After it is turned on, they become:
- 08 04 F8 F9 FA FB.
- F8, F9, FA, and FB are all used in the 0x19006X writes to enable audio. Probably
- not a coincidence. Also, it may be a coincidence, but byte 2 seems to call how
- many non FF bytes are coming after. So, like the first is 08 02, then two bytes
- 00 01, then FF FF. Same with what comes after. 4 bytes are not FF. What these
- actually mean, I don't really know. Will have to mess with turning streams on/off.
- When stream 0x14 is enabled, two regions change here. 0x8C2-8C6, and 0x8DD-0x8E0.
- After Audio script is started, we get:
- 0B 04 C8 C9 CA CB
- So, to get these all in one area.
- 1 = Before 0x14 enabled, 2 = After 0x14 enabled, 3 = After audio script.
- 0x8C1-0x8C6 Differences.
- 1: 08 02 00 01 FF FF
- 2: 08 04 F8 F9 FA FB
- 3: 0B 04 C8 C9 CA CB -These change to 0B 04 C0 C1 C2 C3 sometimes too.
- 0x8DB-0x8E0 Differences.
- 1:
- 2: 0B 04 00 01 02 03
- 3: 09 02 04 05 FF FF -04 and 05 are the left and right audio channels in the 0x1900XX region.
- Also, at 0x8F5, we find the two connections to 04 and 05, 91 and 81.
- It goes:
- 00 02 91 81.
- I'm guessing 00 means they're actual connections, no sample rate.
- Then, at 0x90F, we have:
- 0B 04 91 81 B1 A1
- Which corresponds to the outputs in the 0x19009X region,
- 0003C891
- 0003C981
- 0003CAB1
- 0003CBA1
- Also, their sample rate is 96khz, while the output sample rate is 48khz. Maybe
- these are their connections inside the card, which are then routed to 04 and 05,
- at the actual sample rate.
- The first byte is the sample rate. Changes when playing 44.1khz CD to 08, and
- back to 09 when 48khz audio being played.
- ----------------------------------------------------------
- 0xE42-0x1006ish
- Buffer of all verbs sent to the codec. Only verbs not seen are ones that request
- ChipIO info, such as F18.
- 0xE43 and 0xE44 seem to be the current verb pointer and the write to pointer.
- Commands start at 0xE46, and are 7 bytes long each.
- Format for verbs:
- Byte 0: Not Sure. Changes depending on what widget is addressed.
- Byte 1: Not sure. Changes depending on widget addressed.
- Byte 2: Widget ID.
- Byte 3-5: Verb, and verb value.
- Byte 6: Usually 0x00. No clue.
- ----------------------------------------------------------
- 0x1477-0x1575
- Counts through 0x00 to 0xFE. Occasionally, a value in here gets overwritten
- with an FF, and that value shows up somewhere else. It seems like it is for
- placeholders for some kind of ID's.
- After enabling stream 0x14, 0x148F goes from 0x18 to 0xFF. Seems to be taken
- for something. After doing the Audio Script, 0x24 goes to 0xFF, and 0x2A goes
- to 0xFF as well.
- ----------------------------------------------------------
- 0x1576-0x15C1
- These are like the above, except the opposite. They're FF, and then the FF's
- get removed and replaced with a value. These values don't correspond to the
- ones that are taken above.
- After enabling stream 0x14, 0x158C goes from 0xFF to 0x14. 0x15B1 goes from
- 0x23 to 0x17. After the Audio Script, 0x157D goes from FF to 24, 0x1584 goes
- from FF to 18, 0x15A2 goes from 25 to 29, and 0x15A9 goes from 1F to 23.
- ----------------------------------------------------------
- 0x16E9-0x16ED
- Lists the currently selected stream's StreamID, Source ConnID, Dest ConnID,
- number of channels, and then whether or not the stream is enabled/disabled.
- 5 bytes.
- ----------------------------------------------------------
- 0x16EE-0x16EF
- Lists the currently selected ConnPointID and it's sample rate.
- ----------------------------------------------------------
- 0x1A50-0x1A70
- ChipIO params end up here. 0x1A58 is the currently selected ParamID, 0x1A5B is
- current ChipIO data High, 0x1A5D is current ChipIO data low. 0x1A59 is the
- current CHIPIO_STREAM_FORMAT value.
- ----------------------------------------------------------
- 0x1B8Dish-0x1BAE
- These seem to be like the data this exists at 0x1900XX.
- Before stream 0x14 is enabled, it is like this:
- 1: 2F 02 02 01 02 00 02 00 0F 00 99 01 89 00 B9 01 A9 E4 C4 E5 C5 E8 C6 E9 C7 EA C8 EB C9 EC CA ED CB
- 2: 91 02 02 01 00 00 00 00 14 F8 00 F9 01 FA 02 FB 03 E4 C4 E5 C5 E8 C6 E9 C7 EA C8 EB C9 EC CA ED CB
- 3: 25 02 02 01 00 02 00 02 05 C8 91 C9 81 CA B1 CB A1 E4 C4 E5 C5 E8 C6 E9 C7 EA C8 EB C9 EC CA ED CB
- ----------------------------------------------------------
- 0x1EBF-1EC4 area
- When Stream 0x14 is enabled, 0x1EBF changes from 0x00 to 0x01, and 0x1EC4 changes
- from 0xFF to 0x00.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement