Bug Reports

With new versions come new bugs...

If you find software bugs in the Assembler, please report them.
Even if you managed to "fix it yourself" by editing the source code, other people probably want the same problem fixed, so just remember to contact me.

To do this, drop me a PM (Private Message) or VM (Visitor Message) on the Cave Story Tribute Site Forums. You can also try emailing me through my profile on the CS Forums, though beware that I do not check my email very often.

Known Bugs
The High Address Bug
Calls and jumps cannot accept addresses higher than 0x7FFFFFFF, even though OllyDbg can. This problem stems from the fact that Java cannot really support unsigned integers. I might have to rewrite the address management code to use long integers (8 bytes) instead of regular integers (4 bytes). This is a low-priority bugfix because using 8-byte integers would just slow down everything and almost nobody will jump to an address higher than 0x0500000 anyway.
If you really want to do something like CALL ABCDEF00, then there is a way to do it. Just convert 0xABCDEF00 into a signed negative value.

In 32-bit modular math:
0xABCDEF00 = -1412567296 (decimal) = 0x-54321100.
Now use CALL -54321100 and you'll get the same thing.

This bug does not apply to regular instructions. For example, MOV ECX,90001000 will work fine.

The Line Number Bug
Line numbers have a notorious tendency to be "off by one". Usually this is not a big deal but sometimes it can be confusing.

This bug might happen when you are using the up/down arrow keys to navigate a text document, or when you are pressing backspace repeatedly.
This bug should not happen when you click the mouse on a textbox, when you are actively typing new text, or when you use Ctrl+G to jump to a line number.

The Undo/Redo Incompatibility Bug
If you enable syntax coloration, you cannot use Undo (Ctrl+Z) or Redo (Ctrl+Y) anymore because syntax coloration actions will mess up the stream of undoable edits. However, if you really want to use Undo/Redo, disable the syntax coloration checkbox in the Settings tab and Undo/Redo will start working again for the plain text editor.

This is a high priority bugfix. The ultimate goal is to get Undo/Redo to be compatible with syntax coloration so that you can still use Ctrl+Z and Ctrl+Y even when the code is colorized.

The Preview Code Bug
When an error message occurs during code previews, an inaccurate line number will be given if there is a #define block used in the file. This doesn't happen during one-file assemble or multiple-file assemble.
(The Preview Code Bug has been fixed.)

The IMUL Bug
Certain types of IMUL instructions don't work correctly. For example:
IMUL EDX,EAX              ;Doesn't work! Turns into IMUL EDX.
IMUL EAX,EBX              ;Doesn't work! Backwards - turns into IMUL EBX,EAX
IMUL EAX,DWORD [464000]   ;Doesn't work! Causes error when it should be accepted.
(The IMUL Bug has been fixed.)

Back to the Table of Contents