Login
Back to forumReply to this topicGo to last reply

Posted By

bubis
on 2019-08-26
07:16:08
 TED Hacks

Hi Guys,

I have uploaded the HSP code to GitHub: http://github.com/dotscha/TED-Hacks
Some other routines might follow.

I have also uploaded the best TED doc I have what is actually a PDF compiled by Litwr, original files by Crown.

Mad, if you have an improved version of the HSP routine, like one that supports $FF06 scrolling too, please share.

Posted By

Mad
on 2019-08-26
08:06:05
 Re: TED Hacks

bubis awesome!! I just did some hiding of around 4 scanlines by $ff07 black pixels trick and some $ff1e checks for timing.. I will send you the code in the evening, perhaps you can look at it first.. Hope thats ok? Cool that you named it HSP, I always did call it that way! :)

Posted By

Luca
on 2019-08-26
08:35:17
 Re: TED Hacks

Anything including a file named "ass.bat" should be at 1st place of our personal most wanted lists! grin Very well done!

Posted By

Hendriks
on 2019-08-26
09:57:01
 Re: TED Hacks

Thanks, I will be studying this code in detail.

Posted By

Luca
on 2019-08-26
11:33:35
 Re: TED Hacks

I've just alerted TCFS about this, thinking about Lemmings of course...

Posted By

bubis
on 2019-08-27
05:21:21
 Re: TED Hacks

Luca, you are the man of faith! happy

Hendriks, I hope something can be learned from it.



Actually, I was wrong when I said before that this is the merging of two routines. This was four routines for 1-3, 4-36, 37-38, 39 respectively but I managed to merge the first three by merging their helper tables. This can be still noticed by inspecting the tables at the end of the souce code.

Posted By

Lavina
on 2019-08-27
06:34:38
 Re: TED Hacks

Dark Magic at its best.

Posted By

Luca
on 2019-08-27
10:23:29
 Re: TED Hacks

The $FF1E analysys is awesome! This explains why sometimes you try to jump over $CC on $FF1D as first step in order to extend the vertical border and the colors go grayscale or weirdo! and this also should help me in defeating those horrible badlines from my odl attempt for a real vertical twister.

Posted By

bubis
on 2019-08-27
10:58:51
 Re: TED Hacks

Avoiding badlines is easy. If yshift is the lower 3 bits of $FF06, you get badlines at raster lines
yshift, yshift+1
yshift+8, yshift+9
yshift+16, yshift+17
...
until the bottom of the visible window.

To avoid badlines you either have to amend $FF06 or $FF1D, so that you never run on a rasterline where a badline should happen.
If you update $FF1D, you should avoid changing the lowest bit, otherwise you screw the PAL signal.
Also, if you update $FF1D you have to make sure you restore it's normal value after all the manipulations, otherwise you will not have a standard 312 lines screen.

Posted By

Luca
on 2019-08-27
11:04:49
 Re: TED Hacks

Yes, I know the theory behind avoiding badlines; in this particular subject, some additional timing would be needed 'coz it doesn't work by alone, and that's where my $FF1E related post comes from grin

Posted By

bubis
on 2019-08-27
11:48:24
 Re: TED Hacks

If you mean stabilizing your code, so that at some point it always has a fixed $FF1D/$FF1E value, yes, you can find examples for that in this code. wink

Also, you can look here in the dfliconv2 sources for simmilar interrupt handler that starts by stabilization:

https://github.com/dotscha/dfliconv2/blob/master/src/viewer/dfli.asm (lines 51-61)

Posted By

Luca
on 2019-08-27
12:02:17
 Re: TED Hacks

Thanks, gonna do it, also because I have to afford two subjects: the zoom4 field starting from a simple plasma, and that twister.

But first of all, must face against TEDzakker, unregarding the fact that now the Knaecketraecker code works clean, after the fixing by nojee.

Posted By

bubis
on 2019-08-28
09:03:41
 Re: TED Hacks

What has nojeee fixed exactly?

Posted By

Luca
on 2019-08-28
11:22:29
 Re: TED Hacks

Oops, Did I say nojeee? I would mean: Doug.

bubis, still nowadays the Knaecketraecker represents the most approachable and comfortable way to compose TEDmusic. Nonetheless, the KnaeckePlayer itself is quite a wasteful way to have some TED tunes, it has been made to compose demo tunes in a very personal environment and never really optimized, hence it does not have the ductility of the modular LODplayer or the selection between differently heavy players of TEDzakker.
The worst point is that a bug prevents it to be restarted in a clean way (it has been thought for demos, who'd ever need it to be restarted?), and that's the reason why in the Bauknecht's games (say: Pets Rescue), there's a little reload when you loose a life and the level restarts: it reloads the whole music file.

Doug has fixed this bug and recompiled the whole stuff, adding features about the SFX too, and about master volume/fadein/fadeout.

Since veeeeery long time, I've finished my "remix" of a Csabo's game, it only misses a music; once I've understood the bug in Knaecketraecker, which would have been my first choice, I decided to learn to compose with TEDzakker, also because I was quite intrigued by some of its features...but I've never find the push to do that...in years, now!
Hence, now that Knaecketraecker has come back to fully work as option, I'm torn, having to choose one of the two ways, hahahaha! grin

Posted By

Mad
on 2019-08-28
15:09:38
 Re: TED Hacks

bubis we did reload the whole player routines at every restart of the music. There is some selfmodifying code involved which has to be reset when starting a new song, especially if it's somewhere else in memory.. Now Doug fixed all this and Luca finally can use the player without these reloads! happy



Back to topReply to this topic


Copyright © Plus/4 World Team, 2001-2024