ESP32-S3 Bench Guide
ESP32‑S3 N16R8 벤치 가이드: 실시간 핀아웃, 강의, 시뮬레이터 및 벤치 로그
트리톤 1993년 MS‑DOS 데모 Crystal Dream II를 역공학한 현장 안내서, 인터랙티브 브라우저와 바이트 단위 검증 투어 제공
A reverse-engineering field guide to Triton's 1993 MS-DOS demo Crystal Dream II, with an interactive browser look-alike and an annotated tour of routines checked byte-for-byte against the binary.
교육Python · HTMLGitHub @kassoulet온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗A static, dependency-free website about Triton's 1993 MS-DOS demo Crystal Dream II: the production, the reverse-engineering process, annotated routines checked against the binary, and a playable browser look-alike (with pause and seek).
From this directory:
python3 -m http.server 8765
Then open http://127.0.0.1:8765/.
Opening index.html directly also works in modern browsers, but a local
server is recommended so that the captured PNGs and scripts load with the
right MIME types.
index.html — the long-form article and recreation UIcss/site.css — all styling, including the CRT effect and responsive layoutjs/site.js — navigation, scroll reveals, syntax highlighting, copy buttonsjs/demo.js — the 320×200 JavaScript recreation and its scene engineassets/ — stills captured from the original executable (intro strip)assets/orig/ — files decoded from the archive inside CD2.EXE: pictures (PNG), the four .mod songs, megafrac.datjs/modplayer.js — offline MOD mixer (4/8 channels) used for the soundtrackjs/demo3d.js — small software 3D renderer for the decoded .TVO models (Earth, chessboard)tools/ — unpack.py (run the EXE's own unpacker), extract.py (the 58-file archive), convert_assets.py (TGA/IFF to PNG), render_pages.py (the six text pages), read_tvo.py (3D objects), export_data.py (objects.json, pages.json, strip.png), run_fractal.py + extract_fractal_map.py (the fractal scaler under emulation and its pixel map), run_plasma.py (the plasma routines under emulation vs the port), run_title.py (cube title card), run_cube.py + export_cube.py (cube scene loop under emulation → assets/orig/cube_frames.bin, replayed by the player), run_slime.py + export_slime.py (the Vectorslime scene under emulation → assets/orig/slime_frames.bin; needs CD2_FONT = the extracted Nice-f16.LBM), run_tunnel.py (tunnel flight under emulation; export_slime.py frames.npz tunnel_frames.bin 4750 packs it), run_intro.py (the intro under emulation; packed with export_cube.py), gen_asm.py, test_mod.js, test_3d.jsCD2.EXE — the original 3,154,579-byte release binary, kept for referenceThe recreation does not execute CD2.EXE. The effects are reimplemented in
JavaScript from the disassembly and captured frames. The original executable
is included for preservation and research; Crystal Dream II remains the work
of Triton.
The player keeps its 320×200 buffer inside a 4:3 frame, stretching the pixels vertically the way a VGA CRT did; the captured stills are shown the same way.
pip install unicorn
python3 tools/unpack.py # runs the EXE's own unpacker -> tools/img.bin
python3 tools/gen_asm.py # prints the asm cards used in index.html (needs ndisasm)
python3 tools/extract.py out/ # the 58 embedded files, decoded
python3 tools/convert_assets.py out/ png/ # pictures to PNG
python3 tools/export_data.py out/ assets/orig # objects.json, pages.json, page PNGs, strip.png
node tools/test_mod.js # smoke-test the MOD renderer
Every byte listing in index.html was verified against tools/img.bin.
Partly decoded: the .TVW world files. Unknown: the provenance of the
packer stub, and which module the original plays in which scene (the page uses
the Credits page's composer split and guesses within each pair).
The Information page prints private home addresses and phone numbers; they are
left out of the site.
The decoded assets in assets/orig/ are Triton's original work, kept here with the EXE for preservation and research.
.github/workflows/pages.yml checks the JavaScript and Python syntax and publishes the static site (index.html, css/, js/, assets/; not tools/ or CD2.EXE) to GitHub Pages on every push to main. Enable it once under Settings → Pages → Source: GitHub Actions.