mirror of
https://git.k-space.ee/arti/vt1200.git
synced 2026-10-31 12:05:05 +02:00
Byte stores to VRAM measure 2284 ms per 1280x1024 frame on the real unit (0.44 fps) -- about a scanline period per byte, i.e. almost no access through the arbiter. vram.asm now drives the GSP's array engine instead: FILL L with DADDR/DPTCH/DYDX/COLOR1 (B2/B3/B7/B9), PSIZE=1, PMASK=0 and PPOP=0, per the TMS34010 User's Guide's implied-operand table, with CONTROL read-modify-written so CD/RM/RR survive. Measured: 32.7 ms/frame, 30.6 fps on the unit; 27.1 ms in MAME (74x over byte stores there, 70x on hardware). 2,508,224 destination words/s = 0.40 us/word. Consequence for video: a full uncompressed frame is wire-limited at 8 fps (163840 B at 1.27 MB/s); a small source expanded on the device is limited by the ~33 ms transfer, i.e. ~30 fps full screen if the expansion uses PIXBLT. build-lance.sh assembles vram.asm and links VRAM.obj; MARK moved to 0x01A00000 because .text had come within 146 bytes of it.