Changes

Jump to: navigation, search

Format:Advanced OCP Art Studio internal structures

1,687 bytes added, 22:14, 15 January 2009
New page: '''''This artikel originally came from Kevin Thackers' archive at [http://www.cpctech.org.uk http://www.cpctech.org.uk].''''' = Advanced OCP Art Studio internal data structures = This d...
'''''This artikel originally came from Kevin Thackers' archive at [http://www.cpctech.org.uk http://www.cpctech.org.uk].'''''

= Advanced OCP Art Studio internal data structures =

This document describes some of the internal structures used by OCP Advanced Art Studio. Description of OCP Art Studio's resource data format: buttons, menu items etc are defined in this way:

These data structures are collected into a list:

{| border="1"
|-
! Offset
! Length
! Description
|-
| 0
| 2
| x position in pixels (0-639) (note 2)
|-
| 1
| 1
| Y position in lines (0-199)
|-
| 2
| 2
| width of element
|-
| 4
| 1
| height of element
|-
| 5
| 2
|  ??
|-
| 7
| 2
| address of function to call when clicked
|-
| 9
| 1
|  ?? if 0x02c draws horizontal lines in button
|-
| 10
| 1
| bit 7,6: if 0, no border is shown, if&nbsp;!=0 border is shown<br>bit 5,4:&nbsp;??<br>bit 3,2: foreground colour (border &amp; text)<br>bit 1,0: background colour (note 3)
|-
| 11
| 1
| &nbsp;??
|-
| 12
| 1
| bit 7,6: button type (bit 7=1, bit 6=1: toggle button)<br>bit 2: button state<br> 0x0c4 = toggle button 0x0a0 = tick/cross aligned to right side
|-
| 13
| x
| 0x0ff or ascii characters. Last char has bit 7 set. codes&gt;0x07f codes&lt;0 0x0c0 control code? control code 0x02: text with position 2 bytes x position, 1 byte y position text last char of last string has bit 7 set.
|}

#Horizontal coordinates are in the range 0-639. These define a "resolution" equivalent to CPC's mode 2. The vertical coordinates are in the range 0-199.
#If this value is -1, then this indicates the end of the list.
#If foreground and background are the same, then no button is displayed