Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the forum
Board view  Mix view

Dev86DOS 0.16.18 (DJGPP host) (Developers)

posted by Rugxulo Homepage, Usono, 17.04.2012, 19:42

> You did not mention what you plan to do with DEV86-BCC-ELKS. I just want to
> mention that Nano-X had been ported to ELKS so FLTK and its applications
> could possibly work with ELKS.

I don't know. I just know I had halfway built it with DJGPP before but never was confident enough in such configuration (and still am not, honestly). Having COPT and UNPROTO is an improvement over previous DOS version (plus bugfixes, allegedly better CPP, etc). Even a quick email (re: DJGPP build issues) to the maintainer years ago went unanswered (sigh). I just wanted a decent DOS-hosted build, though I know few use (or want) it on DOS when better alternatives exist (e.g. OpenWatcom). But, unless I'm mistaken, it only outputs .COM, so I don't know if that can (easily) even support small model (64k+64k) there, unless that for some reason means via the heap and not the executable image itself (hopefully).

The main point was DOS-hosted and DOS-targeted, but I was not opposed to supporting Linux/ELKS 16-bit output either. However, there must be some hardcoded stuff in the sources as it chooses which target based upon how you bootstrapped it (ugh). Hence by default on Linux it targets ELKS (for use with "elksemu") but on "MSDOS" it targets DOS. So "-Ms" doesn't quite do what I want on DOS/DJGPP host. I must be misunderstanding the man page (bcc.1) because "-Ms" is not vanilla ELKS output but "alters the arguments for all passes and selects C-library to produce standalone Linux-86 executables". In other words, -D__STANDALONE__ without any mention of __ELKS__ and chooses "-lc_s" instead of normal libc.a, so it whines about "undefined symbol: __mkargv". I don't know if this is for freehosting crapola or what. (This stuff really gets confusing fast, ugh.)

Long story short: you can apparently mostly build Linux/ELKS 16-bit a.out target from the DJGPP version, but I'm not sure of the "proper" way, so here's what I did semi-successfully:

bcc -s -O -ansi -Ms -v newbef93.c -U__STANDALONE__ -D__ELKS__ -D__unix__ /dev86dj/lib/bcc/libc.a -o b
(ignore spurious warnings about libc clashes, stupid "-lc_s" vs. "-lc")
doselks.com b guesswho.bef
(verbose but works)

P.S. There is also apparently the "-f" option to add float support, but I haven't tried rebuilding BWBasic again yet, and I'm not sure how well (if at all) floating point is supporting in the ELKS libc. Though I guess I could build something simpler like Chipmunk Basic (original from p2c) or such. Though it's moot, nobody but me cares, just curious to find good example of (potential, barely) real-world use.

 

Complete thread:

Back to the forum
Board view  Mix view
22049 Postings in 2034 Threads, 396 registered users, 155 users online (0 registered, 155 guests)
DOS ain't dead | Admin contact
RSS Feed
powered by my little forum