Basic Questions and Answers Thread

Discussion in 'Discussion & Q&A' started by Malevolence, Jul 7, 2009.

  1. Jefftastic

    Jefftastic n00blet Member

    Joined:
    Jul 23, 2017
    Messages:
    45
    Location:
    In Antartica
    Okay guys, this is a bit of a tricky situation-

    I was attempting to mod mania, (which, music wise, was going well.) but I was having some issues editing the logos.

    Keep in mind that I used the same pallete which the logos already were and was also using same format. (the .gif format)

    Here's the file with the edit done to it. Rendered it in Photoshop using RGB and all layers are merged. (using the HeadCannon pallete of course) Logos.gif
    might even use this for the future ;)

    EDIT: Scrolly down a bit please-
     
    Last edited: Sep 12, 2017
  2. Misinko

    Misinko Oh SHIT it's the Biolizard! Member

    Joined:
    Apr 30, 2013
    Messages:
    722
    Location:
    Ohio
    So... what's the issue exactly? There's not much to go on based on "I'm having issues doing this".
     
  3. Niko

    Niko All's well that ends well, right? Member

    Joined:
    Mar 1, 2014
    Messages:
    245
    Location:
    $C800
    What issues were being had? It's hard to help if we don't know much about the issue, but knowing Mania, it's likely an issue with how you're saving it. Built-in versions of MS Paint after XP lose the palette data when even using the vanilla save function, and if you're using Gimp, then I think there's a "preserve palette line" option somewhere. I've also heard that Photoshop is not recommended for editing Mania's .GIFs, if that helps any.

    EDIT: Ninja'd.
     
    Jefftastic likes this.
  4. Jefftastic

    Jefftastic n00blet Member

    Joined:
    Jul 23, 2017
    Messages:
    45
    Location:
    In Antartica
    Sorry for the inconvenience-

    Yeah okay, the issues i'm having is that its loading the logos improperly. (even the taxman and other logos.)

    It sometimes loads up blank, or loads with some random colored lines.
    Capture.PNG
    Yeah, at least the little "welcome to jefftastic" sound loads.
     
  5. Niko

    Niko All's well that ends well, right? Member

    Joined:
    Mar 1, 2014
    Messages:
    245
    Location:
    $C800
    Try using the Windows XP version of Paint to save by...
    - Copying the edited image to the clipboard
    - Opening a copy of the original .gif in Paint (XP)
    - Pasting the clipboard to the .gif from within Paint and then saving.

    Please don't hurt me, Windows XP isn't even supported anymore.
     
    Jefftastic likes this.
  6. Jefftastic

    Jefftastic n00blet Member

    Joined:
    Jul 23, 2017
    Messages:
    45
    Location:
    In Antartica
    Capture.PNG

    yes yes yes holy fuck hell yes fuck yeah oh my lord yes please and more yes thanks yes
     
    Niko likes this.
  7. Ashuro

    Ashuro Anti-Cosmic Metal Of Death Member

    Joined:
    Sep 27, 2014
    Messages:
    550
    Location:
    France
    Hello.
    I just encountered a huge issue.
    When i load SBZ act 2, i end with this when the first object appears at the screen.
    As i can see, it's an issue from under RunPLC_Ram.
    Sans titre2.png
    Sans titre1.png

    In Sonic Retro's Sonic 1 Ram editing page, $FFFFF6F8 is an unknown pattern load queue variable.
    So i can't figure this out.

    Also, the endin sequence is very glitchy, it load Sonic at the start position from LZ3, load water and all the art of the big sonic object is overwritten by some objects from LZ but i don't know from where the issue is.
    My last backup is from the 2017/09/08. And since this date, i haven't changed more than few lines of code for the LZWindTunnel and the Obj10 object.
    I just edited the LZ4(SBZ3) levels.

    I need some help please?
     
  8. MarkeyJester

    MarkeyJester ♡ ! Member

    Joined:
    Jun 27, 2009
    Messages:
    2,867
    I don't think that "subq" instruction is the problem. The debug screen says "called", and the return address stored in the stack, is always after the instruction that performed the call (be it a JSR or BSR). So, I'd say the "bsr.w NemDec3" is the caller code it's mentioning. It's probably just showing that as it's the last return address in the stack at the time of the crash. So, the crash no doubt happened within "NemDec3" somewhere.

    Do notice, that d0 contains the same long-word as the location of the crash, so somehow, the contents of d0 managed to get to the PC, probably been either put into an address register, and then "jmp (aX)", or, it was pushed onto the stack, but not popped out for some reason, and a return force the CPU there.
     
    Last edited: Sep 14, 2017
  9. Ashuro

    Ashuro Anti-Cosmic Metal Of Death Member

    Joined:
    Sep 27, 2014
    Messages:
    550
    Location:
    France
    It's a little too "technical" for me xD

    Oh, and i tried to "remove" all the changes i've made in the code since my last backup, but the issue still rest the same. It sounds confusing for me.
    May it be about the size of LZ4(sbz3)?
     
  10. ProjectFM

    ProjectFM Optimistic and self-dependent Member

    Joined:
    Oct 4, 2014
    Messages:
    912
    Location:
    Orono, Maine
    What is that object? It could have a problem with its code or placement. What happens when you delete it? Do any other objects cause the same error? If you can't figure things out, it may be possible that things will work themselves out on their own with further edits to the levels.

    Also, do you want the ending sequence to use stuff from Labyrinth Zone? The ending sequence uses its own pattern load cues so the LZ object art shouldn't be loading there. The ending sequence must be either using the wrong PLC number or you've edited the ending PLCs to include enemy art in the same place as the big Sonic art. The water loading and start position problems could probably be solved by editing the ending sequence loading code to remove the water loading and making sure the correct start location is being pointed to.
     
  11. AURORA☆FIELDS

    AURORA☆FIELDS so uh yes Exiled

    Joined:
    Oct 7, 2011
    Messages:
    759
    What is likely, is either something is corrupting the RAM values Nemesis uses to continue decompression, or you are loading an invalid address as a Nemesis archive (say, you removed a PLC from LZ somewhere, but did not correct the count value). Usually the color palette would get borked before crashing, but since the debugger is loading, it is overwriting the palette. You may see a quick flash of colour though, and if you do, then it's probably indeed invalid Nemesis archive.
     
    Jesus Christ and MarkeyJester like this.
  12. Ashuro

    Ashuro Anti-Cosmic Metal Of Death Member

    Joined:
    Sep 27, 2014
    Messages:
    550
    Location:
    France
    @ProjectFM Hello! The first object is a group of rings, in fact you start this level by falling to the ground, but after searching, i discovered that this illegal instruction happens when the chunks (or tiles) appears in the screen from the bottom, when Sonic is about to touch the ground.

    No no, the ending sequence keeps the GHZ art, in fact i changed some things, i wanted to make the game set the ending sequence after LZ3 if you haven't all the emeralds, and it worked until yesterday, when i ended up with LZ4...
    When you start the ending sequence, it's like all the data from LZ3 isn't removed correctly. I haven't changed anything in the PLC (i haven't changed anything at all since 3 days ago when everything works, instead of LZ4, a new LZwatertunnels routine that i have deleted to see if the problem comes from it (and not), this is why i'm so confused).
    Thank you.

    @Natsumi Hi, and yes, when the game crash, the screen is flashing in some blue nuances.
    I will look at Pattern Load Cues files, thank you.
    Edit: Yes i don't understand why but the Sonic's plc files having an issue, in the sbz 2 section the Vspring was missing.

    Now i have to the ending sequence problem, or i can replace the ending sequence with the try again screen, but i tried it before and it loads an illegal instruction too.
    Nevermind, thanks for the SBZ2 problem, i'll find another way for the ending sequence.
     
    Last edited: Sep 15, 2017
  13. warr1or2

    warr1or2 I AM CLG Member

    Joined:
    Apr 7, 2008
    Messages:
    416
    Location:
    Town Creek, AL
    I have tried everything by myself, but need help.
    Do I need to set a flag somewhere to have Sonic, or in my case, Richter, to use an animation while standing, load Whip's art, at 3rd frame, remove Whip's art & back to standing?
    I used half of Spindash's code to do this, all I got was the first frame & just a split second, of course without Whip's art cause i need animations to work first.
    Edit: also what formats are are the Tiles, Blocks & Chunks in the original Project Sonic 1: Two Eight Disassembly? i want to convert a level from Sonic 2 Beta to Sonic 1
     
    Last edited: Sep 27, 2017
  14. Jefftastic

    Jefftastic n00blet Member

    Joined:
    Jul 23, 2017
    Messages:
    45
    Location:
    In Antartica
    Okay, i'm sure this would be a dumb question that is probably obvious to most people.
    Is there a sort of a sort of interactive "class" that you could be taught on the Motorola 68k language? I have read up on Markey's guides, but its a bit hard to understand/remember.
    I have been writing notes when reading so I could get the knowledge I absolutely need, but I just don't know where to start.
    Now, if there is any private lessons of that sort, im willing to give up some hours in my day to be taught the language.
    Just very curious in the language, since I want to be able to make some decent things instead of making some really bad hacks forever.

    TL;DR, Is there a place to be taught the Motorola 68k? Thanks in advance. :)
     
  15. LazloPsylus

    LazloPsylus The Railgun Member

    Joined:
    Nov 25, 2009
    Messages:
    Location:
    Academy City
    Unfortunately, there is no sort of "interactive class" provided for learning the Motorola 68000 assembly language. On occasion, you may be able to find someone to provide private lessons, but the difficulty is not just in the time you can provide, but what the teacher can provide as well, as many of us who can teach are very busy people ourselves. It's not a stupid question at all, but it is one without a positive answer short of getting lucky and finding someone that can take the time to teach you. Oftentimes, the difficulty comes not in learning the language, but in showing how to apply it to things like the Sonic game engines and manipulate them in the desired ways, which often requires a lot of hands-on work and exploration to do effectively. I've taught a few students in my time, and it's really never as simple as just "learning the language", so it's understandable that finding such interactive learning is difficult on so many fronts. Still, I wish you luck on finding some aid, as when you do find someone that can spare the time to teach, there's so much to learn, and that you're asking about where to learn more and explore is a sign that with some guidance, you could do some really cool stuff. You just need some help breaking through the initial wall of understanding, which is often the most difficult.
     
  16. ProjectFM

    ProjectFM Optimistic and self-dependent Member

    Joined:
    Oct 4, 2014
    Messages:
    912
    Location:
    Orono, Maine
    Yeah, you should try messing around the disassembly. Try to figure out how things work and if you don't understand what a certain line of code is doing, use MarkeyJester's tutorial as a reference. It's better than a class because you can learn at your own pace. You can make small goals and try to reach them. You can also use code from a tutorial and try to read through it to figure out how it is achieving what it is doing. One thing to remember which may be helpful is that it works by reading and executing each line of code one at a time. A linear path is being followed with the only deviations being interrupts, which you don't need to worry about. I don't think I got that when I first started.
     
    Jefftastic and Ashuro like this.
  17. AURORA☆FIELDS

    AURORA☆FIELDS so uh yes Exiled

    Joined:
    Oct 7, 2011
    Messages:
    759
    Thats kinda wrong really. If you are talking about a linear path, branches are by design deviations from that linear path, and are very important to remember to follow where they lead. This is of course, one more reason why assembly and programming languages are harder to follow through, but are a necessary evil in making functional code without having the same statement a million times.
     
    ProjectFM likes this.
  18. ProjectFM

    ProjectFM Optimistic and self-dependent Member

    Joined:
    Oct 4, 2014
    Messages:
    912
    Location:
    Orono, Maine
    I can see how that wasn’t the best way I could have explained it. When the program is being run, no two things are happening at the same time is what I’m trying to say.
     
    AURORA☆FIELDS likes this.
  19. Jefftastic

    Jefftastic n00blet Member

    Joined:
    Jul 23, 2017
    Messages:
    45
    Location:
    In Antartica
    Yes, as I have stated in the post, I have been trying to piece together things using Markey's Guide. Ill start writing notes about it as I go by experimenting. :)

    Hmm, okay. Well thanks for the help though, I will be trying to work and figure out more about the language, as i'm very curious how everything works. :D
     
  20. Niko

    Niko All's well that ends well, right? Member

    Joined:
    Mar 1, 2014
    Messages:
    245
    Location:
    $C800
    upload_2017-9-30_22-23-31.png
    Where might I find the data for this text?
    I'm not finding it, even after digging in the SCHG.