Sunday, April 16, 2017

Super Turrican MSU 0.4 + Super Turrican Soundfix 0.1 released

As Super Turrican MSU 0.3 kinda lead to confusion for a few people and I've stumbled onto some other stuff I decided to release a new version.

Changes for v0.4:
  • Assumed to fix Soundglitch (Removed 16 bit writes to $2140, further tests needed)
  • Fix swapped music of stages 1-2 and 1-3
  • Replaced IPS by BPS and more cleaned up package
  • Moved volume boosted sd2snes version for revision F and older into subfolder.
    As I no longer possess a revision F sd2snes active support for this revision is kinda sorta dropped as testing is not possible for me any more.
Download Super Turrican MSU 0.4

Also the Super Turrican Soundfix proposal needs further test data.
The patch is now also available for the NTSC version of the game.

Download Super Turrican Soundfix 0.1

Known bugs
During my testing it kinda happened again once. So the sound fix sadly doesn't work. My guess is that this never will be fixed which is quite sad. If enough people provide testimony for this modification to not help at all, I will make a version 0.5 which removes this hack as it might lead to unwanted side effects.

Please keep in mind that I'm growing more and more tired of testing this game with a full playthrough every time I update this. Especially now with 6 different ROM files resulting from both these hacks.
This is why I cannot guarantee proper function.
If this package deals damage to your hardware I'm not responsible for it.
If you encounter any bugs or uncertainty please use this blog to contact me.

Wednesday, March 15, 2017

Super Turrican Soundfix proposal

It seems not a lot gamers have played Super Turrican. This is my assumption and it has to be true as not much information is available on a significant bug this game has.

While playing the game more frequenty on the sd2snes to do the MSU hack I ran into issues sometimes. The sound glitched up. I was pretty certain that this was not caused by my hack as I had the same issue very rarely with my original PAL cartridge and blamed it for this. There is actually a video on YouTube showing off how it could sound like. Please turn down the volume as headphone user :3

There also do exists some discussion on that topic on some forums:

Let sum this up here:

  • It happens on the NTSC and the PAL version. (I've tested this)
  • It never appeared to me on higan while developing my MSU Hack.
  • It is caused by a soundeffect and not music. (As my hack doesn't have music on levels)
  • The glitch only happens on 1chip SNES hardware. (Assumed)
  • Chances for this bug to happen are quite low. It's possible to make a complete run of the game without having issues at all.

Also there do exists a theory that the blue laser makes this happen more frequently. I can not approve that as it happend to me with the spread shot once too.

It's a mystery why this was unnoticed so long as the game has aged for quite a while and it seems to be unnoticed until 2010.

I never really intented to try to solve this issue as I can't debug it with an emulator. But a few weeks ago I've read this article.
It says:
Hardware Quirk! When writing in 16-bit values to 2140 / 2141, a noise pulse (or some technical thingy) may write data to 2143 too! Always write to 2140 / 2141 with 8-bit writes if this is undesired.

So that's some interesting stuff to look into.
I've modded higan for that purpose to detect 16 bit writes to 2140. As it turns out games like Super Turrican 2 and Super Bomberman 4 didn't have these while Super Turrican uses these writes for loading SPC data between the levels.

I've removed these instructions and replaced them by subroutines which write these values as separated bytes. I did one playthrough and no bug happend yet.

What I now really need are players that love to play Super Turrican and willing to test this patch to give me some test statistics.

Here is the download link for the PAL versions patch.
Apply using flips or some other patch tool.

Please keep it mind that this is ONLY a soundfix patch. No MSU hack is applied here. I will update the MSU version of my hack with this fix when I've finished resolving issues with sd2snes revision differences on volume levels.

The NTSC version will follow if we are able to proove that the fix is actually working.

Here the md5sums for checking:
90c9fe8386a7f69de475c58bb8de01f7  Super Turrican (Europe).sfc
d17a07bd58bf295fe09ff6d88f7d0151  SuperTurricanSoundFix_PAL.bps
5d214342d2eb3beae115471e4dbc1a6e  SuperTurricanSoundFix_PAL.sfc

Wednesday, October 5, 2016

Compiling higan v101 under Debian Stretch

While writing Super Turrican MSU i used a modded version of higan v094 back then. byuu was not sleeping and i'm pretty sure he doesn't uses Debian as higan v101 can't be compiled out of the box.  Change the following line of GNUmakefile.

flags += -I. -I.. -O3
flags += -I. -I.. -O3 -I/usr/include/gtk-2.0/ -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include/ -I/usr/include/pango-1.0/ -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/atk-1.0/

higan should now compile but still not runnable as the manifest.bml is missing.

run make install once as a normal user. your home directory is set up.

Tuesday, October 4, 2016

Super Turrican MSU v0.3 now with NTSC support

Some people asked for the US NTSC version of Super Turrican MSU...

You people are crazy!
The game was made in germany. It has to be played in 50 Hz! D:
Factor 5 did a bad job on having both versions consistent in manner of speed. It almost feels like the only difference between them is that the US version has the SEIKA logo.
This is why i conclude here that the US version is a little bit more difficult but also more fast paced if you like that. On my TV set the 60 Hz video signal is more crisp but this is not the version i've grown up with...
I'll stick to PAL.

Anyway, you asked for it:

Download Super Turrican MSU v0.3

I will remove v0.2 in a few days or weeks from Dropbox as it won't be needed anymore. Version 0.3 contains the PAL version as well so don't bother loading the old one.

I only play tested the NTSC port once. I had to rewrite some of the code to get it right. The program code of Super Turrican is compressed on the cart. But hacking compressed code in an algorithm i don't know is tedious. I had to work around this time making the NTSC version behave different.
Especially the title screen is buggy as the cursor won't show up by itself. But apart from that the US version is fully playable and hasn't shown signs of failure during my playthrough.....

Please keep in mind that even the original version of Super Turrican can crash on 1chip SNES models and i'm not able to debug that. The SPC is prone to hang himself in this game.

Turrican Soundtrack Anthology:
The music in this game is an altered version of the Turrican Soundtrack Anthology made by Chris Hülsbeck. If you like the Soundtrack you can buy it from his bandcamp site in lossless FLAC and MP3. There are 4 albums to get, containing not only the arranged Soundtrack for Super Turrican but also for the other games as well. If you are confused by the sheer amounts of music Chris has made there is also website especially for the Turrican Soundtrack albums.

Saturday, October 1, 2016

Super Turrican MSU V0.2 released!

>>>Update: Go check out this post for Version 0.3.

I'm happy to announce that my Super Turrican MSU Hack will now be released. Chris Hülsbeck gave me permission to publish the soundtrack with the hack which was the crucial part in the end.
You can download the hack here.

Download Super Turrican MSU Hack

Keep in mind that you need a sd2snes or the emulator higan to run this hack! Currently only the PAL version is supported!
The package only contains the soundtrack for the MSU chip and an .ips patch file. You need to get the ROM by yourself.
You are only allowed to apply this patch if you are in possession of the original.
For this you need the .sfc file of your game. Either read it back from the cartdrige or ….. help yourself in other ways.

Download JIPS or another ips patcher to apply the patch. It's very important you got the right ROM. To be sure the correct file has the md5sum of 90c9fe8386a7f69de475c58bb8de01f7.
If you patched your .sfc file put it together with the rest of the files inside the package into a directory on your sd2snes.

The package contains a README.txt which will explain the process in more detail.

That's all!

The music in this game is an altered version of the Turrican Soundtrack Anthology made by Chris Hülsbeck. If you like the Soundtrack you can buy it from his bandcamp site in lossless FLAC and MP3. There are 4 albums to get, containing not only the arranged Soundtrack for Super Turrican but also for the other games as well.

---> Very important note <---
The game has one major bug which was kinda amplified with my hack (at least i feel so). The usage of the blue laser weapon can lead to a hickup of the SPC on some SNES devices. If this happens you can hear a strange and loud noise that sounds like "frfrfrfr". At this point the game still runs but you are unable to get to the next level as the main CPU is not capable of talking to the SPC anymore.
Even a reset of the SNES doesn't restore a healthy state sometimes.
You need to cut the power of your SNES for seconds to make it runnable again.
I'm not yet sure how this happens and it kinda flaws the whole hack. The only bright side is that this flaw is actually part of the original game.

Please help me investigate. Test the game and report issues. This flaw never happened to me on the emulator higan i used to develop the hack which is a major fallback. I'm not capable of debug this issue at this state. Just try to stay away from the blue laser.

Sadly enough it's also possible to get this problem in more rare occassions with other weapons as well. I could only assume that the soundeffect playback routine has a bug that i still don't understand.

Now as it turns out this happens only on 1chip SNES and newer revisions. I will investigate!

Sunday, September 18, 2016

Super Turrican - MSU Hack

Last year i got myself a sd2snes flash card and soon figured out that there is a feature called MSU. It's a soundchip which is capable of playing raw wave files from an sd card just by writing in a register which song number to play.

Now we have a wide variety of MSU patches available which make games like Mega Man X and Super Mario World use it to play their background music.
It's kinda something the Mega Drive got with the MegaCD but with sd cards instead.

Last year after meeting Chris Hülsbeck, i thought.... Super Turrican really is in need for a MSU hack but there wasn't any.
I've read about higane which is an emulator capable of simulating the MSU (or invented it in the first place???) and got the source code of it.
Using the integrated tracer and a few mods i've disassembled the functions of Super Turrican in charge for SPC control and replaced them with my own. Luckily there was enough space left on the ROM to place them.

Now whenever the game says "play song X" i analyze this call using a table and in case there is a wave file for that song on the sd card it is played. Otherwise the original process continues and the song is played using the SPC.

Some gameplay footage can be found on YouTube.

I really like to publish the whole package here.... stay tuned.

Sunday, September 4, 2016

I love / hate the Amiga 1200

If i would try to name a system from my collection which wasted the most of my life time AND money with hassle it would be the Amiga 1200.

It don't even remember when i bought my first Amiga 1200. I guess it was 2010 - 2011. But i do remember it was one of the late revision 1D4 motherboards with pc floppy drives... urgh. This thing couldn't even load usual amiga software as the floppy didn't have a RDY signal.

I didn't knew that when buying but i didn't even care as soon as i knew. This Amiga 1200 was intended for hard drive operation. Soon after getting the system i got myself a compact flash adapter with a 4GB card and the "ACA1230" turbo card from individual computers.
The collection was after a while completed with an "EtherLink III" PCMCIA card for file transfer over an FTP server running on the Amiga.

Anyway. This particular ASSHOLE of an Amiga had an issue with it's Bustiming. As soon as the ACA1230 was inserted and running the system started to glitch up after 5 minutes or so. I've talked to the designer of the ACA1230 but even with tipps i was just unable to fix this thing. After experimenting with different capacitor setups to fix the clock i bought another one.
This time it was a standard Commodore A1200 again with revision 1D4. It worked like a charm. I didn't had to fix anything. The ACA1230 was running and i was happy. But there was one litte problem from the start. Crossdos which is the driver to mount MSDOS formatted floppy drives never worked on this machine. The floppy started spinning and never stopped. I thought "well, let it be. I have a LAN card".

Another thing which bothered me were digital sound glitches. At this day i was pretty sure that Paula, the custom chip responsible for floppy reading and writing and sound output might have some issues. Especially on the game Z-Out...

This day on 30th August it happened. I turned the machine on and *sssshshshshshs*. It was a sound of a transistor burning to hell or at least i thought. I opened it and there was ... nothing. I turned it on again and the machine booted. Workbench appeared but there was something missing. No floppy was read and no sound. Oh god, Paula finally died.

So i bought myself a replacement from old-stock and a plcc 52 socket and finally some capacitor replacements which is recommended for old SMD Amigas. I desoldered Paula using a temperature controlled heat gun and fitted the new replacement chip. Sound was working again but no floppy whatsover. As it turned out the Amiga didn't make the burning sound itself. It had to be the floppy drive as a replacement fixed the issue. Floppy reading worked again but was kinda flawed. The whole system was very unstable and crashed very often or didn't even considered to boot kickstart.

I gave up again.... and bought another one.
After these years prices for Amiga 1200 units exploded. I bought my first two for 130€ each.
Now i got one with replaced capacitors without power supply and a housing that was very dirty for 270€. It even had Kickstart 3.0.

So i took all parts and made one system out of the best of all 3.
The machine booted... Yes :-)
ACA1230 in. The machine booted..... Yeees !! :-D
I started the WHDload version of Apidya and played. 5 minutes into the game crashed..... FUUUUUUUU  D:

As it turned out the new board had timing issues as well. Even though it was a revision 1D1 which i read was about one of the best. So i followed the suggestions made on this site here. As it turned out ACA1230 needs a fix on every FU**ING revision. Jens Schönfeld, what have you done? D:
So i placed 22pf on E121C and E122C and it .... seems to work.
I played Apidya for quite some minutes. Maybe an hour or so. Even at world 4 the system was running stable.

Is this it? Do i finally possess a stable A1200 ?

On thing can be said for sure. At the moment i can't trust any A1200 any more. I thought about buying the Indivision.. but i guess i will wait some time...
I never had these issues with my Amiga 500. But i never really upgraded that one. It had a slow mem expansion and thats it. Turbo cards seem to cause quite some issues and show how flawed the late models of Commodore were.

I've kinda lost faith which needs to be restored now. I now have a graveyard of Amiga 1200 hardware around. I feel bad for it. Maybe i can fix them somehow but it showed to be quite difficult.

I just wanted to talk this from my heart.