Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the forum
Board view  Mix view

Watcom ASM + C puzzle, variable has conflicting addresses (Developers)

posted by boeckmann, Aachen, Germany, 01.01.2026, 21:09

> Why would Watcom think "activpg" is at two different addresses? (3461:0C4C
> versus 3461:027C)

Comparing 0x0C4C-0x027C=0x09d0 with the map file indicates that there is some _DATA segment related offset being used while this should be a DGROUP related offset.

As WASM generates group related offsets when encountering something like this:

dgroup group data
data segment
x   db 2
    mov  bh, byte ptr [y]
data ends
end


as shown in the following decoded OMF fixup record (decoded with OMFDUMP, the important part is the "frame method"):

9c FIXUPP16      6 bytes, checksum 7F (valid)
   FIXUP  segment-relative, type 1 (16-bit offset)
          record offset 0005
          frame method F1 (GRPDEF) index 0001 'dgroup'
          target method T4 (SEGDEF) index 0001 'data'


this is indeed puzzling. Can you upload the .OBJ file? Then I can verify via OMFDUMP if the corresponding fixup in the OBJ is correct.

 

Complete thread:

Back to the forum
Board view  Mix view
23153 Postings in 2179 Threads, 404 registered users (3 online)
DOS ain't dead | Admin contact
RSS Feed
powered by my little forum