[Coco] NitrOS9 and 6309 code

Allen Huffman alsplace at pobox.com
Fri May 31 22:31:22 EDT 2019

Okay, I see how the 6309 type was added, from os9.d

* Module Language Values
Objct          EQU       1                   6809 Object Code Module
ICode          EQU       2                   Basic09 I-code
PCode          EQU       3                   Pascal P-code
CCode          EQU       4                   C I-code
CblCode        EQU       5                   Cobol I-code
FrtnCode       EQU       6                   Fortran I-code
Obj6309        EQU       7                   6309 object code

The original intent was to describe what the binary was — assembly, B09, Pascal, etc.

Assuming that the I-Code, P-Code stuff is processor independent, I guess this is okay. (BUT, on modern OS-9, C I-Code is not processor independent, so that would not work for us this way here if we had it.)

On OS-9/ARM, I see it does have the processor variant in there:

/sd02/USR/ALLENH $ident -x hello
Header for:      hello
Module size:     $D18        #3352    
Owner:           0.0
Module CRC:      $B3A9DC     Good CRC
Header parity:   $9F6A       Good parity
Edition:         $7          #7       
Ty/La At/Rev     $101        $8001    
Permission:      $555        -----e-r-e-r-e-r
Exec off:        $70         #112     
Data size:       $728        #1832    
Stack size:      $1000       #4096    
Init. data off:  $CE8        #3304    
Data ref. off:   $D00        #3328    
ARMv7 Prog Mod, Object Code, Sharable

…but it doesn’t change when I target ARMv6. I think that’s a generic description on ARM. I need a 68K system or an x86 to see what happens there. I’ll have to see if I can install that OS-9/x86 virtual machine demo again.

This may or may not be something modern OS-9 handless — or it may just be generic and you can’t tell. It looks like there’s a provision for it, at least.

I’ll do some more digging.

		— A

More information about the Coco mailing list