Gooday Poly fans, I managed to spend another few hours pouring over the EX800 assembler code and discovered a fundamental error in my interpretation of one variable. That single mistake had then led me to make multiple errors in the interpretation of other parts of the code which then led on to further errors and so on. While decoding the MIDI code that carries out a program change, I incorrectly interpreted a check against a variable as being the program change enable disable flag (parameter 87). But it turns out that the variable was in fact the flag that determines whether the EX800 display is in program or parameter set mode. The ramifications of that little mistake spilled into my interpretation of a great deal of the code that handles all of the keypad and buttons and display of information etc. So after correcting that mistake, I've been able to make a great deal of progress interpreting the keypad, buttons and display code. Also, I've been looking at the multiplexing part of the code where the various sound control chips are controlled. I've slowly been picking away at it and it's been tough going because this part of the software has the least connection to external inputs (such as the MIDI or keyboard input). To put it another way, the code is very mathematical in nature using many memory variables the use of which is still unknown. For example, one part of the multiplexing code is set up just to provide a toggling mechanism that allows the display to flash two horizontal bars when doing a patch copy. Who would have thought that inside of all of the EG's and VCF controls etc there would be a little section of code just set up for flashing those silly horizontal bars when doing a patch copy. And another section of the code handles recalculating the VCF cutoff according to the trigger parameter (para 46) after a new key is hit. The most interesting question on my mind right at the moment is: What is the mathematics used to operate the EG's? If I can get a good answer to that question soon then I am hoping to be able to answer the next really important question which is: Does the CPU have enough spare cycles left to operate a fourth EG? Because if it does have enough CPU cycles left for that then we'll be able to use that fourth EG to control maybe noise level, resonance, or even MG depth. And that would be a great new feature. I wish I had more to report but that's about it for now. This email is more of a note to let you know that I am still plugging away at this dang thing. Mike H.
Message
Another little update
2007-07-02 by korgpolyex800
Attachments
- No local attachments were found for this message.