FDOS / kernel

FreeDOS kernel - implements the core MS-DOS/PC-DOS (R) compatible operating system. It is derived from Pat Villani's DOS-C kernel and released under the GPL v2 or later. Please see http://www.freedos.org/ for more details about the FreeDOS (TM) Project.
http://kernel.fdos.org/
GNU General Public License v2.0
783 stars 142 forks source link

Pre-compiled boot records #99

Open marcosfrm opened 1 year ago

marcosfrm commented 1 year ago

Older FreeDOS versions used to have a KERNELS.ZIP file with source\ukernel\boot\fat32lba.bin and friends, as mentioned here:

http://wiki.freedos.org/wiki/index.php/How_to_Create_a_USB_Boot_Disk_Using_FreeDOS

Could these get packaged somewhere again?

Thanks.

ecm-pushbx commented 1 year ago

I've set up an automatic build of the kernel (using NASM 2.16 and gcc-ia16), the latest revision is always at https://pushbx.org/ecm/download/fdkernel.zip -- older at https://pushbx.org/ecm/download/old/fdkernel/

These generally include the six boot sector loaders (boot12, boot16, oemboot12, oemboot16, 8086 CHS boot32, 386 LBA boot32), as well as the SYS program.

andrewbird commented 1 year ago

I've set up an automatic build of the kernel (using NASM 2.16 and gcc-ia16), the latest revision is always at https://pushbx.org/ecm/download/fdkernel.zip

Why not in the CI here?

ecm-pushbx commented 1 year ago

I don't have access to that.

andrewbird commented 1 year ago

No special access required as everything is in the repo, just make a PR. See how ci_build.sh populates the _output directory with stuff to include and if the build/test is completely successful an artefact .zip file is produced at the end of the run. Note that artefact zips are only produced from the main FDOS/master branch, which is a little inconvenient for your testing, but avoids the proliferation of zips from people's topic branches when they submit a PR.

ecm-pushbx commented 1 year ago

Why don't you do that? What files are included in the artefact zip file? What needs changing from the current script? @ https://github.com/FDOS/kernel/blob/384e68529ad6553a559727e07d1b1f679444d222/ci_build.sh

andrewbird commented 1 year ago

Why don't you do that?

I could but then again I didn't feel the need to take on the build task in the first place.

What files are included in the artefact zip file?

Have a look at the most recent build https://github.com/FDOS/kernel/actions/runs/3886100464, see the snapshot zip at the bottom.

What needs changing from the current script?

Build of the new components needs to happen, then the files to be published should be moved to the _output directory, and since you mention using gcc they probably should occupy that subdirectory. These changes probably should be added around line 28 after share.

Or stick with what you have, I really don't mind.

marcosfrm commented 1 year ago

Thank you. Automated nightly builds are welcome. It would be nice also have stable boot record binaries in "Releases" (keXXXX_br.zip or so), compiled from the corresponding git tag.