Open andrewbird opened 1 year ago
I did try to do an incremental link, in the hope that I could fixup the sections before the final link, but it seems that's not possible?
ia16-elf-gcc -mtsr core.obj kitten.obj tnyprntf.obj main.obj -li86 -Wl,-i -o doslfn.ob1
/usr/lib/x86_64-linux-gnu/gcc/ia16-elf/6.3.0/../../../../../ia16-elf/bin/ld: relocatable linking with relocations from format elf32-i386 (kitten.obj) to format binary (doslfn.ob1) is not supported
collect2: error: ld returned 1 exit status
Thank you!
I'm playing with doslfn with the goal that I'd like to get it to build using nasm and ia16-elf-gcc. My test repo/branch is over at https://gitlab.com/a8d/doslfn/-/tree/t2/src . Currently it is wholly tasm and implements its nls itself rather than using kitten. I'd like to move a significant portion of the non TSR code to C as it doesn't need to be assembly, but I'm finding that although I can play some tricks with objcopy to get the kitten and printf code into .*.startup sections, the library code ends up in .text etc. Can you suggest anything that I can do to get the library code where I'd like it so as to keep the resident code small?
The way I'm thinking of structuring the code is that all of the C is transient, and the resident part is nasm code converted from tasm.