Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix DL opcode cmd increment #13

Merged
merged 1 commit into from
Mar 16, 2024

Conversation

Archez
Copy link

@Archez Archez commented Mar 16, 2024

The various DL opcodes were only incrementing the current stack's cmd value if a valid DL was found. In the event of a bad/invalid DL instruction, cmd would not get incremented, leading to that instruction being executed infinitely over and stalling out the render process.

This moves the return; to be strictly in the "branch" code paths, and let everything else just break; which will increment cmd at the end. This basically matches what the pre-2sh LUS was doing before.

@louist103 louist103 merged commit f58c924 into louist103:mm-rebase Mar 16, 2024
4 checks passed
@Archez Archez deleted the fix-cmd-increment branch March 16, 2024 15:29
louist103 added a commit that referenced this pull request Mar 27, 2024
* MM

* Work for MM

* Fixed palette issues in MM (#1)

* Fixed palette issues with MM

* Test

* opcode for open/close disps

* Gfx Debugger (#2)

* BitConverter: fix type correcteness in loop

* gbi: get rid of LoadUcode macros

* Gui: add ability to make a GuiImage out of a LUS::Texture

* Add GfxDebugger

* GfxDebugger: add C Bridge

* gfx_pc: expose internal state + intergrate debugger

* Add GfxDebuggerWindow

* Context: integrate GfxDebuggerWindow

* update CMakeLists.txt

* GfxDebugger: move inline code from header to cpp file

* clean up comments and add a check for empty stacks

* fix cmake

* conflict

* implement bg 1cyc (#4)

* Implement point lights (#5)

* Remove debugging code

* Framebuffer Effects 1.0 (#6)

* Add initial copy framebuffer and draw framebuffer commands

* Implement DirectX framebuffer copy

* Implement OpenGL framebuffer copy

* Implement Metal framebuffer copy

* tweaks for metal viewport and int conversion

* resolve opengl msaa

* remove unused code paths

* Fix graphics debugger on 64bit (#8)

* fix graphics debugger on 64bit

* wrap libgfxd use in define

* clang format

* Fix light blinking in clocktown (#9)

* Revert changes to ResourceManager.cpp

* Format

* Fix

* merge

* ad setFB command

* Fix WiiU

* fix switch build error (#10)

* Remove commented g/abi.h files

* fix token pasting error on some compilers (#11)

* fix pop back without size check (#12)

* fix dl cmd increment (#13)

* add custom opcode for managing offset dl calls on 64bit (#14)

---------

Co-authored-by: Nicholas Estelami <[email protected]>
Co-authored-by: Random <[email protected]>
Co-authored-by: Archez <[email protected]>
Co-authored-by: Rozelette <[email protected]>
Co-authored-by: briaguya <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants