[MSX] SCREEN8 из ассемблера в Daewoo CPC-400S

MSX-совместимые компьютеры

Moderator: Shaos

Wlodek
Junior
Posts: 3
Joined: 20 Dec 2006 22:33

[MSX] SCREEN8 из ассемблера в Daewoo CPC-400S

Post by Wlodek »

Здравствуй(-те), All...!
Пожалуйста,
подскажите, как:
- обращаться из .com-программ к функциям BIOS-2;- как включить SCREEN 8;
- как потом обратно включить SCREEN 0.
Вопросы по Daewoo CPC-400S, не по Ямахе!
Hапомните, в 8-м скрине видеопамять вроде с 0 начинается и просто построчно по
256 точек в строке сверху вниз, каждый байт - код RGB 3+3+2 бита ?
Спасибо.
Если можно, дайте прямо "тупо" кусок кода на ассемблере, как включить SCREEN8 и как включить потом SCREEN0.
В крайнем случае дайте под Ямаху, я попробую адаптировать сам.
Спасибо!
10 лет не кодил под эхотаг, многое забыл :-(.
Wlodek
Junior
Posts: 3
Joined: 20 Dec 2006 22:33

Post by Wlodek »

Пипл, вы чего, все сдохли :-) ?
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

Wlodek wrote:Пипл, вы чего, все сдохли :-) ?
Главный MSX-сец dhau тут последнее время редко появляется - надо его ждать...
Я тут за главного - если что шлите мыло на me собака shaos точка net
Caro
Fanat
Posts: 88
Joined: 21 Nov 2002 11:09
Location: E-burg/Russia

Re: SCREEN8 из ассемблера в Daewoo CPC-400S

Post by Caro »

Wlodek wrote:как включить SCREEN8 и как включить потом SCREEN0.
Процедура установки видео-режима:

Code: Select all

; A  = SCREEN mode
screen:
	push	af	; mode
	xor	a
	ld	hl, #0xFAF5	; DPPAGE
	ld	(hl), a
	inc	hl	; ACPAGE
	ld	(hl), a
	pop	af	; mode
	push	ix
	ld	ix, #0x005f	; chgmod on bios
	ld	iy, (0xfcc0)	; iyh <= (0xfcc1) : EXPTBL(MAIN-ROM SLOT)
	call	0x001c	; CALSLT
	pop	ix
	ret
Wlodek
Junior
Posts: 3
Joined: 20 Dec 2006 22:33

Post by Wlodek »

Спасибо, на выходных, наверно, не раньше, смогу попробовать.
#0xFAF5 - это = 0FAF5h ? В смысле, Вы так написали синтаксис 16-ричного числа, я правильно понял?
Caro
Fanat
Posts: 88
Joined: 21 Nov 2002 11:09
Location: E-burg/Russia

Post by Caro »

Wlodek wrote:#0xFAF5 - это = 0FAF5h ? В смысле, Вы так написали синтаксис 16-ричного числа, я правильно понял?
Да, это 16-ричное число.
Исходник написан на СИ, отсюда такой синтаксис.