Commit Graph

11 Commits

Author SHA1 Message Date
Red Bear OS c78c3a63c0 BIOS: implement get_key_timeout with INT 16h/01h polling + INT 15h/86h delay
Fixes autoboot countdown blocking forever because the default trait impl
calls blocking get_key(). Uses non-destructive key check (INT 16h AH=01h)
with EDX sentinel to detect key availability without EFLAGS access, and
INT 15h AH=86h for 10ms polling intervals.
2026-07-12 05:02:08 +03:00
Red Bear OS 2f79630b0e Cargo.toml: 1.0.0+rb0.3.0 -> 1.0.0+rb0.3.1
Bootloader fork was the only Cat 2 fork that didn't get its
+rb suffix updated during the 0.3.0->0.3.1 sync-versions run.
Manual fix applied. Also regenerated its Cargo.lock to match
the new version.
2026-07-12 01:20:43 +03:00
Red Bear OS 6b43b7f9c5 0.3.0: bump local fork lockfile versions to +rb0.3.0 2026-07-06 20:41:30 +03:00
vasilito 62fa9f9a1b 0.3.0: bump version suffix to +rb0.3.0 2026-07-06 19:47:08 +03:00
vasilito ea5b2418e6 redbear: migrate bootloader patches into local fork
Apply the full Red Bear bootloader patch set:
- P0-gpt-partition-offset
- fix-uefi-alloc-panic
- redox.patch (Makefile/mk and misc fixes)
- P1-bootloader-timeout-and-default-resolution
- P2-live-preload-guard
- P3-uefi-live-image-safe-read
- P4-live-large-iso-boot
- P5-live-preload-cap-1gib

Also switch redoxfs dependency to the local fork path.
2026-07-06 08:03:08 +03:00
Red Bear OS 6c3c312819 fix: use local path deps for redox_syscall 2026-07-05 23:54:34 +03:00
Red Bear OS e7bc6a56dc version: use +rb0.2.5 build metadata instead of -rb0.2.5 pre-release
Semver pre-release suffix (-rb0.2.5) breaks Cargo's [patch.crates-io]
matching for transitive deps. Build metadata (+rb0.2.5) is semver-
compatible: ^0.9.0 matches 0.9.0+rb0.2.5, patch redirection works,
and the Red Bear suffix is still visible in the version string.
2026-07-05 09:16:12 +03:00
Red Bear OS db006c0b72 fork: add Red Bear author attribution to Cargo.toml 2026-07-05 08:48:16 +03:00
Red Bear OS 83a34a1515 fork: bump to -rb1 version suffix
Per local/AGENTS.md \xC2\xA7 "Category 2 - Local forks of upstream packages",
all Cat 2 forks must use the `<upstream-tag>-rb<N>` version convention. The
`-rb1` suffix is a Cargo pre-release identifier that prevents upstream
`<upstream-tag>` from silently substituting for this fork in transitive
dependency resolution.

- The base tag (e.g. 0.9.0 for redox_syscall) tracks upstream
  unchanged.
- The `rb1` part records that one Red Bear patch round has been
  applied on top of the upstream tag.

This is the initial policy enforcement pass. The branch is
considered unfrozen at this point; once a freeze is declared, future
`-rbN` increments will land on a frozen `0.X.Y` branch per
local/AGENTS.md.
2026-07-04 10:07:31 +03:00
Red Bear OS 3cc7ed909c bios: add -Zunstable-options for custom JSON target spec
Rust nightly requires -Zunstable-options for custom target JSON specs
(such as x86-unknown-none.json). Without it, the build fails with:
  error: error loading target specification: custom targets are
  unstable and require `-Zunstable-options`

UEFI already uses the built-in x86_64-unknown-uefi target, so it
didn't need this flag. The kernel recipe already has this fix; the
bootloader BIOS Makefile was missing it.
2026-06-28 04:40:40 +03:00
Red Bear OS 89c68d0738 Red Bear OS bootloader baseline from 0.1.0 pre-patched archive 2026-06-27 09:21:43 +03:00