diff --git a/src/engine/fileOps/it.cpp b/src/engine/fileOps/it.cpp index 86c526b86..7b6330c8e 100644 --- a/src/engine/fileOps/it.cpp +++ b/src/engine/fileOps/it.cpp @@ -1408,6 +1408,10 @@ bool DivEngine::loadIT(unsigned char* file, size_t len) { break; case 'S': // special... switch (effectVal[chan]>>4) { + case 0x8: + p->data[readRow][effectCol[chan]++]=0x80; + p->data[readRow][effectCol[chan]++]=(effectVal[chan]&15)<<4; + break; case 0xc: p->data[readRow][effectCol[chan]++]=0xec; p->data[readRow][effectCol[chan]++]=effectVal[chan]&15; @@ -1510,6 +1514,7 @@ bool DivEngine::loadIT(unsigned char* file, size_t len) { } } ds.systemLen=(maxChan+32)>>5; + ds.systemName="PC"; // find subsongs ds.findSubSongs(maxChan); diff --git a/src/engine/fileOps/s3m.cpp b/src/engine/fileOps/s3m.cpp index f30e6c89b..d13c1c7c2 100644 --- a/src/engine/fileOps/s3m.cpp +++ b/src/engine/fileOps/s3m.cpp @@ -1075,6 +1075,10 @@ bool DivEngine::loadS3M(unsigned char* file, size_t len) { break; case 'S': // special... switch (effectVal>>4) { + case 0x8: + p->data[readRow][effectCol[chan]++]=0x80; + p->data[readRow][effectCol[chan]++]=(effectVal&15)<<4; + break; case 0xc: p->data[readRow][effectCol[chan]++]=0xec; p->data[readRow][effectCol[chan]++]=effectVal&15;