summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
-rw-r--r--docs/Bytecode70
1 files changed, 48 insertions, 22 deletions
diff --git a/docs/Bytecode b/docs/Bytecode
index d691923..272fd07 100644
--- a/docs/Bytecode
+++ b/docs/Bytecode
@@ -12,8 +12,13 @@ Format
bits 0-9 : opcode
The 8 bits of flag data are defined as follows:
- bits 2-7: Must Be Zero (MBZ)
- bit 1 : value is inherit
+ bits 4-7: Must Be Zero (MBZ)
+ bits 1-3: Generic value
+ 000 => no generic value
+ 001 => inherit
+ 010 => initial
+ 011 => revert
+ 100 => unset
bit 0 : value is important
The 14 bits of value are opcode-specific.
@@ -44,19 +49,16 @@ Length is a 32bit numeric value (as described above) and unit is as follows:
00000101 => mm
00000110 => pt
00000111 => pc
- 00001000 => cap
- 00001001 => ch
- 00001010 => ic
- 00001011 => rem
- 00001100 => lh
- 00001101 => rlh
- 00001110 => vh
- 00001111 => vw
- 00010000 => vi
- 00010001 => vb
- 00010010 => vmin
- 00010011 => vmax
- 00010100 => q
+ 00001000 => ch
+ 00001001 => rem
+ 00001010 => lh
+ 00001011 => vh
+ 00001100 => vw
+ 00001101 => vi
+ 00001110 => vb
+ 00001111 => vmin
+ 00010000 => vmax
+ 00010001 => q
bit 9 set => percentage unit
bits 9-31: MBZ
@@ -356,10 +358,11 @@ Opcodes
0000101 => no-close-quote,
other => rffe.
- If the value is not "normal", "none", or "inherit", then there is
- a parameter list. Each item is preceded by a <value> word which
- declares the type of the next item. The list is terminated by a
- word with all bits set to zero (the encoding for "normal").
+ If the value is not "normal", "none", or a generic value ("inherit",
+ "initial", "unset", or "revert"), then there is a parameter list.
+ Each item is preceded by a <value> word which declares the type of
+ the next item. The list is terminated by a word with all bits set
+ to zero (the encoding for "normal").
For example,
content: open-quote url('http://example.com/')
@@ -388,7 +391,8 @@ Opcodes
bits 0-6: 0000000 => none,
other => rffe.
- If the value is not "none", or "inherit", then there is a parameter
+ If the value is not "none", or a generic value ("inherit",
+ "initial", "unset", or "revert"), then there is a parameter
list. Each item is preceded by a <value> word which declares the type
of the next item. The list is terminated by a word with all bits set to
zero (the encoding for "none").
@@ -404,7 +408,8 @@ Opcodes
bits 0-6: 0000000 => none,
other => rffe.
- If the value is not "none", or "inherit", then there is a parameter
+ If the value is not "none", or a generic value ("inherit",
+ "initial", "unset", or "revert"), then there is a parameter
list. Each item is preceded by a <value> word which declares the type
of the next item. The list is terminated by a word with all bits set to
zero (the encoding for "none").
@@ -486,6 +491,8 @@ Opcodes
f => none,
10 => flex,
11 => inline-flex,
+ 12 => grid,
+ 13 => inline-grid
other => Reserved for future expansion.
21 - elevation
@@ -869,6 +876,7 @@ Opcodes
1 => relative,
2 => absolute,
3 => fixed,
+ 4 => sticky,
other => Reserved for future expansion.
4a - quotes
@@ -1375,4 +1383,22 @@ Opcodes
bit 7 clear => Reserved for future expansion
bits 0-6: MBZ
-7c-3ff - Reserved for future expansion.
+7c - fill-opacity
+ <value> (14bits) :
+ bits 8-13: MBZ
+ bits 0-7 :
+ bit 7 set => number follows
+ bits 0-6: MBZ
+ bit 7 clear => Reserved for future expansion
+ bits 0-6: MBZ
+
+7d - stroke-opacity
+ <value> (14bits) :
+ bits 8-13: MBZ
+ bits 0-7 :
+ bit 7 set => number follows
+ bits 0-6: MBZ
+ bit 7 clear => Reserved for future expansion
+ bits 0-6: MBZ
+
+7e-3ff - Reserved for future expansion.