+9640News Posted March 6, 2021 Share Posted March 6, 2021 I came across what I believe to be a very obscure assembly and linking issue with GenASM and GenLINK I had a source file, that at the tail end of the source code, I had unlabeled source BYTE instructions with the last BYTE instruction a >00. The BYTE >00 was on an even boundary, so if I had an additional BYTE, it would have completed the word. When I linked the file, it ignored the >00. As the code above was a string with text, >0D,>0A,>00, the >00 was not part of the object file written. At least, during the disassembly with DiskAssembler, it did not show up in the disassembly. And, when it linked the next object file that object file added it's code over the Even boundary where the byte >00 resided. It took some time to find out why the code I had suddenly had display issues writing text to the screen. Beery 2 Quote Link to comment Share on other sites More sharing options...
+mizapf Posted March 6, 2021 Share Posted March 6, 2021 I sometimes take some notes of things I discovered. One says about GenASM: Might have a problem with BYTE without following EVEN. Creates ILLEGAL TAG. 1 Quote Link to comment Share on other sites More sharing options...
+9640News Posted March 6, 2021 Author Share Posted March 6, 2021 1 hour ago, mizapf said: I sometimes take some notes of things I discovered. One says about GenASM: Might have a problem with BYTE without following EVEN. Creates ILLEGAL TAG. I used the EVEN, however, at the end of the source file, that last byte wasn't captured in the object file. I'm not sure if it was the way the object file was written with perhaps testing for a NUL for the end of record, or if it was something else. 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.