Ok none of them work >:( >:( >:( >:( >:( >:( >:(
This is really starting to bug me
Ill write up the interrupt stuff when I can just get basic C/C++ code working.
(Another note Watcom is also making a _cstart segment)
-mc, -ms and -mf produced:
[tt]
00000794800i[CPU0 ] LOCK prefix unallowed (op1=0x53, attr=0x0, mod=0x0, nnn=0)
00000794800e[CPU0 ] interrupt(): gate descriptor is not valid sys seg
00000794800e[CPU0 ] interrupt(): gate descriptor is not valid sys seg
00000794800i[CPU0 ] protected mode
00000794800i[CPU0 ] CS.d_b = 32 bit
00000794800i[CPU0 ] SS.d_b = 32 bit
00000794800i[CPU0 ] | EAX=00000010 EBX=00000000 ECX=00000002 EDX=00000000
00000794800i[CPU0 ] | ESP=00014ff0 EBP=00000000 ESI=00007343 EDI=0000ffde
00000794800i[CPU0 ] | IOPL=0 id vip vif ac vm RF nt of df if tf SF zf af pf cf
00000794800i[CPU0 ] | SEG selector base limit G D
00000794800i[CPU0 ] | SEG sltr(index|ti|rpl) base limit G D
00000794800i[CPU0 ] | CS:0008( 0001| 0| 0) 00000000 000fffff 1 1
00000794800i[CPU0 ] | DS:0010( 0002| 0| 0) 00000000 000fffff 1 1
00000794800i[CPU0 ] | SS:0010( 0002| 0| 0) 00000000 000fffff 1 1
00000794800i[CPU0 ] | ES:0000( 0000| 0| 0) 00000000 0000ffff 0 0
00000794800i[CPU0 ] | FS:0000( 0000| 0| 0) 00000000 0000ffff 0 0
00000794800i[CPU0 ] | GS:0000( 0000| 0| 0) 00000000 0000ffff 0 0
00000794800i[CPU0 ] | EIP=00000003 (00000003)
00000794800i[CPU0 ] | CR0=0x00000011 CR1=0 CR2=0x00000000
00000794800i[CPU0 ] | CR3=0x00000000 CR4=0x00000000
00000794800i[CPU0 ] >> lock push ebx : F053
[/tt]
-ml and -mm produced:
[tt]
00000794843e[CPU0 ] call_protected: CS selector null
00000794843e[CPU0 ] interrupt(): gate descriptor is not valid sys seg
00000794843e[CPU0 ] interrupt(): gate descriptor is not valid sys seg
00000794843i[CPU0 ] protected mode
00000794843i[CPU0 ] CS.d_b = 32 bit
00000794843i[CPU0 ] SS.d_b = 32 bit
00000794843i[CPU0 ] | EAX=00000010 EBX=00000000 ECX=00000002 EDX=00000000
00000794843i[CPU0 ] | ESP=00014ff8 EBP=00000000 ESI=00007343 EDI=0000ffde
00000794843i[CPU0 ] | IOPL=0 id vip vif ac vm RF nt of df if tf sf zf af PF cf
00000794843i[CPU0 ] | SEG selector base limit G D
00000794843i[CPU0 ] | SEG sltr(index|ti|rpl) base limit G D
00000794843i[CPU0 ] | CS:0008( 0001| 0| 0) 00000000 000fffff 1 1
00000794843i[CPU0 ] | DS:0010( 0002| 0| 0) 00000000 000fffff 1 1
00000794843i[CPU0 ] | SS:0010( 0002| 0| 0) 00000000 000fffff 1 1
00000794843i[CPU0 ] | ES:0000( 0000| 0| 0) 00000000 0000ffff 0 0
00000794843i[CPU0 ] | FS:0000( 0000| 0| 0) 00000000 0000ffff 0 0
00000794843i[CPU0 ] | GS:0000( 0000| 0| 0) 00000000 0000ffff 0 0
00000794843i[CPU0 ] | EIP=0001074e (0001074e)
00000794843i[CPU0 ] | CR0=0x00000011 CR1=0 CR2=0x00000000
00000794843i[CPU0 ] | CR3=0x00000000 CR4=0x00000000
00000794843i[CPU0 ] >> call far 0000:00000000 : 9A000000000000
00000794843e[CPU0 ] exception(): 3rd (13) exception with no resolution, shutdown status is 00h, resetting
[/tt]