Main Menu
Main Page
Forums
New pages
Recent changes
Random page
Help

Glitches
Arbitrary code execution
Pokémon cloning
Pomeg glitch and Glitzer Popping
Tweaking and voiding
Glitches by generation
Glitch categories

References/Resources
Databases
Disassembly projects
The Big HEX List
Pokémon cheat codes
Pokémon glitch terminology
Useful tools
More

Affiliates
Legendary Star Blob 2 (Hakuda) (日本語/Japanese)
Pokémon Speedruns wiki (English)
PRAMA Initiative (Français/French)
MissingNo. Glitch City (Italiano/Italian)
Become an affiliate!

Technical
Site source code

Search Wiki

 

Search Forums

 

Author Topic: Official 1st Gen (Red/Blue and Yellow) Glitch Discussion  (Read 113759 times)

0 Members and 1 Guest are viewing this topic.

ISSOtm

  • The French Lord of Laziness (and a huge The Legend Of Zelda fan)
  • Staff
  • *****
  • Offline Offline
  • Gender: Male
  • Pewter City (B)rocks !
    • View Profile
    • My Little Website
Re: Official 1st Gen (Red/Blue and Yellow) Glitch Discussion
« Reply #450 on: September 27, 2018, 09:52:10 am »
Again, the corruption flips flags outside of their intended use. Simply enough, the corruption sets the flag that tells the game that it's linked, and that flag being set causes the game to load Red's sprite.
"THOU SHALL NOT PASS !!"  RIVAL's effect, Gandalf.

Proudly glitching Pokémon Red and Yellow on a Black & White GB, Pocket GB, GB Color, GBA SP and new 3DS.

My Twitter (beware, I'm French)
My YouTube (same warning)

Here is an online tool to build 8F setups : GBz80 to Items !

They see me layzin', they ha-tin'...
Heavy contributor of the global augmentation of entropy (my room's is too damn high !)

GlitchedPokemonStudent

  • GCLF Member
  • Offline Offline
  • Gender: Male
  • Wild Homework appeared!
    • View Profile
Re: Official 1st Gen (Red/Blue and Yellow) Glitch Discussion
« Reply #451 on: September 27, 2018, 04:34:37 pm »
Again, the corruption flips flags outside of their intended use. Simply enough, the corruption sets the flag that tells the game that it's linked, and that flag being set causes the game to load Red's sprite.

How do you manually set that up?

GlitchedPokemonStudent

  • GCLF Member
  • Offline Offline
  • Gender: Male
  • Wild Homework appeared!
    • View Profile
Re: Official 1st Gen (Red/Blue and Yellow) Glitch Discussion
« Reply #452 on: September 27, 2018, 07:21:37 pm »
By the way, I first saw this video a few years ago. https://www.youtube.com/watch?v=eTuIocHmGVM

He's the only who has received this strange phenomenon. Looks like a low-pitched variant of that unstable Missingno. by doing the Up+Select+B beforehand.

However, when he proceeded and sent Snorlax, the game freaked out, opening the items menu, playing the HP beeping sound, and the game resets itself. This doesn't seem to replicate in Debug Yellow.

According to the couple videos I have seen from people using VisualBoyAdvance in the past, they got some different variant.
Here's an example: https://youtu.be/NOsQ1Y7XRdk?t=401

And there's another one where some "Let's Glitch" person actually caught Missingno. from that same effect that OldManMissingno reset over it and it nicknamed it Old Amber, but now, I can't seem to find that video anymore. I believe in the Super Glitch video that same person did got the PC text chaos filling up the screen before it crashes. Those videos were probably deleted.

« Last Edit: September 27, 2018, 07:24:49 pm by GlitchedPokemonStudent »

ISSOtm

  • The French Lord of Laziness (and a huge The Legend Of Zelda fan)
  • Staff
  • *****
  • Offline Offline
  • Gender: Male
  • Pewter City (B)rocks !
    • View Profile
    • My Little Website
Re: Official 1st Gen (Red/Blue and Yellow) Glitch Discussion
« Reply #453 on: September 28, 2018, 05:18:51 am »
Again, the corruption flips flags outside of their intended use. Simply enough, the corruption sets the flag that tells the game that it's linked, and that flag being set causes the game to load Red's sprite.

How do you manually set that up?
Just set bit 6 of D72E.
Code: [Select]
ld hl, $D72E
set 6, [hl]
"THOU SHALL NOT PASS !!"  RIVAL's effect, Gandalf.

Proudly glitching Pokémon Red and Yellow on a Black & White GB, Pocket GB, GB Color, GBA SP and new 3DS.

My Twitter (beware, I'm French)
My YouTube (same warning)

Here is an online tool to build 8F setups : GBz80 to Items !

They see me layzin', they ha-tin'...
Heavy contributor of the global augmentation of entropy (my room's is too damn high !)

GlitchedPokemonStudent

  • GCLF Member
  • Offline Offline
  • Gender: Male
  • Wild Homework appeared!
    • View Profile
Re: Official 1st Gen (Red/Blue and Yellow) Glitch Discussion
« Reply #454 on: September 29, 2018, 01:05:59 pm »
Just set bit 6 of D72E.
Code: [Select]
ld hl, $D72E
set 6, [hl]

Is this for Red/Blue or Yellow?

ISSOtm

  • The French Lord of Laziness (and a huge The Legend Of Zelda fan)
  • Staff
  • *****
  • Offline Offline
  • Gender: Male
  • Pewter City (B)rocks !
    • View Profile
    • My Little Website
Re: Official 1st Gen (Red/Blue and Yellow) Glitch Discussion
« Reply #455 on: September 30, 2018, 02:21:03 pm »
R/B
"THOU SHALL NOT PASS !!"  RIVAL's effect, Gandalf.

Proudly glitching Pokémon Red and Yellow on a Black & White GB, Pocket GB, GB Color, GBA SP and new 3DS.

My Twitter (beware, I'm French)
My YouTube (same warning)

Here is an online tool to build 8F setups : GBz80 to Items !

They see me layzin', they ha-tin'...
Heavy contributor of the global augmentation of entropy (my room's is too damn high !)

GlitchedPokemonStudent

  • GCLF Member
  • Offline Offline
  • Gender: Male
  • Wild Homework appeared!
    • View Profile
Re: Official 1st Gen (Red/Blue and Yellow) Glitch Discussion
« Reply #456 on: September 30, 2018, 03:47:31 pm »
R/B

Is there one for Yellow? Because that's the one I was looking for.

Sherkel

  • Ringsome on the aquaface
  • Administrator
  • *****
  • Offline Offline
  • Gender: Male
    • View Profile

Sticking to quality control and moderation until I sort some IRL matters out. I check in here almost daily and will answer questions, but not all of them.
I don't have a habit of keeping Discord open, so direct inquiries are preferred through here.

GlitchedPokemonStudent

  • GCLF Member
  • Offline Offline
  • Gender: Male
  • Wild Homework appeared!
    • View Profile
Re: Official 1st Gen (Red/Blue and Yellow) Glitch Discussion
« Reply #458 on: October 02, 2018, 06:20:45 pm »
Okay, it's either not working, or I am doing something wrong.

Inserting the code directly there gives me an Escape Rope animation and no front Red trainer sprite. When I insert the code from the one behind it, nothing happened and still no front Red trainer sprite. It's either that or DebugYellow just disagrees with me.

ISSOtm

  • The French Lord of Laziness (and a huge The Legend Of Zelda fan)
  • Staff
  • *****
  • Offline Offline
  • Gender: Male
  • Pewter City (B)rocks !
    • View Profile
    • My Little Website
Re: Official 1st Gen (Red/Blue and Yellow) Glitch Discussion
« Reply #459 on: October 04, 2018, 06:02:43 am »
Apparently it's the other link variable that controls the Trainer sprite. Set $D12B ($D12A in Yellow) to any non-zero value.

Source.
Also it's likely to cause other effects, maybe the battle getting stuck on "Waiting..!"
« Last Edit: October 04, 2018, 06:04:36 am by ISSOtm »
"THOU SHALL NOT PASS !!"  RIVAL's effect, Gandalf.

Proudly glitching Pokémon Red and Yellow on a Black & White GB, Pocket GB, GB Color, GBA SP and new 3DS.

My Twitter (beware, I'm French)
My YouTube (same warning)

Here is an online tool to build 8F setups : GBz80 to Items !

They see me layzin', they ha-tin'...
Heavy contributor of the global augmentation of entropy (my room's is too damn high !)

GlitchedPokemonStudent

  • GCLF Member
  • Offline Offline
  • Gender: Male
  • Wild Homework appeared!
    • View Profile
Re: Official 1st Gen (Red/Blue and Yellow) Glitch Discussion
« Reply #460 on: November 18, 2018, 08:53:09 pm »
I have some information I would like to share regarding Yellow Missingno. I also noticed the Debug Yellow's anticrasher doesn't seem to work for Missingno or it's because I'm using BGB instead of VBA for that ROM and seems to emulate it differently.

So, remember TheZZAZZGlitch made a video on how to make it so you can encounter Missingno. without crashing?

But what if there's an easier alternative, what about the ones that end up being put into sound banks $C0EF-$C0F0? I know it might not be possible to write into SRAM Bank 0 directly, but what specific part of SRAM Bank 0 inserts the values into $C0EF-$C0F0, because I can't seem to find those specific values in the different location from the debugger, even while the sprite is still loading. I think the real reason for the crashing is Missingno. is more than just unsafe values in SRAM Bank 0, but an unsafe invalid value being placed at the sound bank, but not all invalid values crash though, like FC for example and I did test that, and it mostly creates a monotone noise/s with the absence of its own cry if I freeze that value in and the game continues operating.

I wonder if most of the invalid values in the sound bank actually jumps into a bad location or opcode of memory in ROM or Echo RAM when it tries to produce Missingno's actual cry when the blackout effect disappears and where the sprite stops at the top-right corner of the screen, it's hard to describe it. But if it's possible to do it just by changing only one or two values that causes those invalid writes to $C0EF and $C0F0 without a super-complicated setup, I would like to see how it's done. Is that how crashes happen for front sprites in the first place. For back sprites, glitch music happens first, and when it ends, it plays the "send out Pokeball" sound, but in an unsafe value, which crashes as a result or it will instead softlock the game and the music once it ends.

This is only a request, but if it's possible to set that up, I would like to see a video about it since I currently have no idea how to do that.






ISSOtm

  • The French Lord of Laziness (and a huge The Legend Of Zelda fan)
  • Staff
  • *****
  • Offline Offline
  • Gender: Male
  • Pewter City (B)rocks !
    • View Profile
    • My Little Website
Re: Official 1st Gen (Red/Blue and Yellow) Glitch Discussion
« Reply #461 on: November 19, 2018, 02:24:51 am »
Debug Yellow's anti-crash only prevents rst opcodes from crashing, but invalid opcodes will still hang. VBA doesn't emulate them.

The crashes are caused by the sprite decompression process overflowing outside of SRAM bank 0, and when that writes invalid values to C0EF-C0F0, then the game crashes. This has been known for a long time.
As for manipulating the sprite to not crash, I can't tell because I don't know what the front sprite pointer is, but the general issue is that you'd need to manipulate the compressed data, which would require overwriting a very large chunk of memory that's probably used by the game for something else, so you'd be in fact causing a crash by your attempt to prevent them.
"THOU SHALL NOT PASS !!"  RIVAL's effect, Gandalf.

Proudly glitching Pokémon Red and Yellow on a Black & White GB, Pocket GB, GB Color, GBA SP and new 3DS.

My Twitter (beware, I'm French)
My YouTube (same warning)

Here is an online tool to build 8F setups : GBz80 to Items !

They see me layzin', they ha-tin'...
Heavy contributor of the global augmentation of entropy (my room's is too damn high !)

GlitchedPokemonStudent

  • GCLF Member
  • Offline Offline
  • Gender: Male
  • Wild Homework appeared!
    • View Profile
Re: Official 1st Gen (Red/Blue and Yellow) Glitch Discussion
« Reply #462 on: November 21, 2018, 06:05:56 pm »
Debug Yellow's anti-crash only prevents rst opcodes from crashing, but invalid opcodes will still hang. VBA doesn't emulate them.

The crashes are caused by the sprite decompression process overflowing outside of SRAM bank 0, and when that writes invalid values to C0EF-C0F0, then the game crashes. This has been known for a long time.
As for manipulating the sprite to not crash, I can't tell because I don't know what the front sprite pointer is, but the general issue is that you'd need to manipulate the compressed data, which would require overwriting a very large chunk of memory that's probably used by the game for something else, so you'd be in fact causing a crash by your attempt to prevent them.

I see. Alas, it seems there is no other workaround for that after all without Gameshark-ing it in or TheZZAZZGlitch's recipe for producing a non-crashing Missingno.

The front sprite pointer is at $0006, I got the information from Yellow's $C8 and $F9, since those two are basically Missingno. clones.

There's one thing I don't completely understand. Normally, when a Pokemon gets sent out, it's almost instantly, but sometimes, it takes 4 seconds, for example, the glitch Blastoise hybrids. Is it because the sprite size is just a tad bigger than the usual 6x6? But that doesn't really explain much because of Red/Blue's Pidgeotto glitch hybrid having a 6x6 size as well while still having longer load times. I also notice the longer the sprite loads, the thicker the shape is, and especially so, higher chance of corrupting the Hall Of Fame data. 10-11 seconds from what I noticed counting while it's loading is the maximum for the game to load the sprite without crashing or glitching, and the ones that have that tend to be most unstable, not counting 4 4, 4hi $ED or the Red/Blue's #205 and #211 family where their actual sprite dimensions is unstable no matter what size it's applied in their pointers or how long they load. If I remember correctly, there was a video that shown the Red/Blue's Missingno. writing the values one-by-one, but for SRAM Bank 0, it shows all the values at once while processing it, except at the last moment where the unstable sprite loads, and updates the new values every frame eventually slowly reaching to the $C0EF range if breakpoint for $C0EF is turned on. Does the one-by-one writes also show on DRAM, or is it only producing that from VRAM? And finally, how many values make up 1x or x1 size each? I can't seem to get the right calculation to go over $BFFF. I apologize if I may be asking too many questions.

ISSOtm

  • The French Lord of Laziness (and a huge The Legend Of Zelda fan)
  • Staff
  • *****
  • Offline Offline
  • Gender: Male
  • Pewter City (B)rocks !
    • View Profile
    • My Little Website
Re: Official 1st Gen (Red/Blue and Yellow) Glitch Discussion
« Reply #463 on: November 22, 2018, 03:54:28 am »
I can't understand that wall of text.
"THOU SHALL NOT PASS !!"  RIVAL's effect, Gandalf.

Proudly glitching Pokémon Red and Yellow on a Black & White GB, Pocket GB, GB Color, GBA SP and new 3DS.

My Twitter (beware, I'm French)
My YouTube (same warning)

Here is an online tool to build 8F setups : GBz80 to Items !

They see me layzin', they ha-tin'...
Heavy contributor of the global augmentation of entropy (my room's is too damn high !)

GlitchedPokemonStudent

  • GCLF Member
  • Offline Offline
  • Gender: Male
  • Wild Homework appeared!
    • View Profile
Re: Official 1st Gen (Red/Blue and Yellow) Glitch Discussion
« Reply #464 on: November 23, 2018, 01:46:39 pm »
I can't understand that wall of text.
Sorry, let me simplify my explanation.

For the thickness I was talking about, compare this,

to this.


So, does the actual sprite dimension size really depend on the thickness of the sprite or not?

For the one-by one writes, this video shows it through breakpoints.
https://www.youtube.com/watch?v=AzaeL6yDOyg

In terms of loading the sprites, 0x0 or 256x256 does it in consistent 10 seconds which makes sense, but some tend to vary from instantly to a few seconds, even though if it's not 0x0, I still wonder why that is. That's why I ask how many values does it write per second during compression because There has to be reason for that.