This commit adds GDT initialization with proper code/data segments and reloads CS. It also adds the initial IDT structure and loads an empty IDT. Build configuration updated to disable SSE/MMX to prevent compiler generation of unsupported instructions in early boot.
26 lines
551 B
Bash
Executable File
26 lines
551 B
Bash
Executable File
#!/bin/sh
|
|
set -e
|
|
|
|
# Build directory
|
|
BUILD_DIR=build
|
|
BIN_DIR=$BUILD_DIR/bin
|
|
RELEASE_DIR=release
|
|
|
|
# Check if images exist
|
|
if [ ! -f "$RELEASE_DIR/claude-os.iso" ]; then
|
|
echo "Error: claude-os.iso not found!"
|
|
exit 1
|
|
fi
|
|
|
|
echo "Testing ISO image..."
|
|
timeout 5s qemu-system-i386 -cdrom "$RELEASE_DIR/claude-os.iso" -debugcon file:iso_output.txt -display none -no-reboot || true
|
|
if grep -q "Hello, world" iso_output.txt; then
|
|
echo "ISO Test Passed!"
|
|
else
|
|
echo "ISO Test Failed!"
|
|
cat iso_output.txt
|
|
exit 1
|
|
fi
|
|
|
|
echo "All tests passed!"
|