Tutorial

Writing the disc, running it, and reading what comes back. Every console firmware version matters here, so check yours first.

Each statement below carries a label. V means I measured it from the published files and you can re-measure it. I means I inferred it from the disc's own structures and the strings its code prints. P means ordinary disc-burning practice, which I did not measure.

I ran this on my own PS4 at 14.00 and it worked, so the flow below is what I expect you to meet. The exact text the disc prints is quoted from the payload's class files, so it is word-perfect. Your burner, disc brand and console revision are different, and the result is yours to confirm at your own risk.

Contents

  1. Pick the image
  2. Verify the download
  3. Look inside without burning
  4. Write the disc
  5. Prepare the console
  6. Run it
  7. Every message the disc prints
  8. Confirm the result
  9. When it fails
  10. Troubleshooting

Pick the image

Burn one file and keep its hash. hen.iso is the canonical disc and matches the reference digest for the Bonk HEN 14.00 release. hen-branded.iso carries an updated credit line in NOTICE.txt and behaves the same.

Verify the download

# Windows PowerShell
Get-FileHash -Algorithm SHA256 .\hen.iso

# Linux and macOS
sha256sum hen.iso

Compare against the table on the home page, or run sha256sum -c SHA256SUMS.txt in the folder you downloaded everything to. A corrupted download stops at preflight with PREFLIGHT FAIL: and does nothing else, which is the safe failure, but it costs you a boot.

Look inside without burning

Mount the image or open it in 7-Zip. You should see these sizes, all verifiable [V]:

BDMV/BDJO/00000.bdjo            164 B    auto-run applet: org.bdj.InitXlet
BDMV/JAR/00000.jar          192,403 B    signed payload, 78 entries
BDMV/STREAM/00000.m2ts    3,975,168 B    the stream the player opens
BDMV/PLAYLIST/00000.mpls        170 B
BDMV/CLIPINF/00000.clpi       1,136 B
BDMV/index.bdmv                 526 B
BDMV/MovieObject.bdmv         7,402 B
BDMV/AUXDATA/00000.otf      234,304 B    BD-J fonts
NOTICE.txt                      564 B    safety notice, sector 448
x/offline/Hx1400.class       56,859 B    kernel stage, loaded from the disc
CERTIFICATE/id.bdmv, app.discroot.crt, bu.discroot.crt
UDF 2.50, volume label BONKHEN, 3,040 sectors of 2,048 bytes

If your tool cannot read the volume label, try a different tool before deciding the image is wrong. UDF 2.50 with UCS-2 directory records trips up some older extractors.

Write the disc

The image has to go on as a raw sector image. Copying hen.iso onto a disc as a file gives you a data disc with nothing to auto-play, and that is the single most common reason a disc "does nothing".

Windows, ImgBurn P

  1. Write image file to disc, select your ISO.
  2. Pick the slowest write speed the drive and disc both support.
  3. Tick Verify.
  4. Write, then let the session close. Leave it single-session and finalized.

Windows, AnyBurn P

Copy/Write image file to disc, with the same speed and verify choices.

Linux P

sudo growisofs -dvd-compat -speed=2 -Z /dev/sr0=hen.iso
isoinfo -d -i /dev/sr0        # expect: Volume id is "BONKHEN"

macOS P

hdiutil burn hen.iso

Prove the payload survived the burn

The JAR sits at sectors 596 through 689. Reading it back off the disc and matching its hash rules out a bad write in one step [V]:

# Linux
dd if=/dev/sr0 bs=2048 skip=596 count=95 2>/dev/null | dd bs=1 count=192403 2>/dev/null | sha256sum

# Windows: mount the disc, then
(Get-FileHash E:\BDMV\JAR\00000.jar -Algorithm SHA256).Hash

Both must print d6b16769366df24d50623afdaefab6b2299ff02bb816ea30da7839a572b3c0ed. If they do not, re-burn slower or change disc brand before you blame the exploit.

Prepare the console

  1. Check firmware under Settings, System, System Information. Anything other than 14.00 means this disc is the wrong tool.
  2. Copy important saves to USB or cloud. A panic during a write is the realistic data-loss path.
  3. Take the console offline for early runs. Unplug Ethernet or cut Wi-Fi at the router. Safety explains what that buys you.
  4. Shut the console down completely, so you start from a clean boot. Rest mode does not count.
  5. Set a phone camera to record the screen. Reading a report line after a reboot beats remembering it.

Run it

  1. Insert the disc on the home screen while signed into a normal user profile.
  2. The player opens the disc and the BD-J applet starts on its own [V]. You do not choose it from a menu.
  3. A HAVI screen appears headed BONK HEN 14.00 with a running log. The twenty-five preflight checks happen in a background thread. Wait for them.
  4. When LOCAL PREFLIGHT PASS. Press X once to run. appears, press X exactly once.
  5. Let the report lines finish. Once Entering one-shot Hx/HEN stage is on screen, the kernel stage is live, so leave the disc, the controller and the power alone.
  6. Keep the disc inserted until you have read the last line and recorded the outcome.

Every message the disc prints

Quoted from the payload's class files [V].

Preflight, healthy

On screenMeaning
Bonk HEN local asset preflightPreflight started.
Four local helper classes verifiedThe four x/offline classes match their pins.
All 40 local command templates verifiedAll forty cmd-*.bin templates match their pins.
Exact HEN image verified in signed JARbonk/hen.bin matches its pin and came from the signed JAR.
Command 32 uses verified local HEN URLThe HEN path resolved to the local file: resource.
Command 2 helper status: …Helper object construction report.
Native code-window branch verifiedCode-window expectations hold.
LOCAL PREFLIGHT PASS. Press X once to run.Your cue. Press X once.

Preflight, stopped

On screenMeaning and what to do
PREFLIGHT FAIL: reasonAn asset missed its pin and nothing executed. Re-verify the download and re-burn. This fixes most cases.
Xlet is not in a disc JARThe payload thinks it is not running from a real disc JAR. Usually the ISO was copied as a file. Re-burn raw.
HEN URL is not verified local JAR resourceThe HEN image did not resolve to the signed JAR. Check media and burn.
Hx diagnostic shape changed, HEN assignment framing changed, HEN sentinel not uniquePayload structure differs from what the verifier expects. That points at a corrupted read rather than a console fault. Re-verify and re-burn.
Marker scan: no match (-1), Marker scan: helper exception (-2)Marker plan scan found nothing or errored. Re-burn, and report it if it repeats.

Run and result

On screenMeaning
Attempt 1 started: local interpreter commandsThe gated sequence began. There will be no attempt 2 in this boot.
Bonk HEN one-shot local runExecuting the reconstructed templates.
STOP at command NA stage reported a result that did not match its expected shape. Nothing after N ran. Note N.
ledger stoppedThe result ledger ended the sequence.
Entering one-shot Hx/HEN stageKernel stage running. Touch nothing.
Hx summary: …The kernel stage's own summary.
Hx reports HEN start. Verify menu and kernel R/W separately.Best-case marker, and the payload declines to call it success. Go to step 8.
H8 kept: hen mapThe HEN mapping survived the stage.
H2 /data/hen audit: …Audit of the /data/hen object.
K NOT fully appliedFailure. The patch set is incomplete.
Hx reported failed pairingFailure. Kernel-object pairing did not complete, and the disc warns this stage may still have written unknown kernel objects.
Hx reported incomplete kexec patchFailure. The syscall path was not fully patched.
Hx status remained pendingNo verdict returned.
Hx still running; read-only status …Stage unfinished; status read without touching it.
jitshm mmap for hen failed, helper setup failed, marker scan failed, local HEN command too longFailure in the named step.
No retry in this boot. Cold reboot before another attempt.Follow step 9 exactly.
Hx final report missing, Hx success summary incomplete, Hx HEN or patch log incomplete, Hx report could not be decoded for displayThe result could not be read. Treat the run as unknown rather than successful.

Confirm the result

The on-disc notice says a displayed success report needs independent verification on the console, and the payload repeats the instruction. A green line is the program's opinion about its own work. Check both halves:

  1. Kernel read/write. A homebrew loader has to observe patched kernel access. If you have no way to test that, you cannot claim HEN applied.
  2. The HEN menu. The native stage embeds a settings UI. Its own resources define these toggles, with the offsets inside the image [V]:
OffsetToggleIts own description
0x03b813Enable exploit fixesAttempts to repatch bad or missing patches that should have been made by the exploit, to keep the system stable after the initial jailbreak.
0x03b911Enable memory mapping patchesMemory mapping patches for decrypting binary files, so the system can handle encrypted executables and libraries.
0x03ba0eBlock firmware updatesUnmounts the /update partition so an update cannot land. The disc asks you to confirm this one.
0x03c3f8Write HEN plugin files to HDDWrites the default HEN plugin PRX files to the internal drive. The image's own text recommends this for first-time setup.

If that menu is reachable, the menu half is satisfied. If it is not reachable, HEN did not apply regardless of what the disc printed. On a first success, turn on the plugin write option and leave the other three off until you have a reason for them, since each one changes kernel or filesystem state.

Once you have a working run, send me a photo or screenshot of the screen. Firmware, model and the last line are the useful parts.

When it fails

  1. Do not retry inside the same boot. The disc enforces this and states it twice, and the native stage warns that armed-but-missed patches are cleared by a cold reboot. Retrying on top of leftover kernel state is the reliable way to turn a failed attempt into a corrupted one.
  2. Cold reboot properly: hold the power button until the console is fully off, or unplug it for about thirty seconds. Restart from the menu and rest mode both fail to clear it.
  3. Power on and make one attempt.
  4. Two failures with the same STOP at command N or the same preflight reason means stop and report it. The exact line and your firmware are the whole diagnosis.

Troubleshooting

SymptomLikely causeDo
Console says the disc is unsupportedISO copied onto the disc as a fileRe-burn in raw image mode
Disc reads but nothing auto-playsPlayer opened a data or movie viewRe-burn slower, finalize, try another disc brand
Black screen, no textDrive read errors, or BD-J fonts not renderingRe-check the JAR read-back from step 4
PREFLIGHT FAIL on a hash lineCorrupt burn or corrupt downloadCheck the download hash, then re-burn
Freeze at Entering one-shot Hx/HEN stageKernel stage is liveWait it out, then follow step 9
Panic or boot loop after a reported successThe stage wrote further than expectedStop. Cold reboot. Console health comes before the experiment.
Worked once, never again after an updateFirmware moved off 14.00Nothing this disc can do about it

Reporting a problem

Send these in order: firmware exactly as the console prints it, which image you burned and its verified hash, burner model, disc brand, write speed, whether verify-after-write passed, and the exact last line on screen. Say clearly whether LOCAL PREFLIGHT PASS appeared at all, because that one fact separates an asset mismatch from a declined kernel stage, and they are different problems. Keep serials, MAC addresses and PSN credentials out of it.