Skip to content

lDOS tsr /j1 makes mem /d list data block with empty name and empty type

I have prepared 5 different options for my TSRs, providing 4 alternatives to the installation in a self-owned, non-PSP MCB (as some programs don't check for a PSP sufficiently). Unfortunately, the /j1 option causes mem /d to list the memory block with an address and size only, both the name and type are empty.

The executable of the example program is provided in https://pushbx.org/ecm/download/old/tsr/20241129.zip

The full line produced by mem /d is:

f0e7        176    (0K)

The code that creates the "double MCB" allocation is at https://hg.pushbx.org/ecm/tsr/rev/0abbee062baf#l2.210

The outer (real) MCB has as its owner the application's code segment, ie its owner = its segment plus two. After the outer MCB there is an inner pseudo MCB which does look like a process's MCB (owner is its segment plus one) and has an MCB name that's meaningful.

I don't know how to patch mem to better display this yet, so I would welcome suggestions.