Curiosit particol on V9990 (p1)

ページ 1/3
| 2 | 3

By DanySoft

Champion (452)

DanySoft さんの画像

31-07-2011, 11:59

Hey, can't view on second screen (b) on mode P1 :
because the graphics is not equal a screen a. What ? Question

screen (a) 256x212 (FONT)
screen (b) 256x212 (FONT) but the graphics is not correted . (corrupt?)

P1 e P2 on screen a is equal but screen B is not equal.

You help this new problems ???
OpenMSX have this "bug" ??? Or no ?

I'm interesset this :
P1 (default)
screen (a) 256x212
screen (b) 256x212 (NO 1024X212 BECAUSE TOO SMALL)
sprites (set R# 25 = page for sprite)
and running openMSX !!!!

Talk you!
P.S.: V9958 and XBASIC are perfect to make 16x16 or variable as sprites but v9990 is real
solutions for games. Tongue

ログイン/登録して投稿

By Manuel

Ascended (19270)

Manuel さんの画像

31-07-2011, 13:04

What exactly are you trying to do?
Do you have a real GFX9000 to test with? If not, I do, and if you share your program I can try it on a real device to compare.

By DanySoft

Champion (452)

DanySoft さんの画像

31-07-2011, 13:14

Yes, V9990 is emulated from openmsx, and see two screen dual not compare.

set now #0:0000 and #4:0000 font example and
initial #7:C000 and #7:E000 (0,0 ,1,0 , 2,0, ecc...) and
see the result move scroll for test.

font is screen (a) OK
but...
font is screen (b) not ok, graphics is small ....
openmsx is not ok (?) or v9990 real is OK 100% ???

By Manuel

Ascended (19270)

Manuel さんの画像

31-07-2011, 13:18

Share your program and I'll try.

By DanySoft

Champion (452)

DanySoft さんの画像

31-07-2011, 13:24

openmsx emulator is version 0.8.0 and found new application 0.8.1 from site but
not release or change .

Use your emulator openmsx for comparison!

By Manuel

Ascended (19270)

Manuel さんの画像

31-07-2011, 13:27

You haven't given me a program to try...

Note that other GFX9000 programs show that openMSX supports the layer A and B fine: X-Tazy, PowerBasic demos, etc.

By DanySoft

Champion (452)

DanySoft さんの画像

31-07-2011, 13:36

Okey, insert my program : note is use Wbass2 (full assembler/debug/monitor) and
test port #60-#6F to v9990 and viceversa.


ORG $4000

P1: EQU $60
REG: EQU $64 ;reg
DATA: EQU $63 ;data
;
; DLOAD "FONT.GE5",FONT-7
;

;test v9990
BEGIN:
JP MAIN
FONT: DS 10240
MAIN:
CALL MODEP1
CALL PALETT
;
CALL TEST

CALL LOADFO

CALL TXT

LD HL,SCRXA
LD DE,SCRXA+1
LD BC,4
LD (HL),0
LDIR
;
LOOP:
LD A,0
CALL $D8
CP 255
RET Z
;
LD A,0
CALL $D5
CP 1
JP Z,MSU
CP 5
JP Z,MGIU
;
CP 3
JP Z,MSU2
CP 7
JP Z,MGIU2
>
JR LOOP
MSU2:
LD A,(SCRXA)
INC A
LD (SCRXA),A
JP SCROLL
MGIU2:
LD A,(SCRXA)
DEC A
LD (SCRXA),A
JP SCROLL
MSU:
LD A,(SCRYA)
INC A
LD (SCRYA),A
JP SCROLL
MGIU:
LD A,(SCRYA)
DEC A
LD (SCRYA),A
JP SCROLL
>
SCRXA: DB 0
SCRYA: DB 0
SCRXB: DB 0
SCRYB: DB 0
>
DS 8
>
>
LOADFO:
LD HL,FONT
LD BC,15
ADD HL,BC
LD D,H
LD E,L
;
LD HL,$00
LD E,0
CALL GWRI
CALL LOADD0
;
LD HL,$00
LD E,4
CALL GWRI
>
LOADD0:
>
LD BC,8192
LOAD00:
LD A,(DE)
OUT (P1),A
INC DE
DEC BC
LD A,B
OR C
JR NZ,LOAD00
RET
TEST:
>
; test v9958 -> v9990
; on page 0 of v9958
; to send graphics
; v9990.
; JP V65
LD E,7
LD HL,$C400
CALL GWRI
CALL V64
LD E,7
LD HL,$E000
CALL GWRI
CALL V64
RET
;
V64:
; tabel text for P1
;1535 (128K)
;3583 (256K)
;7679 (512K)

LD HL,0
LD BC,7679
V23:
PUSH BC
LD A,L
OUT (P1),A
LD A,H
OUT (P1),A
LD BC,1
ADD HL,BC
POP BC
DEC BC
LD A,B
OR C
JR NZ,V23
RET
;
MHL: DW 0
MDE: DW 0
>

LD BC,$4000
SD:
PUSH BC
LD A,$5A
OUT (P1),A
POP BC
DEC BC
LD A,B
OR C
JR NZ,SD
RET
>
GWRI:
LD A,0 ;VDP-0
OUT (REG),A
LD C,DATA
OUT (C),L
OUT (C),H
OUT (C),E
RET
GREA:
LD A,3 ;VDP-3
OUT (REG),A
LD C,DATA
OUT (C),L
OUT (C),H
OUT (C),E
RET

>
MODEP1:
;screen mode
LD A,6 ;VDP-6 SCR
OUT (REG),A
LD A,%00000001
OUT (DATA),A

LD A,7
OUT (REG),A
LD A,%00000000
OUT (DATA),A
;
LD A,8
OUT (REG),A
LD A,%10000000
OUT (DATA),A
;
;priority A,B
LD A,27
OUT (REG),A
LD A,%00000000
OUT (DATA),A
RET

PALETT:
LD A,13
OUT (REG),A
LD A,0
OUT (DATA),A
LD A,0
OUT (DATA),A
LD HL,MEMPAL
LD C,$61
LD B,63*3
OTIR
RET
MEMPAL:
DB 4*0,4*0,4*0
DB 4*0,4*0,4*0
DB 4*1,4*6,4*1
DB 4*3,4*7,4*3
DB 4*1,4*1,4*7
DB 4*2,4*3,4*7
DB 4*5,4*1,4*1
DB 4*2,4*6,4*7
DB 4*7,4*1,4*1
DB 4*7,4*3,4*3
DB 4*6,4*6,4*1
DB 4*6,4*6,4*4
DB 4*1,4*4,4*1
DB 4*6,4*2,4*5
DB 4*6,4*5,4*5
DB 4*7,4*7,4*7
>
DB 3*0,3*0,3*0
DB 3*0,3*0,3*0
DB 3*1,3*6,3*1
DB 3*3,3*7,3*3
DB 3*1,3*1,3*7
DB 3*2,3*3,3*7
DB 3*5,3*1,3*1
DB 3*2,3*3,3*7
DB 3*7,3*1,3*1
DB 3*7,3*3,3*3
DB 3*6,3*6,3*1
DB 3*6,3*6,3*4
DB 3*1,3*1,3*1
DB 3*6,3*5,3*5
DB 3*5,3*5,3*5
DB 3*7,3*7,3*7
>
DB 2*0,2*0,2*0
DB 2*0,2*0,2*0
DB 2*1,2*6,2*1
DB 2*3,2*7,2*3
DB 2*1,2*1,2*7
DB 2*2,2*3,2*7
DB 2*5,2*1,2*1
DB 2*2,2*6,2*7
DB 2*7,2*1,2*1
DB 2*7,2*3,2*3
DB 2*6,2*6,2*1
DB 2*6,2*6,2*4
DB 2*1,2*4,2*1
DB 2*6,2*2,2*5
DB 2*5,2*5,2*5
DB 2*7,2*7,2*7

SCROLL:
; screen A vert

LD A,17
OUT (REG),A
LD A,(SCRYA)
OUT (DATA),A
LD A,18
OUT (REG),A
LD A,0
OUT (DATA),A

LD A,19
OUT (REG),A
LD A,0
OUT (DATA),A
LD A,20
OUT (REG),A
LD A,(SCRXA)
OUT (DATA),A
>
; screen B vert

LD A,21
OUT (REG),A
LD A,0
OUT (DATA),A
LD A,22
OUT (REG),A
LD A,0
OUT (DATA),A
;
LD A,23
OUT (REG),A
LD A,0
OUT (DATA),A
;
LD A,24
OUT (REG),A
LD A,0
OUT (DATA),A
CALL WAITBC
JP LOOP

WAITBC:
LD BC,1000
WAITB0:
DEC BC
LD A,B
OR C
JR NZ,WAITB0
RET

TXT:
LD HL,$C670
LD E,7
CALL GWRI
LD HL,TESTT
TXT00:
LD A,(HL)
CP 0
RET Z

OUT (P1),A
LD A,0
OUT (P1),A
INC HL
JR TXT00
RET
TESTT:
DB "!ABC12011",0
 OUT (P1),A
INC HL
JR TXT00
RET
TESTT:

Note che "font:" use DLOAD "font.ge5",font-7
(replace font olther grapchis).

By Manuel

Ascended (19270)

Manuel さんの画像

31-07-2011, 13:55

Um, can't you give me the binary and the font file?

By DanySoft

Champion (452)

DanySoft さんの画像

31-07-2011, 14:02

Use Wbass2 !

Note :
font.ge5 is BLOADable graphics (8192 bytes)
Bload "font.ge5",s (but this is font from 0 to 256 chars.

This see screen (a) ok, but screen (b) no.

By Manuel

Ascended (19270)

Manuel さんの画像

31-07-2011, 14:03

DanySoft: I'd really like to help and test it on a real GFX9000, but I'll need something i can quickly run. So, if you can give me the compiled code and the font file in binary, I'll put it on a disk and run it on my real hardware.

By DanySoft

Champion (452)

DanySoft さんの画像

31-07-2011, 14:05

ok, can't insert file this ?

ページ 1/3
| 2 | 3