VDP 8 bit VRAM ADDRESSING emulation issue

Page 2/2
1 |

By ARTRAG

Enlighted (6240)

ARTRAG's picture

10-05-2019, 07:46

Grauw wrote:

Here is my test program. Execute in DOS in screen 0.

	org 100H

Main:
	ld hl,helloWorld
	ld a,0
	out (99h),a
	ld a,64
	out (99h),a
	ld c,98h
	ld b,12
	ld a,b
Loop:
	dec a
	out (99h),a
	outi
	jr nz,Loop
	ret

helloWorld:
	db "!dlroW olleH"

In openMSX TMS9918 (Yamaha CX5M), this prints “Hello World!” at location (0, 0).
In openMSX V9938 (Philips NMS 8245), this prints “!dlroW olleH” at location (0, 0).
In openMSX V9958 (Panasonic FS-A1GT), this prints “!dlroW olleH” at location (0, 0).

On a real TMS9929A (Sony HB-75P), this prints “Hello World!” at location (0, 0).
On a real V9938 (Yamaha CX5MII), this prints “!dlroW olleH” at location (0, 0).
On a real V9958 (Panasonic FS-A1GT), this prints “!dlroW olleH” at location (0, 0).

So I think that answers all questions Smile.

Executable binary here

This test program is very clever and explains well the potential of the trick ! Greetings!
I would add to the list of machines those with the Toshiba T6950 and its upgrades T6950A and T6950B

Page 2/2
1 |