Hallo Herr Bernd Böckmann via Freedos-devel, am Samstag, 1. März 2025 um 20:40 schrieben Sie:
>> the bug is found, fixed, and was communicated on this list. >> >> That this is not implemented in the latest RC3 is a sad shame. > It is fixed for the FreeDOS package via [1]. >> I'm fairly certain you didn't test all the other changes. Sometimes you have >> to believe;) >> >> However the origin of the bug (the build procedure) is probably not fixed >> yet. > I made a pull request [2] which hopefully fixes the build. For me it does > when building under Mac. Have not tested other platforms. > [1]: > https://gitlab.com/FreeDOS/base/freecom/-/commit/eb332c2c5e8ae9e9f6a095e189d36c0e40f55b13 > [2]: https://github.com/FDOS/freecom/pull/170 I don't think making this compiler dependent is a smart idea, each command.com needs a minimum of heap. and no compiler on this planet can know how much is needed. with XMS_SWAP active, that's irrelevant without XMS_SWAP, the heap is frozen as soon as KEYB is loaded. later commands my use more heap then is currently allocated. command *minimum* heap really should be allocated through EXE header. but anyway (I don't care much about GCC) if (compiler != COMPILER_GCC) { if(fseek(freecom, ival.heapPos, SEEK_SET) != 0) { printf("Failed to seek to heap size offset in %s\n", argv[1]); return 42; } assert(sizeof(tosize) == 2); if(fwrite(&tosize, sizeof(tosize), 1, freecom) != 1) { printf("Failed to patch heap size into FreeCOM executable.\n" "File most probably corrupted now: %s\n", argv[1]); return 75; } } silently doing nothing when compiler is GCC isn't smart (as the last version did). please do at least ... else printf("while instructed to do something, I ignore you because GCC doesn't need this\n"); Tom _______________________________________________ Freedos-devel mailing list Freedos-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freedos-devel