Trubo Oberon (Announce)
This is more just my curiosity to test rather than a bug report.
> I did play with TASM and TLINK a bit. Granted, it's probably not meant to
> be generally useful, but a modified PSR Invaders (INV-MINI.ASM for
> MiniNasm, Start -> start, global start, comment out ORG 100h) will assemble
> with a pointless 3-byte JMP at the beginning (easily fixed with *nix dd).
No, I sadly can't cut out the first three bytes, the addresses of everything else will be wrong.
It also adds a zero at the end. Still runs fine.
> But I haven't worked around his lack of optimization for (CMP|SUB|ADD)word
> [myvar], signed byte.
The three instructions that needed working around are indeed CMP, SUB, and ADD.
CMP BX,byte number ; 83h,0FBh
SUB BX,byte number ; 83h,0EBh
ADD DX,byte number ; 83h,0C2h
CMP word[myvar],byte number ; 83h,3Eh
SUB word[myvar],byte number ; 83h,2Eh
ADD word[myvar],byte number ; 83h,06h
EDIT: I also had to manually shorten jumps, but that's no big deal either.
So I just stubbed in the raw byte defines of those encodings instead (using Sed) and reassembled. Not counting the four byte added overhead, it does match exactly.
Not crucial, just fun.
Complete thread:
- Trubo Oberon - rr, 08.07.2026, 21:24 (Announce)
![Open in board view [Board]](img/board_d.gif)
![Open in mix view [Mix]](img/mix_d.gif)
- Trubo Oberon - Rugxulo, 15.07.2026, 03:18
- Trubo Oberon - Rugxulo, 16.07.2026, 20:54
- Trubo Oberon - Rugxulo, 20.07.2026, 07:54
- Trubo Oberon - Laaca, 21.07.2026, 23:05
- Trubo Oberon - Rugxulo, 23.07.2026, 07:15
- Trubo Oberon - Laaca, 23.07.2026, 18:57
- Trubo Oberon - Rugxulo, 24.07.2026, 21:34
- Trubo Oberon - Rugxulo, 27.07.2026, 07:52
- Trubo Oberon - Rugxulo, 24.07.2026, 21:34
- Trubo Oberon - Rugxulo, 04.08.2026, 13:16
- Trubo Oberon - Rugxulo, 31.08.2026, 09:49
- Trubo Oberon - Laaca, 23.07.2026, 18:57
- Trubo Oberon - Rugxulo, 23.07.2026, 07:15
- Trubo Oberon - Laaca, 21.07.2026, 23:05
- Trubo Oberon - Rugxulo, 15.07.2026, 03:18
Mix view