summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Graphic_Equalizer/src/smartmedia.hcc20
1 files changed, 9 insertions, 11 deletions
diff --git a/Graphic_Equalizer/src/smartmedia.hcc b/Graphic_Equalizer/src/smartmedia.hcc
index 9ef714d..da0388b 100644
--- a/Graphic_Equalizer/src/smartmedia.hcc
+++ b/Graphic_Equalizer/src/smartmedia.hcc
@@ -97,6 +97,7 @@ void smartmedia_loaddata(skindata_t *skindata) {
* Before we enter our loop to fill our memory with valid data, we have
* to set the startup positions for the SmartMedia.
*/
+ address=0;
address_offset = 0;
smartmedia_address = 0;
smartmedia_address_mask = SMARTMEDIA_ADDRESS_PRESET_DEMO_START;
@@ -160,16 +161,10 @@ void smartmedia_loaddata(skindata_t *skindata) {
print_string(" ADDRESS_ABOUT_TOP_TASS_START");print_eol();
#endif
address = 0;
- address_offset = ADDRESS_ABOUT_TOP_FONTYS_START;
- smartmedia_address = SMARTMEDIA_ADDRESS_TOP_FONTYS_START;
- smartmedia_address_mask = SMARTMEDIA_ADDRESS_TOPMASK_START;
- stage = STAGE_LOAD_TOP_FONTYS;
- /*
address_offset = ADDRESS_ABOUT_TOP_TASS_START;
smartmedia_address = SMARTMEDIA_ADDRESS_TOP_TASS_START;
smartmedia_address_mask = SMARTMEDIA_ADDRESS_TOPMASK_START;
stage = STAGE_LOAD_TOP_TASS;
- */
break;
case ADDRESS_ABOUT_TOP_TRANSFER_START:
#if HAVE_DEBUG
@@ -219,8 +214,9 @@ void smartmedia_loaddata(skindata_t *skindata) {
* Before reading our data from the smartmedia we set our
* address pointer to the address from our loop.
*/
+
#if HAVE_SMARTMEDIA
- PalPL2RAMSetWriteAddress(RAM_BANK0, (STAGE_LOAD_GRAPH == stage) ? (address_offset +(0 @ (address \\ 2))) : (address_offset +address)); //(STAGE_LOAD_PRESET == stage) ? (address_offset +(0 @ (address \\ 2))) :
+ PalPL2RAMSetWriteAddress(RAM_BANK0, address_offset +address); //(STAGE_LOAD_GRAPH == stage) ? (address_offset +(0 @ (address \\ 2))) :
#else
PalPL2RAMSetWriteAddress(RAM_BANK0, 0);
#endif
@@ -237,6 +233,11 @@ void smartmedia_loaddata(skindata_t *skindata) {
* stop reading after each byte with OperationEnd call. This is
* VERY slow and must be changed.
*/
+
+ RC200SmartMediaSetAddress(READ, smartmedia_address_mask);
+ RC200SmartMediaRead(&mask, TRUE);
+ RC200SmartMediaOperationEnd(&result);
+
if ((STAGE_LOAD_PRESET != stage) && (STAGE_LOAD_GRAPH != stage)) {
RC200SmartMediaSetAddress(READ, smartmedia_address);
RC200SmartMediaRead(&r, TRUE);
@@ -261,9 +262,6 @@ void smartmedia_loaddata(skindata_t *skindata) {
RC200SmartMediaOperationEnd(&result);
}
- RC200SmartMediaSetAddress(READ, smartmedia_address_mask);
- RC200SmartMediaRead(&mask, TRUE);
- RC200SmartMediaOperationEnd(&result);
switch (stage) {
case STAGE_LOAD_PRESET:
@@ -312,10 +310,10 @@ void smartmedia_loaddata(skindata_t *skindata) {
/*
* Finally increase al our indexes approperiatly.
*/
- smartmedia_address += 3;
if (STAGE_LOAD_GRAPH == stage) {
smartmedia_address_mask += 4;
} else {
+ smartmedia_address += 3;
smartmedia_address_mask++;
}
address++;