mirror of https://github.com/elliotnunn/cdg5.git
Introduce the CDG5 project
This commit is contained in:
parent
a03f4f95e8
commit
560051b29e
|
@ -1,8 +0,0 @@
|
|||
*.hqx
|
||||
*.o
|
||||
*.s
|
||||
*tbxi*
|
||||
prcl
|
||||
kernel-built
|
||||
PowerROM
|
||||
test-boot.img
|
181
Makefile
181
Makefile
|
@ -1,181 +0,0 @@
|
|||
# mount our current dir as /work in the container, and cd /work
|
||||
# --rm means don't keep this container after command is done
|
||||
# we are always root inside the container, but stay ourself outside
|
||||
# next arg should be the image to use (e.g. elliotnunn/toolboxtools)
|
||||
# then the next one should be the command to run
|
||||
DOCKER=docker run --volume="$$PWD":/work --workdir=/work --env=HOME=/work --user=$(shell id -u):$(shell id -g) --rm
|
||||
|
||||
# If there is a disassembled kernel (possibly edited) then use it. If not, use the stock kernel.
|
||||
ifeq ($(wildcard kernel-disasm.s),)
|
||||
KERNEL=kernel-stock
|
||||
else
|
||||
KERNEL=kernel-built
|
||||
endif
|
||||
|
||||
# We want these to re-run every time they are required
|
||||
.PHONY: test-boot.img kernel-redisassemble kernel-revert-to-stock test clean
|
||||
|
||||
Mac\ OS\ ROM.hqx: tbxi-data tbxi-rsrc
|
||||
$(DOCKER) elliotnunn/toolboxtools binhexmake --data=tbxi-data --rsrc=tbxi-rsrc --type=tbxi --creator=chrp --name='Mac OS ROM' 'Mac OS ROM.hqx'
|
||||
|
||||
tbxi-data tbxi-rsrc: base-tbxi rsrc-template datafork-pefs
|
||||
$(DOCKER) elliotnunn/toolboxtools tbximake tbxi-data tbxi-rsrc base-tbxi rsrc-template datafork-pefs/NQDResidentCursor datafork-pefs/ProcessMgrLib
|
||||
|
||||
base-tbxi: boot-script trampoline.elf prcl
|
||||
$(DOCKER) elliotnunn/toolboxtools bootmake --boot-script=boot-script --trampoline=trampoline.elf --parcels=prcl base-tbxi
|
||||
|
||||
PowerROM: PowerROM-nokern $(KERNEL)
|
||||
cp PowerROM-nokern "$@"
|
||||
dd if=$(KERNEL) of="$@" conv=notrunc seek=3211264 bs=1
|
||||
|
||||
kernel-built: kernel-disasm.s
|
||||
$(DOCKER) elliotnunn/powerpc-binutils as -many -mregnames --nops=2 -o kernel-built-intermed.o "$<"
|
||||
$(DOCKER) elliotnunn/powerpc-binutils objcopy -O binary -j .text kernel-built-intermed.o "$@"
|
||||
rm kernel-built-intermed.o
|
||||
|
||||
kernel-redisassemble:
|
||||
$(DOCKER) elliotnunn/powerpc-disasm python kernel-disasm-script.py --disasm kernel-disasm.s kernel-stock
|
||||
rm -f kernel-built*
|
||||
|
||||
# PowerROM is likely tainted by the rebuilt kernel. Kill.
|
||||
kernel-revert-to-stock:
|
||||
rm -f kernel-disasm.s PowerROM
|
||||
|
||||
# hfsutils rather annoyingly stores state in $HOME/.hcwd, so we put it here instead
|
||||
# The rsync allows us to leave the destination read-write in qemu
|
||||
test-boot.img: Mac\ OS\ ROM.hqx
|
||||
rsync test-template.img "$@"
|
||||
$(DOCKER) elliotnunn/hfsutils hmount "$@"
|
||||
$(DOCKER) elliotnunn/hfsutils hcopy -b 'Mac OS ROM.hqx' 'QEMU HD:System Folder:'
|
||||
rm .hcwd
|
||||
|
||||
test: test-boot.img
|
||||
qemu-system-ppc -M mac99 -m 512 -prom-env 'auto-boot?=true' -g 800x600x32 -drive format=raw,media=disk,file="$<"
|
||||
|
||||
clean:
|
||||
rm -f .hcwd base-tbxi 'Mac OS ROM.hqx' kernel-built kernel-built-intermed.o prcl PowerROM tbxi-data tbxi-rsrc test-boot.img
|
||||
|
||||
prcl: prcl-pefs PowerROM
|
||||
@echo making parcels... takes a while
|
||||
@$(DOCKER) elliotnunn/toolboxtools prclmake prcl \
|
||||
--prcl -f=00020000 -t=node -n='CodePrepare Node Parcel' -c='' \
|
||||
--bin -f=00000000 -t=cstr -n=name --data AAPL,CodePrepare \
|
||||
--bin -f=00000000 -t=csta -n=AAPL,prepare_order --data Placeholder \
|
||||
--bin -f=00020094 -t=nlib -n=TimeManagerLib -l --src=prcl-pefs/CodePrepare_TimeManagerLib \
|
||||
--bin -f=00020094 -t=nlib -n=NVRAMServicesLib -l --src=prcl-pefs/CodePrepare_NVRAMServicesLib \
|
||||
--bin -f=00020094 -t=nlib -n=RTCServicesLib -l --src=prcl-pefs/CodePrepare_RTCServicesLib \
|
||||
\
|
||||
--prcl -f=00010000 -t=node -n='CodeRegister Node Parcel' -c='' \
|
||||
--bin -f=00000000 -t=cstr -n=name --data AAPL,CodeRegister \
|
||||
--bin -f=00010094 -t=nlib -n=NativePowerMgrLib -l --src=prcl-pefs/CodeRegister_NativePowerMgrLib \
|
||||
--bin -f=00010094 -t=nlib -n=AGPLib -l --src=prcl-pefs/CodeRegister_AGPLib \
|
||||
--bin -f=00010194 -t=nlib -n=EtherPrintfLib -l --src=prcl-pefs/CodeRegister_EtherPrintfLib \
|
||||
--bin -f=00010094 -t=shlb -n=StartLib -l --src=prcl-pefs/CodeRegister_StartLib \
|
||||
\
|
||||
--prcl -f=00000000 -t='rom ' -n='Mac OS ROM Parcel' -c='' \
|
||||
--bin -f=00000005 -t='rom ' -n='' -l --src=PowerROM \
|
||||
\
|
||||
--prcl -f=00000000 -t=psum -n='Property Checksum' -c='' \
|
||||
--bin -f=00000000 -t=csta -n='' --data name model compatible device_type reg assigned-addresses slot-names vendor-id device-id class-code devsel-speed fast-back-to-back bootpath mac-address \
|
||||
--bin -f=00000000 -t=csta -n='' --data boot-rom macos \
|
||||
--bin -f=00000000 -t=csta -n='' --data Placeholder \
|
||||
--bin -f=00000000 -t=csta -n='' --data Placeholder \
|
||||
--bin -f=00000000 -t=csta -n='' --data usb ieee1394 \
|
||||
\
|
||||
--prcl -f=0000000c -t=prop -n=apple21143 -c=network \
|
||||
--bin -f=00000006 -t=shlb -n=lanLib,AAPL,MacOS,PowerPC -l --src=prcl-pefs/lanLib_apple21143 \
|
||||
\
|
||||
--prcl -f=00000009 -t=prop -n=backlight -c=backlight \
|
||||
--bin -f=00000000 -t=ndrv -n=driver,AAPL,MacOS,PowerPC --src=prcl-pefs/BacklightDriver \
|
||||
--bin -f=00000002 -t=cstr -n=code,AAPL,MacOS,name --data BacklightDriver \
|
||||
\
|
||||
--prcl -f=0000000c -t=prop -n=bmac+ -c=network \
|
||||
--bin -f=00000006 -t=shlb -n=lanLib,AAPL,MacOS,PowerPC -l --src=prcl-pefs/lanLib_bmac+ \
|
||||
\
|
||||
--prcl -f=0000000c -t=prop -n=cmd646-ata -c=ata \
|
||||
--bin -f=00000006 -t=ndrv -n=driver,AAPL,MacOS,PowerPC -l --src=prcl-pefs/ATA_CMD646_driver \
|
||||
\
|
||||
--prcl -f=00000008 -t=prop -n=cofb -c=display \
|
||||
--bin -f=00000024 -t=ndrv -n=driver,AAPL,MacOS,PowerPC -l --src=prcl-pefs/Display_driver \
|
||||
\
|
||||
--prcl -f=0000000c -t=prop -n=cuda -c=via-cuda \
|
||||
--bin -f=00000000 -t=ndrv -n=pef,AAPL,MacOS,PowerPC,register -l --src=prcl-pefs/PowerMgrPlugin_CUDA \
|
||||
--bin -f=00000002 -t=cstr -n=code,AAPL,MacOS,name --data PowerMgrPlugin \
|
||||
\
|
||||
--prcl -f=0000000c -t=prop -n=gmac -c=network \
|
||||
--bin -f=00000006 -t=shlb -n=lanLib,AAPL,MacOS,PowerPC -l --src=prcl-pefs/lanLib_gmac \
|
||||
\
|
||||
--prcl -f=0000000c -t=prop -n=grackle -c=pci \
|
||||
--bin -f=00000016 -t=nlib -n=pef,AAPL,MacOS,PowerPC,prepare -l --src=prcl-pefs/PCICyclesLib_Grackle \
|
||||
--bin -f=00000000 -t=cstr -n=code,AAPL,MacOS,name --data Grackle_PCICyclesLib \
|
||||
\
|
||||
--prcl -f=0000000c -t=prop -n=heathrow-ata -c=ide \
|
||||
--bin -f=00000006 -t=ndrv -n=driver,AAPL,MacOS,PowerPC -l --src=prcl-pefs/ATA_Heathrow_driver \
|
||||
\
|
||||
--prcl -f=0000000c -t=prop -n=heathrow-ata -c=ata \
|
||||
--bin -f=00000002 -t=ndrv -n=driver,AAPL,MacOS,PowerPC -l --src=prcl-pefs/ATA_Heathrow_driver \
|
||||
\
|
||||
--prcl -f=0000000c -t=prop -n=kauai-ata -c=ata \
|
||||
--bin -f=00000006 -t=ndrv -n=driver,AAPL,MacOS,PowerPC -l --src=prcl-pefs/ATA_Kauai_driver \
|
||||
\
|
||||
--prcl -f=0000000c -t=prop -n=keylargo-ata -c=ata \
|
||||
--bin -f=00000006 -t=ndrv -n=driver,AAPL,MacOS,PowerPC -l --src=prcl-pefs/ATA_KeyLargo_driver \
|
||||
\
|
||||
--prcl -f=0000000c -t=prop -n=keywest-i2c -c=i2c \
|
||||
--bin -f=00000006 -t=ndrv -n=driver,AAPL,MacOS,PowerPC -l --src=prcl-pefs/I2C_driver \
|
||||
\
|
||||
--prcl -f=0000000a -t=prop -n=mac-io -c=nvram \
|
||||
--bin -f=00000004 -t=ndrv -n=driver,AAPL,MacOS,PowerPC -l --src=prcl-pefs/NVRAM_mac-io_driver \
|
||||
\
|
||||
--prcl -f=00000001 -t=prop -n=macos -c='' \
|
||||
--bin -f=00000000 -t=cstr -n=MacOSROMFile-version --data 9.6f1 \
|
||||
\
|
||||
--prcl -f=0000000c -t=prop -n=nvram,flash -c=nvram \
|
||||
--bin -f=00000004 -t=ndrv -n=driver,AAPL,MacOS,PowerPC -l --src=prcl-pefs/NVRAM_flash_driver \
|
||||
\
|
||||
--prcl -f=0000000c -t=prop -n=pci104c,ac1a -c=cardbus \
|
||||
--bin -f=00000016 -t=ndrv -n=driver,AAPL,MacOS,PowerPC -l --src=prcl-pefs/CardBus_driver \
|
||||
--bin -f=00010094 -t=nlib -n=PCCard -l --src=prcl-pefs/CardBus_PCCard_lib \
|
||||
\
|
||||
--prcl -f=0000000c -t=prop -n=pci104c,ac50 -c=cardbus \
|
||||
--bin -f=00000016 -t=ndrv -n=driver,AAPL,MacOS,PowerPC -l --src=prcl-pefs/CardBus_driver \
|
||||
--bin -f=00010094 -t=nlib -n=PCCard -l --src=prcl-pefs/CardBus_PCCard_lib \
|
||||
\
|
||||
--prcl -f=0000020c -t=prop -n=pciclass,0c0010 -c=ieee1394 \
|
||||
--bin -f=00000004 -t=ndrv -n=driver,AAPL,MacOS,PowerPC -l --src=prcl-pefs/FireWire_driver \
|
||||
--bin -f=00010096 -t=nlib -n=FWServicesLib -l --src=prcl-pefs/FireWire_FWServicesLib \
|
||||
--bin -f=00010096 -t=nlib -n=DevNLib -l --src=prcl-pefs/FireWire_DevNLib \
|
||||
--bin -f=00010096 -t=nlib -n=DFMLib -l --src=prcl-pefs/FireWire_DFMLib \
|
||||
--bin -f=00010096 -t=nlib -n=GenericDriverFamily -l --src=prcl-pefs/FireWire_GenericDriverFamily \
|
||||
\
|
||||
--prcl -f=0000000c -t=prop -n=pmu -c=power-mgt \
|
||||
--bin -f=00000000 -t=ndrv -n=pef,AAPL,MacOS,PowerPC,register -l --src=prcl-pefs/PowerMgrPlugin_PMU \
|
||||
--bin -f=00000002 -t=cstr -n=code,AAPL,MacOS,name --data PowerMgrPlugin \
|
||||
--bin -f=00000002 -t=cstr -n=target-mode-capable --data SCSI \
|
||||
--bin -f=00010096 -t=nlib -n=PMULib -l --src=prcl-pefs/PMULib \
|
||||
\
|
||||
--prcl -f=0000000c -t=prop -n=uni-n-i2c -c=i2c \
|
||||
--bin -f=00000006 -t=ndrv -n=driver,AAPL,MacOS,PowerPC -l --src=prcl-pefs/I2C_driver \
|
||||
\
|
||||
--prcl -f=0000000c -t=prop -n=uni-north -c=pci \
|
||||
--bin -f=00000016 -t=nlib -n=pef,AAPL,MacOS,PowerPC,prepare -l --src=prcl-pefs/PCICyclesLib_UniNorth \
|
||||
--bin -f=00000002 -t=cstr -n=code,AAPL,MacOS,name --data UniNorth_PCICyclesLib \
|
||||
\
|
||||
--prcl -f=0000000a -t=prop -n=via-cuda -c=rtc \
|
||||
--bin -f=00000004 -t=ndrv -n=driver,AAPL,MacOS,PowerPC -l --src=prcl-pefs/RTC_CUDA_driver \
|
||||
\
|
||||
--prcl -f=0000000a -t=prop -n=via-pmu -c=nvram \
|
||||
--bin -f=00000004 -t=ndrv -n=driver,AAPL,MacOS,PowerPC -l --src=prcl-pefs/NVRAM_PMU_driver \
|
||||
\
|
||||
--prcl -f=0000000a -t=prop -n=via-pmu -c=rtc \
|
||||
--bin -f=00000004 -t=ndrv -n=driver,AAPL,MacOS,PowerPC -l --src=prcl-pefs/RTC_PMU_driver \
|
||||
\
|
||||
--prcl -f=0000000c -t=prop -n=via-pmu-2000 -c=power-mgt \
|
||||
--bin -f=00000000 -t=ndrv -n=pef,AAPL,MacOS,PowerPC,register -l --src=prcl-pefs/PowerMgrPlugin_PMU2000 \
|
||||
--bin -f=00000002 -t=cstr -n=code,AAPL,MacOS,name --data PowerMgrPlugin \
|
||||
--bin -f=00010096 -t=nlib -n=PMULib -l --src=prcl-pefs/PMULib \
|
||||
\
|
||||
--prcl -f=0000000c -t=prop -n=via-pmu-99 -c=power-mgt \
|
||||
--bin -f=00000000 -t=ndrv -n=pef,AAPL,MacOS,PowerPC,register -l --src=prcl-pefs/PowerMgrPlugin_PMU99 \
|
||||
--bin -f=00000002 -t=cstr -n=code,AAPL,MacOS,name --data PowerMgrPlugin \
|
||||
--bin -f=00010096 -t=nlib -n=PMULib -l --src=prcl-pefs/PMULib
|
BIN
PowerROM-nokern
BIN
PowerROM-nokern
Binary file not shown.
19
README.md
19
README.md
|
@ -1,2 +1,19 @@
|
|||
This repo is **obsolete**. We have ported our Mac OS ROM build system to MPW. Ask about the new CDG5 build system at the MacOS9Lives forum.
|
||||
# The CDG5 project
|
||||
|
||||
The CDG5 project is an effort to thoroughly reverse-engineer Mac OS 9.2.2, the final release of the "Classic" Mac OS. We place an emphasis on supporting late-model PowerPC G4-based Macs, and also on hacking new features into the OS (e.g. support for >1.5 GB RAM).
|
||||
|
||||
Our work is spread over several GitHub repositories:
|
||||
|
||||
- 3 MB 68k ROM: <http://github.com/elliotnunn/mac-rom>
|
||||
- 4 MB PowerPC rom, inc. NanoKernel: <http://github.com/elliotnunn/powermac-rom>
|
||||
- Bootable "Mac OS ROM" file: <http://github.com/elliotnunn/newworld-rom>
|
||||
- Disk-based Start Manager: <http://github.com/elliotnunn/boot3>
|
||||
- Bootloader-NanoKernel shim: <http://github.com/elliotnunn/wedge>
|
||||
|
||||
Some code patching tools:
|
||||
|
||||
- Move resources around: <http://github.com/elliotnunn/zcp>
|
||||
- Patch PowerPC binaries: <http://github.com/elliotnunn/patchpef>
|
||||
- Patch 68k MPW code objects: <http://github.com/elliotnunn/patchobj>
|
||||
|
||||
Most of our testing, and some of our discussion, takes place on the [MacOS9Lives](http://macos9lives.com) forums.
|
||||
|
|
237
boot-script
237
boot-script
|
@ -1,237 +0,0 @@
|
|||
<CHRP-BOOT>
|
||||
<COMPATIBLE>
|
||||
MacRISC
|
||||
</COMPATIBLE>
|
||||
<DESCRIPTION>
|
||||
MacROM for NewWorld.
|
||||
</DESCRIPTION>
|
||||
<ICON SIZE=64,64 COLOR-SPACE=3,3,2 >
|
||||
<BITMAP>
|
||||
0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF92FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4925B7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF92006EDBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDB0049B7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBBBFBBBFBBBFBBBFBBBFBBBFBBBFBB252577BFDFDFDFDFDFDFDFDFDFDFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFF772F332F2F2F332F2F2F332F2F2F332F2A055757575757575B57575B57575B579BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFF772F2F2F332F2F2F332F2F2F332F2F2F012E57575B575B57575757575757575777FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFF97132F0F2F132F0F2F132F0F2F0F2F0A0557575B5757575B57575B57575B575797FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFF772F2F330F2F2F2F0F2F0F2F2F332F052A575B5757535357575B57575B57575B97FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFF772F2F2F332F0F2B062F332F132F0A00575757575B25255B5757575B5757575797FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFF772F132F0F332F0B060F2F0F2F2F0529575B575B572525575B575757575B575777FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFF970F2F2F2F0F2F0B262F0F332F0A0053575757575B25255B57575B5757575B5797FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFF772F2F132F2F332F0F2F332F2F0501575B575B5757534F57575B57575B57575797FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFF772F2F2F132F2F2F2F132F2F0F052A575757575B5757575B57575757575B575797FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFF77330F332F0F2F132F2F0F2F2F00535757575B5757575B575757575B57575B5777FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFF972F2F2F2F332F2F132F2F132A00575B575B57575B5757575B5757575B57575797FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFF770F330F330F2F0F2F2F332F05255B575757575B5757575B57575B575757575797FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFF972F2F2F2F332F332F0F2F2F052A575B57575757575B5757575B57575B575B5797FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFF772F0F330F2F0F2F0F332F33052A5757575757575B5757575B575757575B575777FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFF772F2F2F332F332F2F2F0F2F050000000000002E57575B5757575B575757575B97FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFF77332F132F0F2F0F2F0F332F2A0A2A2A2A050053575B5757575B5757575B575797FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFF970F2F2F2F332F332F330F2F0F332F0F330600575757575B5757575B57575B5797FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFF772F332F132F0F2F0F2F2F332F2F332F0F2504575B575B57575753575B57575777FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFF772F2F2F2F0B060A2B0F2F0F332F0F2F33050557575B574F2E2505535757575B97FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFF772F0F330F332F2B0A0606060A0B0B2B0B05052A29250005292E575757575B5797FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFF970F2F2F2F0F2F132F2F0F2B0A0A060606010025292E53575B57575B575B575797FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFF772F330F332F132F2F2F2F2F332F2F2F2F0501575B575757575757575757575777FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFF77332F2F2F2F2F2F132F0F2F0F2F2F0F2F050057575B575B57575B575B57575B97FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFF772F2F2F0F332F132F2F2F332F332F2F332600535B575757575B5757575B575797FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFF970F330F332F0F2F2F132F0F2F0F330F2F0A004F57575B5757575B5757575B5797FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFF9B332F33332F3333332F333333332F33332F002A77777777777777777777777797FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDBDBDBDBDBDBDBDBDBDBDBDBDBDBFBDB2025B7DBDBDBDBDBDBDBDBDBDBDBDBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6E00B7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF006EFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB7B7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFDBDBFFFFFFFFFFFFFFDBDBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBB57539BFFFFFFFFFFFF775377DFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFF92006EFFFFFFFFFF6E2592FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF53B7DBDBBB53DFFFFFDF97DBFBBB33FFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFF2525FFFFFFFFFF2525DBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3397DBFFFFFFDF33DBFF57B7FFFFFF97DBFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFF9225B7FFFFFFB76E25DBFFFFFFFFFFFFFFFFFFFFFFFFFFDBB7FFFFFFFF7733B7FFFFFFFFFF9B53FF3397FFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFF92496EFFFFFFB79225DBFFFFB792496EFFFFFFB7926E49FFFFFFFFFFFF2F73FFFFFFFFFFFFDF0FDB5333FFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFDBB7B725FFFFFF929225DBFF9292FFFF00DBFF6EB7FFFF6E92FFFFFFFFFF0F93FFFFFFFFFFFFFF2F979B2F33DFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFDBB7FF00B7FFDBB7B725DBFF25B7FFFF25B7DB49DBFFFFFFB7FFFFFFFFDF0F97FFFFFFFFFFFFFF3373FFBB330F53FFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFDBDBFF6E49FFB7FFFF00DBFFFFFFFFFF00B74949FFFFFFFFFFFFFFFFFFDF2F97FFFFFFFFFFFFFF3373FFFFFF972F33FFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFDBDBFFB725FF92FFFF00DBFFFFFFDB9225B7256EFFFFFFFFFFFFFFFFFFFF2F97FFFFFFFFFFFFFF2F73FFFFFFFFBB2F97FFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFB7DBFFFF006EB7FFFF00B7FFFFB7DBFF25B7256EFFFFFFFFFFFFFFFFFFFF3373FFFFFFFFFFFFDF2F97FFFFFFFFFF7773FFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFB7DBFFFF4925DBFFFF00B7FF6EB7FFFF25B76E49FFFFFFFFFFFFFFFFFFFF9B33FFFFFFFFFFFF5753B7BBFFFFFFFF7773FFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFF92DBFFFFDB49DBFFFF00B7FF25B7FFB700B7FF25DBFFFFFFFFFFFFFFFFFFFF5377FFFFFFFFBB3397DF53FFFFFFFF57B7FFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFDB2549DBFFFFB7FFDB490049DB254992DB2549DB9225DBFF92FFFFFFFFFFFFFFFF5397FFFFBB53B7FBFF3397FFFF77B7DBFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFB792DBFFFFFFFFFFB7B7B7DBB76EB7FFDB92DBFFB76E6EB7FFFFFFFFFFFFFFFFFFB7737797DBFFFFFFFF977397BBDBFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B
|
||||
</BITMAP>
|
||||
</ICON>
|
||||
<BOOT-SCRIPT>
|
||||
here >r
|
||||
dev /
|
||||
" model" active-package get-package-property abort" can't find MODEL"
|
||||
decode-string 2swap 2drop " iMac,1" $= ?dup 0= if
|
||||
" compatible" active-package get-package-property abort" can't find COMPATIBLE"
|
||||
false >r
|
||||
begin
|
||||
dup while
|
||||
decode-string here over 2swap bounds ?do
|
||||
i c@ dup [char] A [char] Z between if h# 20 xor then c,
|
||||
loop
|
||||
2dup " macrisc" $= r> or >r
|
||||
2drop
|
||||
repeat
|
||||
2drop r>
|
||||
then
|
||||
r> here - allot
|
||||
0= abort" this image is not for this platform"
|
||||
decimal
|
||||
1 load-base load-size 14 - adler32 load-base load-size + 12 - 12 ['] eval catch if
|
||||
2drop ." , bad checksum value" -1
|
||||
then
|
||||
<> if
|
||||
." , checksum error"
|
||||
abort
|
||||
then
|
||||
hex
|
||||
dev /openprom
|
||||
0 0 " supports-bootinfo" property device-end
|
||||
" /chosen" find-package 0= abort" can't find '/chosen'" constant /chosen
|
||||
" memory" /chosen get-package-property abort" memory??" decode-int constant xmem 2drop
|
||||
" mmu" /chosen get-package-property abort" mmu??" decode-int constant xmmu 2drop
|
||||
" AAPL,debug" " /" find-package 0= abort" can't find '/'" get-package-property if
|
||||
false
|
||||
else
|
||||
2drop true
|
||||
then
|
||||
constant debug?
|
||||
debug? if cr ." checking for RELEASE-LOAD-AREA" then
|
||||
" release-load-area" $find 0= if 2drop false then constant 'release-load-area
|
||||
debug? if 'release-load-area if ." , found it" else ." , not found" then then
|
||||
: do-translate " translate" xmmu $call-method ;
|
||||
: do-map " map" xmmu $call-method ;
|
||||
: do-unmap " unmap" xmmu $call-method ;
|
||||
: claim-mem " claim" xmem $call-method ;
|
||||
: release-mem " release" xmem $call-method ;
|
||||
: claim-virt " claim" xmmu $call-method ;
|
||||
: release-virt " release" xmmu $call-method ;
|
||||
1000 constant pagesz
|
||||
pagesz 1- constant pagesz-1
|
||||
-1000 constant pagemask
|
||||
h# 005000 constant elf-offset
|
||||
h# 017008 constant elf-size
|
||||
elf-size pagesz-1 + pagemask and constant elf-pages
|
||||
h# 01C008 constant parcels-offset
|
||||
h# 2617C4 constant parcels-size
|
||||
parcels-size pagesz-1 + pagemask and constant parcels-pages
|
||||
h# 27D7CC constant info-size
|
||||
info-size pagesz-1 + pagemask and constant info-pages
|
||||
0 value load-base-claim
|
||||
0 value info-base
|
||||
'release-load-area if
|
||||
load-base to info-base
|
||||
else
|
||||
load-base info-pages 0 ['] claim-mem catch if 3drop 0 then to load-base-claim
|
||||
info-pages 1000 claim-virt to info-base
|
||||
load-base info-base info-pages 10 do-map then
|
||||
\ allocate room for both images
|
||||
parcels-pages 400000 claim-mem constant rom-phys parcels-pages 1000 claim-virt constant rom-virt rom-phys rom-virt parcels-pages 10 do-map
|
||||
elf-pages 1000 claim-mem constant elf-phys elf-pages 1000 claim-virt constant elf-virt
|
||||
elf-phys elf-virt elf-pages 10 do-map info-base elf-offset + elf-virt elf-size move debug? if cr ." elf-phys,elf-virt,elf-pages: " elf-phys u. ." , " elf-virt u. ." , " elf-pages u. then
|
||||
\ copy the compressed image
|
||||
debug? if cr ." copying compressed ROM image" then
|
||||
rom-virt parcels-pages 0 fill
|
||||
info-base parcels-offset + rom-virt parcels-size move
|
||||
'release-load-area 0= if
|
||||
info-base info-pages do-unmap load-base-claim ?dup if info-pages release-mem then
|
||||
then
|
||||
debug? if cr ." MacOS-ROM phys,virt,size: " rom-phys u. ." , " rom-virt u. ." , " parcels-size u. then
|
||||
\ create the actual property
|
||||
debug? if cr ." finding/creating '/rom/macos' package" then
|
||||
device-end 0 to my-self
|
||||
" /rom" find-device
|
||||
" macos" ['] find-device catch if 2drop new-device " macos" device-name finish-device then
|
||||
" /rom/macos" find-device
|
||||
debug? if cr ." creating 'AAPL,toolbox-parcels' property" then
|
||||
rom-virt encode-int parcels-size encode-int encode+ " AAPL,toolbox-parcels" property
|
||||
device-end
|
||||
debug? if cr ." copying MacOS.elf to load-base" then
|
||||
'release-load-area if
|
||||
load-base elf-pages + 'release-load-area execute
|
||||
else
|
||||
load-base elf-pages 0 claim-mem
|
||||
load-base dup elf-pages 0 do-map then
|
||||
elf-virt load-base elf-size move
|
||||
elf-virt elf-pages do-unmap elf-virt elf-pages release-virt
|
||||
elf-phys elf-pages release-mem
|
||||
debug? if cr ." init-program" then
|
||||
init-program
|
||||
debug? if cr ." .registers" .registers then
|
||||
debug? if cr ." go" cr then
|
||||
|
||||
\ uncomment to show kernel log
|
||||
" /" select-dev
|
||||
2000000 encode-int " AAPL,debug" property
|
||||
|
||||
go
|
||||
cr ." end of BOOT-SCRIPT"
|
||||
</BOOT-SCRIPT>
|
||||
<OS-BADGE-ICONS>
|
||||
1010
|
||||
000000000000000000ABFE0000000000
|
||||
0000000000000000ABFF000000000000
|
||||
ABABABABABABABABFFABABABABABABAB
|
||||
AB7F7F7F7F7F7FFF7F2A2A2A2A2A2AAB
|
||||
AB7F7F7FF17F7FFF542A2AFF2A2A2AAB
|
||||
AB7F7F7FF17FABFF2A2A2AFF2A2A2AAB
|
||||
AB7F7F7F7F7FFF7F2A2A2A2A2A2A2AAB
|
||||
AB7F7F7F7F7FFF542A2A2A2A2A2A2AAB
|
||||
AB7F7F7F7F7FFFFFFFFF2A2A2A2A2AAB
|
||||
AB7F7F7F7F7F7F7F7FFF2A2A2A2A2AAB
|
||||
AB7F7FFFF17F7F7F7FFF2A2AFFFF2AAB
|
||||
AB7F7F7F7FF1F1F1F1FFFFFF542A2AAB
|
||||
AB7F7F7F7F7F7F7F7FFF2A2A2A2A2AAB
|
||||
ABABABABABABABABABFFABABABABABAB
|
||||
000000000000000000ABFF0000000000
|
||||
00000000000000000000ABFF00000000
|
||||
000000000000000000F3FF0000000000
|
||||
0000000000000000F3FF000000000000
|
||||
F3F3F3F3F3F3F3F3FFF3F3F3F3F3F3F3
|
||||
F3AAAAAAAAAAAAFFAA555555555555F3
|
||||
F3AAAAAAF4AAAAFF7F5555FF555555F3
|
||||
F3AAAAAAF4AAF3FF555555FF555555F3
|
||||
F3AAAAAAAAAAFFAA55555555555555F3
|
||||
F3AAAAAAAAAAFF7F55555555555555F3
|
||||
F3AAAAAAAAAAFFFFFFFF5555555555F3
|
||||
F3AAAAAAAAAAAAAAAAFF5555555555F3
|
||||
F3AAAAFFF4AAAAAAAAFF5555FFFF55F3
|
||||
F3AAAAAAAAF4F4F4F4FFFFFF7F5555F3
|
||||
F3AAAAAAAAAAAAAAAAFF5555555555F3
|
||||
F3F3F3F3F3F3F3F3F3FFF3F3F3F3F3F3
|
||||
000000000000000000F3FF0000000000
|
||||
00000000000000000000F3FF00000000
|
||||
000000000000000000FFFE0000000000
|
||||
0000000000000000FFFF000000000000
|
||||
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
|
||||
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
|
||||
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
|
||||
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
|
||||
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
|
||||
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
|
||||
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
|
||||
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
|
||||
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
|
||||
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
|
||||
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
|
||||
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
|
||||
000000000000000000FFFF0000000000
|
||||
00000000000000000000FFFF00000000
|
||||
</OS-BADGE-ICONS>
|
||||
</CHRP-BOOT>
|
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
BIN
kernel-stock
BIN
kernel-stock
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
prcl-pefs/PMULib
BIN
prcl-pefs/PMULib
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
rsrc-template
BIN
rsrc-template
Binary file not shown.
Before Width: | Height: | Size: 600 KiB |
Binary file not shown.
BIN
trampoline.elf
BIN
trampoline.elf
Binary file not shown.
Loading…
Reference in New Issue