V9990 registers at command termination

Страница 1/2
| 2

By Metalion

Paragon (1590)

Аватар пользователя Metalion

11-09-2022, 08:24

Hi everyone,

Do we know if the behaviour on V9990 commands is similar as on the V9938 at command termination ?
Was it studied ?

Like this table for V9938:

   Table 4.7  Register status at command termination

----------------------------------------------------------------------------
| command name | SX  | SY  | DX  | DY  | NX  | NY  | CLR |CMR H|CMR L| ARG |
----------------------------------------------------------------------------
|     HMMC     | --- | --- | --- |  .  | --- |	#  | --- |  0  | --- | --- |
----------------------------------------------------------------------------
|     YMMM     | --- |	.  | --- |  .  | --- |	#  | --- |  0  | --- | --- |
----------------------------------------------------------------------------
|     HMMM     | --- |	.  | --- |  .  | --- |	#  | --- |  0  | --- | --- |
----------------------------------------------------------------------------
|     HMMV     | --- | --- | --- |  .  | --- |	#  | --- |  0  | --- | --- |
----------------------------------------------------------------------------
|     LMMC     | --- | --- | --- |  .  | --- |	#  | --- |  0  | --- | --- |
----------------------------------------------------------------------------
|     LMCM     | --- |	.  | --- | --- | --- |	#  |  .  |  0  | --- | --- |
----------------------------------------------------------------------------
|     LMMM     | --- |	.  | --- |  .  | --- |	#  | --- |  0  | --- | --- |
----------------------------------------------------------------------------
|     LMMV     | --- | --- | --- |  .  | --- |	#  | --- |  0  | --- | --- |
----------------------------------------------------------------------------
|     LINE     | --- | --- | --- |  .  | --- | --- | --- |  0  | --- | --- |
----------------------------------------------------------------------------
|     SRCH     | --- | --- | --- | --- | --- | --- | --- |  0  | --- | --- |
----------------------------------------------------------------------------
|     PSET     | --- | --- | --- | --- | --- | --- | --- |  0  | --- | --- |
----------------------------------------------------------------------------
|     POINT    | --- | --- | --- | --- | --- | --- |  .  |  0  | --- | --- |
----------------------------------------------------------------------------

--- :	no change
 .  :	coordinate (SY*, DY*) and the colour code at the command termination
 #  :	the number of counts (NYB), when the screen edge is fetched
Для того, чтобы оставить комментарий, необходимо регистрация или !login

By aoineko

Paladin (698)

Аватар пользователя aoineko

11-09-2022, 10:56

I don't have the answer, but I am interested. Smile

By mars2000you

Enlighted (6346)

Аватар пользователя mars2000you

11-09-2022, 12:39

By aoineko

Paladin (698)

Аватар пользователя aoineko

11-09-2022, 16:08

The question is about the values of a command after its execution.

With V9938 it was possible to chain commands using the fact that some input parameters were changed during the execution of the command.
As the command parameter registers of the V9990 are read-only, it is difficult to know what value they have at the end of the command execution.

By Metalion

Paragon (1590)

Аватар пользователя Metalion

11-09-2022, 16:19

aoineko wrote:

As the command parameter registers of the V9990 are read-only, it is difficult to know what value they have at the end of the command execution.

I'm sure you meant : write-only Wink

By SjaaQ

Champion (365)

Аватар пользователя SjaaQ

11-09-2022, 16:22

That should be easy to try out? I was testing the line draw function myself. I was wondering as well if I change the DX/DY only and resubmit the command if it would keep the MJ/MI settings. I think I saw somewhere you need to resubmit all the parameters again, but that would not make sense to me.

By Manuel

Ascended (19058)

Аватар пользователя Manuel

11-09-2022, 16:56

Aha, so it is useful to know to be able to not set parameters again if they haven't changed, saving on some extra outs.

By Manuel

Ascended (19058)

Аватар пользователя Manuel

11-09-2022, 19:56

Anyway, if some finds out these things, we'll happily implement it in openMSX as well.

By Metalion

Paragon (1590)

Аватар пользователя Metalion

17-09-2022, 12:08

This is what I observed:

 V9990

----------------------------------------------------------------------------
| command name | SX  | SY  | DX  | DY  | NX  | NY  | ARG | LOG |  WM | CLR |
----------------------------------------------------------------------------
|     LMMM     |  ?  |	?  |  ?  |  ?  |  ?  |  .  | --- | --- | --- |  ?  |
----------------------------------------------------------------------------
|     LMMV     | N/A | N/A | --- |  .  | --- |	.  | --- | --- | --- |  ?  |
----------------------------------------------------------------------------

--- :	no change
 .  :	changed at the command termination
 ?  :	unknown

On OpenMSX, for LMMV, DY and NY are not changed at command termination.
I don't know yet their value, but I'm guessing it might be the same behavior as HMMV/HMMM on V9938.

By Grauw

Ascended (10634)

Аватар пользователя Grauw

17-09-2022, 14:25

Don’t rely on the openMSX implementation for this, test on real hardware.

By PingPong

Prophet (3987)

Аватар пользователя PingPong

17-09-2022, 17:31

aoineko wrote:

As the command parameter registers of the V9990 are read-only, it is difficult to know what value they have at the end of the command execution.

this also apply to v9938. they are write only

Страница 1/2
| 2