Login
Back to forumReply to this topicGo to last reply

Posted By

Chicken
on 2007-08-05
07:48:35
 Screwed up charsets

While browsing through some old demos, I noticed that in [Yeah Demo] the charsets' "I" is corrupt (check the screen shot). This reminded me of wondering about several other programs I have seen that have some similar corrupted chars. Usually it's "I" and sometimes "K". I don't think that the charsets were "broken" to start with.
Has anyone else noticed this? Yeah... conspiracy theory wink I just don't believe in coincidences happy Maybe a packer/cruncher is to blame?

Posted By

Chicken
on 2007-08-05
07:56:22
 Re: Screwed up charsets

Edit...
Yeah Demo

I tried to find some other examples. I was so sure that one of the KRUK productions featured the same "error". Well, whenever I find it, I'll post it.

Posted By

Bionic
on 2007-08-05
12:53:16
 Re: Screwed up charsets

It is possible that the charset was placed at some position of the memory that gets screwed up during a reset. If the development was done using tedmon it usually has to survive several resets.

Just from memory, those places get messed up during reset:

- $7ffx ($7ffe?) memory bank number is written into this position when kernel initialized custom roms

- $3058-$305f - $28, ff is written into two bytes. I never figured out why. But this would correspons to a "K" in a charset that starts at $3000. Quite possible that also $304x gets messed up in a similar way ("I")

Posted By

IstvanV
on 2007-08-05
15:45:51
 Re: Screwed up charsets

$7FFF is always overwritten by the 3-plus-1 ROM on reset, by the instruction at $804A. The bytes at $304C and $304D in Yeah Demo - part of the "I" character - are corrupted as you described, but this does not seem to happen on every reset, and I do not know when it actually does.

Posted By

SVS
on 2007-08-06
04:48:54
 Re: Screwed up charsets

If I'm not wrong, it was me, time ago, who discovered the $3058 bug. It happens after a SCRATCH operation. I've searched for its reasons and I remember these points:

1) It does not appear regularly
2) If you perform a DIRECTORY after operation, it is very rare, or does not happen for sure.
3) With long deleted files it appears more often.

I think it is connected with drive operations, not with reset routine.

Posted By

Bionic
on 2007-08-06
16:36:07
 Re: Screwed up charsets

svs: I think everybody who did graphics programming found this bug. Its quite annoying to get extra pixels in your bitmap.

Not sure it is caused by scratch, because I hardly ever used that command, but did suffer from that error.

Posted By

Lavina
on 2007-08-07
04:11:37
 Re: Screwed up charsets

as far as I can remember the 28 FF bug is surely connected to drive operations.

I had it most of the times when the drive gives back error message. For example you try to load a bad filename, that does not exist on the disk inserted. Directory command also seems suspicious for me, but I'm not sure.

7FFF you get all the time "screwed up" as you press reset without holding RUN/STOP the same time.

Posted By

Bionic
on 2007-08-07
16:05:43
 Re: Screwed up charsets

I wonder how many programs got screwed up during development by this bug..

Posted By

Gaia
on 2007-08-07
17:30:40
 Re: Screwed up charsets

Godzilla for sure, there's actually a small "patch" on the middle left side of the title screen which was - as far as I can recall someone mentioning it - looks exactly like the 28 FF bug.

Posted By

Degauss
on 2007-08-07
17:58:00
 Re: Screwed up charsets

Is that 28 FF Bug some electric problem? Or is there code that writes these bytes?

Posted By

Bionic
on 2007-08-07
18:41:28
 Re: Screwed up charsets

Gaia: True, its even in the screenshot. Looks like the bug hit at two posititions even.

Dr.Death: I don't think it is electrical, since the address is too obscure.

Posted By

IstvanV
on 2007-08-07
18:53:49
 Re: Screwed up charsets

The 28 FF is probably written by the routine at CD57, which clears DS$. Perhaps the zeropage variables it uses (79-7B) can get messed up sometimes, and the bytes are written to a wrong location.

Posted By

Csabo
on 2007-08-07
21:14:15
 Re: Screwed up charsets

I remember that the rule of thumb was: "do >79 00 before saving to disk" (to avoid the $28 $FF bug). I also recall an old Hungarian demo, that had "Csókoltatom az FF28-at" or something like that (very roughly translated: $FF28 can kiss my ...)

Posted By

Bionic
on 2007-08-08
03:26:41
 Re: Screwed up charsets

So maybe we could fix the bug in the rom? happy After 23 years...

Posted By

Chicken
on 2007-08-17
06:12:14
 Re: Screwed up charsets

This demo Rise seems to have a corrupted "I" character, too. Since I don't have an emulator here it would be nice if some one could check if that charset is located at the suspected address.

Posted By

Chicken
on 2007-08-17
06:15:30
 Re: Screwed up charsets

Csabo...
Something that would be really cool: If the preview of the posting already includes those links I wouldn't have to double post all the time wink

Rise! maybe...

Posted By

Chicken
on 2009-03-17
18:03:30
 Re: Screwed up charsets

Diggin' up old threads :D I knew I brought this up before and I just came across...

Unreal (Animals)

Seems to suffer from the very same problem. Check the screen shot. There's a "space" between the two "items"... Very similar to the bug mentioned by Gaia in the Godzilla title screen. This would corresponded to "I" and "K" in a charset, too.

Also Haegar's part in Cracker's Demo 4 has a corrupted "I" char.

Something I wondered about... I did lots of resets while coding and never experienced this problem. I checked various programs at the suspicious locations. Maybe I was just lucky. However, I always used a 1551 and didn't have a 1541 until 1997 or so. Could it be that it only happens with drives connected to the serial port?

Can anyone reproduce this bug with just a 1551?

Posted By

Chicken
on 2009-09-30
17:53:16
 Re: Screwed up charsets

Another example illustrating the problem. It's even visible in the screen shot: Demo Designer

Posted By

SVS
on 2009-10-01
08:45:49
 Re: Screwed up charsets

>>Maybe I was just lucky. However, I always used a 1551 and didn't have a 1541 until 1997 or so. Could it be that it only happens with drives connected to the serial port?

No. Me too I used a 1551 but had to fight against the bug. If I remember well the problem appeared after performed (many) file delete operations.

Anyway there are 2 different locations where the $28 $FF overwrite.

Posted By

Chicken
on 2012-01-23
14:34:24
 Re: Screwed up charsets

Just for completeness' sake:

For Germans Only's intro screen has a messed up "I".

Edit on Sep29, 2010

Ocean I's bitmap shows the infamous bytes close to the left border.

Edit on Jan23, 2012

Another one which just illustrates how "popular" this bug is ;)
Starpost's screenshot shows the messed up character (check out the "I"). Since this is a type-in game, could anyone check if the bug is already there "on paper". Maybe it was introduced afterwards by someone copying the game.



Back to topReply to this topic


Copyright © Plus/4 World Team, 2001-2024