m = hashlib.md5() m.update(sid_data) m.update(struct.pack("<H", sid_header[HDR_INITADDRESS])) m.update(struct.pack("<H", sid_header[HDR_PLAYADDRESS])) m.update(struct.pack("<H", sid_header[HDR_SONGS])) for i in range(sid_header[HDR_SONGS]): if sid_header[HDR_SPEED] & (1<<i): m.update(chr(60)) else: m.update(chr(0))
m = hashlib.md5() m.update(sid_data[2:]) m.update(struct.pack("<H", sid_header[HDR_INITADDRESS])) m.update(struct.pack("<H", sid_header[HDR_PLAYADDRESS])) m.update(struct.pack("<H", sid_header[HDR_SONGS])) for i in range(sid_header[HDR_SONGS]): if sid_header[HDR_SPEED] & (1<<i): m.update(chr(60)) else: m.update(chr(0))
sid_header = unpack_header(data) sid_version = sid_header[HDR_VERSION] sid_data = data[sid_header[HDR_DATAOFFSET]:] m = hashlib.md5() m.update(sid_data[2:]) m.update(struct.pack("<H", sid_header[HDR_INITADDRESS])) m.update(struct.pack("<H", sid_header[HDR_PLAYADDRESS])) m.update(struct.pack("<H", sid_header[HDR_SONGS])) for i in range(sid_header[HDR_SONGS]): if sid_header[HDR_MAGIC] == "RSID": m.update(chr(60)) else: if sid_header[HDR_SPEED] & (1<<min(i, 31)): m.update(chr(60)) else: m.update(chr(0)) if sid_version == 2: if (sid_header[HDR_FLAGS] & 0x0c) == 0x08: m.update(chr(2))
/MUSICIANS/J/JCH/Tecnetium.sid {'COMM': 'I always get mixed feelings when I play this music. The title- tune is\nlong and I put a lot of work into it in april 1989, but today I can\nhear loads of harmonic errors here and there. The game was done for a\nsideways shoot\'em up which a couple of totally unknown danish guys was\nmaking. They soon lost all interest in their game, however. The\nhiscore theme was a conversion of the old Cliff Richard hit\n"Congratulations" done right out my head. I always wanted to make such\na hiscore tune, because I always thought Rob Hubbard did it all wrong\nwhen he made "sad" hiscore tunes. It is a sad thing when the game\nends, but getting a high score is supposed to be a GOOD thing! :)', 'TUNS': [{'LENG': 23330816, 'NAME': 'Title Screen'}, {'ARTI': 'Cliff Richard', 'LENG': 5963776, 'TITL': 'Congratulations'}, {'LENG': 262144}, {'LENG': 196608}, {'LENG': 2883584}, {'LENG': 65536, 'LOOP': 'G'}, {'LENG': 196608, 'LOOP': 'G'}, {'LENG': 65536, 'LOOP': 'G'}, {'LENG': 65536, 'LOOP': 'G'}, {'LENG': 65536, 'LOOP': 'G'}, {'LENG': 65536, 'LOOP': 'G'}, {'LENG': 65536, 'LOOP': 'G'}, {'LENG': 65536, 'LOOP': 'G'}, {'LENG': 65536, 'LOOP': 'G'}, {'LENG': 196608, 'LOOP': 'G'}, {'LENG': 131072, 'LOOP': 'G'}, {'LENG': 65536, 'LOOP': 'G'}, {'LENG': 65536, 'LOOP': 'G'}]}