<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dolphin/docs/DSP/free_dsp_rom, branch master</title>
<subtitle>GameCube and Wii emulator</subtitle>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/'/>
<entry>
<title>dsp_rom: Add version numbers and hashes to VerifyRoms and readme</title>
<updated>2021-08-22T17:49:46+00:00</updated>
<author>
<name>Pokechu22</name>
<email>Pokechu022@gmail.com</email>
</author>
<published>2021-08-17T18:11:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=44129dda4c2b44473a47fc2b1a7bf71efda32c39'/>
<id>44129dda4c2b44473a47fc2b1a7bf71efda32c39</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>dsp_rom: Remove illegal use of AX with SRS</title>
<updated>2021-08-22T17:49:46+00:00</updated>
<author>
<name>Pokechu22</name>
<email>Pokechu022@gmail.com</email>
</author>
<published>2021-08-17T05:15:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=a5e2a0d97307ef146879a6f46a86d728a3ac2e97'/>
<id>a5e2a0d97307ef146879a6f46a86d728a3ac2e97</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>dsp_rom: add pseudo code and fix small accuracy issues</title>
<updated>2021-08-22T17:49:46+00:00</updated>
<author>
<name>Tillmann Karras</name>
<email>tilkax@gmail.com</email>
</author>
<published>2021-08-13T04:28:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=c881f4db22e963941bcaabcae9b1ce005e24c49c'/>
<id>c881f4db22e963941bcaabcae9b1ce005e24c49c</id>
<content type='text'>
Doesn't fix anything, hence not upstreaming this.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Doesn't fix anything, hence not upstreaming this.
</pre>
</div>
</content>
</entry>
<entry>
<title>dsp_rom: Fix readme eols and trailing whitespace</title>
<updated>2021-08-22T17:49:46+00:00</updated>
<author>
<name>Pokechu22</name>
<email>Pokechu022@gmail.com</email>
</author>
<published>2021-08-17T18:12:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=d0b40528e527dcdaaa254fd7b8c921ced61f916b'/>
<id>d0b40528e527dcdaaa254fd7b8c921ced61f916b</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>dsp_rom: skip bootucode_ax when running from entrypoint</title>
<updated>2017-08-10T17:53:12+00:00</updated>
<author>
<name>Michael M</name>
<email>mchtly@gmail.com</email>
</author>
<published>2017-08-10T17:42:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=fcb1eb9d3b45265c998f00f540bb2a0cb3c246b7'/>
<id>fcb1eb9d3b45265c998f00f540bb2a0cb3c246b7</id>
<content type='text'>
This could cause the first branch of the bootucode procedure, which
takes its parameters from the AX registers, to run during the ROM init
sequence. Since the ROM doesn't set any of the AX registers, the values
aren't meaningful, and can cause bad DMA transfers and crashes.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This could cause the first branch of the bootucode procedure, which
takes its parameters from the AX registers, to run during the ROM init
sequence. Since the ROM doesn't set any of the AX registers, the values
aren't meaningful, and can cause bad DMA transfers and crashes.
</pre>
</div>
</content>
</entry>
<entry>
<title>Update free DSP ROM and coefficients to support GBA ucode</title>
<updated>2017-06-03T22:16:39+00:00</updated>
<author>
<name>Michael Maltese</name>
<email>michaeljosephmaltese@gmail.com</email>
</author>
<published>2017-06-03T21:45:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=e3531d17d700339828d7bab192c66fba5fcbac86'/>
<id>e3531d17d700339828d7bab192c66fba5fcbac86</id>
<content type='text'>
- coef: Explicitly set 23 different values that are used by GBA UCode,
  and tweaked overall parameters to more closely match those 23 values.
- irom: Moved a few functions to their proper places, updated BootUCode
  to configure DMA transfers using AX registers as well as IX registers
  (the GBA UCode uses this to do two sequential transfers in one call),
  and added partial functions used by GBA UCode.

All functions were reverse-engineered solely based off of observed
effects on the virtual machine: register states before-and-after, dmem
interactions, and DMA transfers. The specific coefficients were observed
being read from dmem, and must be exactly those values to function
properly. I have no knowledge of how the official ROM implements these
functions, or how it is implemented overall.

Tested with The Legend of Zelda: Four Swords Adventures, Final Fantasy
Crystal Chronicles, and Billy Hatcher and the Giant Egg (to download
ChuChu Rocket!).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- coef: Explicitly set 23 different values that are used by GBA UCode,
  and tweaked overall parameters to more closely match those 23 values.
- irom: Moved a few functions to their proper places, updated BootUCode
  to configure DMA transfers using AX registers as well as IX registers
  (the GBA UCode uses this to do two sequential transfers in one call),
  and added partial functions used by GBA UCode.

All functions were reverse-engineered solely based off of observed
effects on the virtual machine: register states before-and-after, dmem
interactions, and DMA transfers. The specific coefficients were observed
being read from dmem, and must be exactly those values to function
properly. I have no knowledge of how the official ROM implements these
functions, or how it is implemented overall.

Tested with The Legend of Zelda: Four Swords Adventures, Final Fantasy
Crystal Chronicles, and Billy Hatcher and the Giant Egg (to download
ChuChu Rocket!).
</pre>
</div>
</content>
</entry>
<entry>
<title>Add sample logs for GBA ucode register state/HW interactions</title>
<updated>2017-06-03T22:16:39+00:00</updated>
<author>
<name>Michael Maltese</name>
<email>michaeljosephmaltese@gmail.com</email>
</author>
<published>2017-06-03T21:38:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=3872437eacdfafc2de36b2bcc191adce481acfc1'/>
<id>3872437eacdfafc2de36b2bcc191adce481acfc1</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>generate_coefs: separate type conversion and packing</title>
<updated>2017-06-03T22:16:38+00:00</updated>
<author>
<name>Michael Maltese</name>
<email>michaeljosephmaltese@gmail.com</email>
</author>
<published>2017-06-02T23:20:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=7e869070e31cf6182de4495163242c049e9712c7'/>
<id>7e869070e31cf6182de4495163242c049e9712c7</id>
<content type='text'>
This makes it easier to apply patches to the resulting binary before
writing it to a file.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This makes it easier to apply patches to the resulting binary before
writing it to a file.
</pre>
</div>
</content>
</entry>
<entry>
<title>dsp_rom.ds: use org directive to pad out to correct size</title>
<updated>2017-05-20T02:53:38+00:00</updated>
<author>
<name>Michael Maltese</name>
<email>michaeljosephmaltese@gmail.com</email>
</author>
<published>2017-05-19T23:14:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=a182c7f2a542df9487d6aad781a5e66fb8fb3880'/>
<id>a182c7f2a542df9487d6aad781a5e66fb8fb3880</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>dsp_rom.ds: use org directive instead of nops</title>
<updated>2017-05-20T02:53:38+00:00</updated>
<author>
<name>Michael Maltese</name>
<email>michaeljosephmaltese@gmail.com</email>
</author>
<published>2017-05-19T23:13:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=8905b363cfcb1736b1a156510019529ee23295ec'/>
<id>8905b363cfcb1736b1a156510019529ee23295ec</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
