Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the forum
Board view  Mix view

Trubo Oberon (Announce)

posted by Rugxulo Homepage, Usono, 27.07.2026, 07:52

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:

Back to the forum
Board view  Mix view
23602 Postings in 2238 Threads, 410 registered users (0 online)
DOS ain't dead | Admin contact
RSS Feed
powered by my little forum