[Oberon] FPGA - OberonV4 Dialogs

Tomas Kral thomas.kral at email.cz
Sun Dec 2 10:42:32 CET 2018


Hi Joerg,

Thank you.

> But round 9962 up to 10‘000 and you‘re fine.
Linz Oberon, also defines TextFrames.Unit = 10000, so I will keep for
RISC System-V as suggested.

Linz has two byte SHORTS
x(short),y(short),w(short),h(short),overlapping(bool)

> b0 17 1a 00      = 171
> c0 10 f8  ff       = -52
> 80 1a 06 00     =  40
> 40 0d 03 00    =  20 

b0 17 = x
1a 00 = y
c0 10 = w
f8 ff = h
80 = overlapping

1a 06 00 40 0d 03 00 00 = unused discarded
???????????

Other explanation could be that some of these values are lookup
indices, as Dialogs.Load() keeps two tables tab1; tab2 on symbols
loaded, but may get somehow confused by my coding to Oberon-7.

BTW tab1,tab2 are never initialised!
e.g.
h := maxItems-1; REPEAT tab1[h][0] := 0X; tab2[h][0] := 0X; DEC(h) UNTIL h = 0;

Since a dialog can have multiple items e.g. buttons, etc, symbols
are never duplicated, rather with each subsequent reference only an
index is stored, two byte tab{1,2} reference (short int).  

On the other hand, there are duplications of ItemDesc.{name}.
Getting confused.

-- 
Tomas Kral <thomas.kral at email.cz>


More information about the Oberon mailing list