Visual Technology 1050

Post Reply
stefano
Well known member
Posts: 2137
Joined: Mon Jul 16, 2007 7:39 pm

Visual Technology 1050

Post by stefano »

This is another interesting hw, its concept is very close to the Sanyo MBC-200, but the terminal control and graphics were delegated to a 6502 CPU.

There's a nice sw set (TOSEC) in archive.org which include the rather rare "DR Graph" and useful original system oriented source code.

https://ia801503.us.archive.org/view_ar ... _04_23.zip

With this trick the (already fast) console gets sesnsibly faster:

Code: Select all

;
;	Visual 1050 specific code
;
;	Stefano Bodrato - 2023
;
;
;	$Id: v1050_sendchar.asm $
;

	SECTION	code_clib
	PUBLIC	v1050_sendchar

.v1050_sendchar

;	ld c,l

; ..using the BIOS
;	ld   de,9	; shift ptr to CONOUT
;	ld   hl,(1)	; WBOOT (BIOS)
;	add  hl,de
;	jp   (hl)

; ..direct I/O
MDSPOT:
	IN   A,(86h)     ; P_DISP_C: GET STATUS
	AND  1           ; TEST BIT 0
	JR   Z,MDSPOT    ; WAIT IF IT IS

;	LD   A,C	     ; GET THE CHARACTER
	ld   a,l
	OUT	 (85h),A     ; P_DISP_OUT		;AND PUT IN THE REG
	LD   A,0EH       ; STROBE
	OUT	 (87h),A     ; P_DISP_CONTROL..
	INC  A           ; STROBE OFF
	OUT	 (87h),A     ; P_DISP_CONTROL..

	ret

zcc +cpm -create-app -subtype=v1050 -pragma-redirect:fputc_cns=v1050_sendchar -lv1050 adv_a.c


Obviously I'm not going to replace the BDOS calls, I'm trying to get the most from the graphics.
The coordinates must be specified in ASCII decimal :/
stefano
Well known member
Posts: 2137
Joined: Mon Jul 16, 2007 7:39 pm

Re: Visual Technology 1050

Post by stefano »

I finally had to mix BIOS calls and direct out to allow a stable communication.
A first minimal set of graphics is now working, I think I'll open a PR and proceed by steps.
v1050globe.png
You do not have the required permissions to view the files attached to this post.
stefano
Well known member
Posts: 2137
Joined: Mon Jul 16, 2007 7:39 pm

Re: Visual Technology 1050

Post by stefano »

Sometimes the transmission breaks.
I could observe it also with the original GSX driver, so I'm not sure it does not depend on the emulation (I'm using an old version of MESS because I miss some of the ROM images).

Passing the parameters as ASCII-decimal values works much better, but sometimes the problem still shows up (see the text on the top-left corner, 1 byte was lost):
v1050_eagle.png
You do not have the required permissions to view the files attached to this post.
stefano
Well known member
Posts: 2137
Joined: Mon Jul 16, 2007 7:39 pm

Re: Visual Technology 1050

Post by stefano »

I'm now looking for the way to get data from the video section (6502 controlled).

A handy way to read the V1050 sources is on this link:
http://v1050.classiccmp.org/src/index.html
stefano
Well known member
Posts: 2137
Joined: Mon Jul 16, 2007 7:39 pm

Re: Visual Technology 1050

Post by stefano »

Image
Support of generic console with 8x8 font and udg is now ready (the code is a nightmare of ESC sequences!).

I still couldn't find a way to catch the talkback from the video section, it probably requires a better understanding of the cp/m 3 devices (how can I connect to the display device for input rather than output? The standard input device is assigned to the keyboard)
stefano
Well known member
Posts: 2137
Joined: Mon Jul 16, 2007 7:39 pm

Re: Visual Technology 1050

Post by stefano »

I'm going to pull in the full VT-ANSI engine, which is quite perverse, because it encapsulates the ANSI ESC sequences in an ANSI ESC interpreter !
v1050ansi.png
Alternatively programmers can totally skip the ansi VT engine and use the native mode which will accept almost all the ANSI VT sequences, with little differences, e.g. on the way attributes are managed.

Our ansitest program output, without the z88dk engine:
v1050native.png
The Dallas Game, Generic console + UDG + graphics
v1050_dallas_gencon.png

CP/M 3 timer and hirez graphics
v1050_clock.png
You do not have the required permissions to view the files attached to this post.
User avatar
RobertK
Well known member
Posts: 347
Joined: Mon Feb 26, 2018 12:58 pm

Re: Visual Technology 1050

Post by RobertK »

Excellent work! But what am I doing wrong that I always get an "Read Record not found" error in CP/M when trying to access the drive with the z88dk-generated .imd file?
I've tried it in both MAME 0.253 and 0.254.
I am booting from the 1050-sys.td0 disk that I've found here:
https://oldcomputers-ddns.org/public/pu ... index.html
stefano
Well known member
Posts: 2137
Joined: Mon Jul 16, 2007 7:39 pm

Re: Visual Technology 1050

Post by stefano »

It shouldn't happen, I wondered whether I forgot to update something in the public z88dk tree, but they're 2 files only and they are ok.

zcc +cpm -subtype=v1050 -create-app tic.c
mame v1050 -flop1 1050-sys.td0 -flop2 a.imd

I could run it on a recent MAME build (self-built from the current dev tree, claiming to be 0.253) and old versions, (0.180 and 0.248).
Please try changing the disk type in the "Slot Devices" settings ("reset the system" everytime you change something).

EDIT: Try also insisting in accessing drive B:, MAME is so accurate in the hw emulation approach that a sync issue gets rather common.
User avatar
RobertK
Well known member
Posts: 347
Joined: Mon Feb 26, 2018 12:58 pm

Re: Visual Technology 1050

Post by RobertK »

Oops, my mistake: I was using the x820 subtype instead of v1050... :rolleyes:
Thanks, now everything is working.
The point() function and monochrome sprites would be nice to have, but that would probably be tough to implement.
stefano
Well known member
Posts: 2137
Joined: Mon Jul 16, 2007 7:39 pm

Re: Visual Technology 1050

Post by stefano »

that's not impossible, I'm confident that the emulation work better on the v1050 than on the mbc200
I simply couldn't figure out how to make it work
Post Reply