These are alternate boot personality capsules, not files doe.4th dispatches from -- confirmed by reading doe.4th itself (it generates its own synthetic workload internally, DOE-WORK) and mkcapsule.c (only the exact filename "init.4th" is special-cased as the active MAMA_INIT capsule). "workload-N.4th" names them for what they are without colliding with that reserved name. Renamed the 10 files (git mv, preserving history) and their own self-referential header comments (also fixed a pre-existing typo, "init-4.th" -> "workload-4.4th"), updated capsules/README.md, capsules/MANIFEST.md (21 references), .claude/CLAUDE.md, and a tools/mkcapsule.c comment. Also fixed experiments/bare_metal/README.md's "Adding a Custom Workload Capsule" section, discovered stale while doing this rename: it documented a WL-HI/WL-LO dispatch table and a wl_id CSV column that don't exist anywhere in the current capsules/ tree or doe.4th's own CSV header -- corrected to describe what's actually there (no pluggable workload dispatch; a custom workload is run by substituting it in as the boot's own init.4th). Verified: mkcapsule --lint clean (35 files, 0 violations), all 3 architectures build with zero new warnings, amd64 boots to zuse)ok> with an unchanged dict_hash/capsule_hash from every prior boot this session (0xc8f4b09e36f4fc4a / 0x1ef4939ed32ec1e6) and zero faults. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EXieurDfDSsDFdnSyusuWo
76 lines
1.3 KiB
Forth
76 lines
1.3 KiB
Forth
|
|
Block 4706
|
|
|
|
( TRIANGLE WAVE WORKLOAD - Linear ramp up/down )
|
|
( Randomized amplitude and frequency )
|
|
|
|
: COMPUTE ( n -- )
|
|
0 SWAP 0 DO I 7 * + LOOP DROP ;
|
|
|
|
: RAMP-STEP ( intensity -- )
|
|
50 * COMPUTE ;
|
|
|
|
Block 4715
|
|
( Rising edge with random perturbation )
|
|
42 SEED
|
|
: RISING-EDGE ( steps -- )
|
|
0 DO
|
|
I 1+
|
|
90 110 RANDOM 100 */ RAMP-STEP
|
|
10 80 120 RANDOM 100 */ WAIT
|
|
LOOP ;
|
|
: FALLING-EDGE ( steps -- )
|
|
DUP 0 DO
|
|
OVER I -
|
|
90 110 RANDOM 100 */ RAMP-STEP
|
|
10 80 120 RANDOM 100 */ WAIT
|
|
LOOP DROP ;
|
|
|
|
Block 4725
|
|
|
|
( Triangle wave cycles with random amplitude/frequency )
|
|
|
|
: TRIANGLE-CYCLE ( peak-steps -- )
|
|
DUP RISING-EDGE
|
|
FALLING-EDGE ;
|
|
|
|
: TRIANGLE-WAVE ( cycles peak -- )
|
|
SWAP 0 DO
|
|
DUP
|
|
70 130 RANDOM 100 */
|
|
TRIANGLE-CYCLE
|
|
LOOP DROP ;
|
|
|
|
3 10 TRIANGLE-WAVE
|
|
|
|
Block 4735
|
|
( Asymmetric triangles - fast rise, slow fall )
|
|
7777 SEED
|
|
: ASYM-TRIANGLE ( -- )
|
|
8 0 DO
|
|
I 1+ 80 120 RANDOM 100 */ RAMP-STEP
|
|
20 WAIT
|
|
LOOP
|
|
8 0 DO
|
|
8 I - 80 120 RANDOM 100 */ RAMP-STEP
|
|
80 120 RANDOM WAIT
|
|
LOOP ;
|
|
: RUN-ASYM 4 0 DO ASYM-TRIANGLE LOOP ;
|
|
RUN-ASYM
|
|
|
|
Block 4745
|
|
|
|
( Sawtooth variant - all rise, sharp drop )
|
|
|
|
54321 SEED
|
|
|
|
: SAWTOOTH ( steps -- )
|
|
0 DO
|
|
I 1+ 85 115 RANDOM 100 */ RAMP-STEP
|
|
15 60 140 RANDOM 100 */ WAIT
|
|
LOOP
|
|
50 WAIT ;
|
|
|
|
: RUN-SAW 3 0 DO 12 SAWTOOTH LOOP ;
|
|
RUN-SAW
|