Texturing (validated live -- game-live-textured.png, the ravine's brown dirt terrain): the wire model is Division's intensity+ramp scheme. action 26 uploads 8-bit intensity texels ([node][nbytes][w][h] + rows; type 13 = texture); texmap (12) references the texture; material (11) references its texmap and a ramp (14: lo/hi RGB); texel color = lerp(lo, hi, i/255). The backend bakes RGBA per material, uploads to GL, maps with wire UVs (stride-5: floats 3-4; stride-8/9: floats 6-7). Serial (directserial fork options, tracked in vpx-device/serialport/): - rxpollus:<us> -- receive poll tick (stock 1ms); 100us discovers inbound bytes ~10x sooner. Validated: sim advanced, camera moved with real RIO. - rxburst:<n> -- stock DOSBox re-serializes received bytes at emulated wire speed (~1ms/byte at 9600) though they already paid wire time on the real cable; a 15-byte analog reply gained ~14ms, blowing the RIO's few-ms ACK window and dropping the game into its 15-second retry fallback (L4CTRL.CPP limit=15.0 //0.2). rxburst:16 delivers buffered bytes 16x faster. game_rio.conf: realport:COM1 rxpollus:100 rxburst:16. Crash-on-advance fixed: *_TSHD.BGF terrain shadows live only in arena subdirs the search path misses; null shadow renderable was dereferenced once the sim moved. All 11 copied into VIDEO/GEO in the working image; game now runs sustained (560+ frames, textured, no crash). Details in RIO-NOTES.md. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
43 lines
1.5 KiB
Plaintext
43 lines
1.5 KiB
Plaintext
[sdl]
|
|
output=opengl
|
|
[dosbox]
|
|
memsize=32
|
|
machine=svga_s3
|
|
[cpu]
|
|
# The RIO drops comms if an ACK is late by more than a few ms. Empirically
|
|
# (2026-07-03) a SLOWER CPU makes it fail SOONER -> the ACK latency is
|
|
# dominated by how fast the game processes the RIO packet and replies, so we
|
|
# run the CPU as fast as possible:
|
|
# - core=dynamic: recompiler, many x faster than the 'normal' interpreter.
|
|
# - cycles=max: full host speed.
|
|
core=dynamic
|
|
cputype=pentium
|
|
cycles=max
|
|
# RIO cockpit controls on COM1 (Phase 5 passthrough), plasma COM2 later.
|
|
[serial]
|
|
# Custom fork options for the RIO's few-ms ACK deadline:
|
|
# rxpollus:100 -- host-port receive poll tick in microseconds (stock=1000);
|
|
# discovers inbound bytes ~10x sooner.
|
|
# rxburst:16 -- deliver host-buffered bytes 16x faster than emulated wire
|
|
# speed. Stock DOSBox re-serializes each received byte at
|
|
# ~1ms (9600 baud) even though the bytes already paid wire
|
|
# time on the physical cable -- a 15-byte analog reply got
|
|
# +14ms of artificial latency, blowing the RIO's window and
|
|
# dropping the game into its 15-second retry fallback
|
|
# ("really slow polling").
|
|
serial1=directserial realport:COM1 rxpollus:100 rxburst:16
|
|
serial2=disabled
|
|
[autoexec]
|
|
mount c "C:\VWE\TeslaRel410\ALPHA_1"
|
|
c:
|
|
cd \REL410\BT
|
|
set VIDEOFORMAT=svga
|
|
set BLASTER=A220 I5 D1 H5 P330 T6
|
|
set TEMP=c:\
|
|
call setenv.bat r s n n
|
|
32rtm.exe -x
|
|
btl4opt.exe -egg test.egg
|
|
32rtm.exe -u
|
|
echo ALPHA1-RUN-DONE
|
|
pause
|