Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the forum
Board view  Mix view

trip report: Tiny C Compiler 0.9.27 (Miscellaneous)

posted by bencollver Homepage, 04.02.2026, 17:02

First Attempt:

I bootstrapped the Tiny C Compiler 0.9.27 using Watcom 1.9 and HXRT on SvarDOS. After some work, Watcom successfully built it. But the bootstrapped TCC.EXE couldn't build its own runtime, libtcc1.a.

I got the following error message:

Exception 0D
EAX=00000287 EBX=0000547F ECX=00000008 EDX=00000274 ESI=00000100
EDI=00000100 EBP=00005878 ESP=000056E2 EFL=00013246 EIP=000009E9
CS=0097 (00111000,000058AF,00FB) SS=008F (00111000,000058AF,40F3)
DS=009F (000132A0,0000010F,00F3) ES=00D7 (00012E30,000000FF,00F3)
FS=0000 (********,********,****) GS=0000 (********,********,****)
LDTR=0038 (FF80F000,00000FFF,0082) TR=0030 (FF80AD70,00000067,008B)
ERRC=0000 (********,********,****) PTE 1. Page LDT=01FCF467
GDTR=07FF:FF80E0000 IDTR=07FF:FF80E800 PTE CR2=00000027
CR0=80000011 CR2=00000000 CR3=01FDC000 CR4=00000200 TSS:ESP0=00002290
DR0-3=00000000 00000000 00000000 00000000 DR6=FFFF0FF0 DR7=00000400
LPMS=0087(01) RMS=1B51:0200 cRMCB=0000 IRQ=000000 ISR=0000
   [EIP]=F3 67 A4 F7 C7 00 FF 75 03 B0 0D AA
   [ESP]=4A3F 0000 473C 0040 5878 0000 5702 0000
000056F2=547F 0000 0274 0000 005B 0000 0204 0000
00005702=008F 008F 289D 00C7 5726 0000 0040 0040
00005712=5878 0000 572A 0000 R000 0000 570A 0000
00005722=0001 0000 0507 0002 00C7 4550 0000 014C
00005732=0004 3D9F 6981 0000 0000 0000 0000 00E0

Syntax Error


The command was:

.\tcc -m32 -ar cr lib/32/libtcc1.a libtcc1.o crt1.o crt1w.o wincrt1.o wincrt1w.o dllcrt1.o dllmain.o chkstk.o bcheck.o alloca86.o oca86-bt.o

It succeeded when removing oca86-bt.o from the end.

It also succeeded when removing all .o files EXCEPT for oca86-bt.o.

Try as i might, i could not resolve this issue on SvarDOS.

It worked just fine on FreeDOS where it successfully bootstrapped the compiler and built its own runtime.

From HXRT.TXT:

HX has been tested to run with MS-DOS v5/6/7 and FreeDOS v1.0. It might work with other DOS versions, but this is untested and not recommended.

Second Attempt:

I bootstrapped the Tiny C Compiler 0.9.27 using Watcom 1.9 and HXRT on FreeDOS. It successfully self-hosted itself using the bootstrapped TCC.EXE. But the self-hosted TCC.EXE failed to run.

I got the following error message:

dkrnl32: exception C0000005, flags=0 occurred at BF:3AACE4
        ax=718024 bx=4034EC cx=717FE4 dx=41000C
        si=400000 di=113B2D bp=226EFC sp=226EEC
        exception caused by access to memory address 718024
        ip = Module 'libtcc.dll'+ACE4
        [eip] = 89 08 8B 85 F8 FF FF FF 89 85 F4 FF
        [esp] = 000002B3 00717FE4 0071800C 00711414 00226F08 003DC8B5
dkrnl32: fatal exit!


This error happened when i ran tcc.exe regardless of the arguments.

When i ran the static linked tcc64.exe, i got a similar error, but without the libtcc.dll reference.

I couldn't resolve this issue on FreeDOS.

It worked just fine on Windows XP, where it successfully self-hosted the compiler. This self-hosted compiler worked on Windows XP, but crashed on FreeDOS with HXRT.

I ran hx\test\dostest.exe and all tests passed.

I tried various settings in the DPIMILDR and HDPMI environment variables. None helped.

I tried using MS-DOS 6.22 and that didn't help either.

 

Complete thread:

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