Added: AS3 docs generator - reorganized to distinguish float and float 4 instructions, hilight float instruction blue

This commit is contained in:
Jindra Petřík
2025-07-27 22:55:49 +02:00
parent 9ce365de33
commit debbd04ad1
15 changed files with 29 additions and 6 deletions

View File

@@ -38,6 +38,10 @@ public enum AVM2InstructionFlag {
* Requires Float major version
*/
FLOAT_MAJOR,
/**
* Requires Float4 support
*/
FLOAT4_SUPPORT,
/**
* Operands are unknown
*/
@@ -53,5 +57,5 @@ public enum AVM2InstructionFlag {
/**
* Works with domain memory
*/
DOMAIN_MEMORY
DOMAIN_MEMORY
}

View File

@@ -46,7 +46,7 @@ public class ConvertF4Ins extends InstructionDefinition implements CoerceOrConve
* Constructor
*/
public ConvertF4Ins() {
super(0x7B, "convert_f4", new int[]{}, true, AVM2InstructionFlag.FLOAT_MAJOR, AVM2InstructionFlag.NO_FLASH_PLAYER);
super(0x7B, "convert_f4", new int[]{}, true, AVM2InstructionFlag.FLOAT4_SUPPORT, AVM2InstructionFlag.NO_FLASH_PLAYER);
}
@Override

View File

@@ -41,7 +41,7 @@ public class Lf32x4Ins extends InstructionDefinition {
* Constructor
*/
public Lf32x4Ins() {
super(0x0A, "lf32x4", new int[]{}, true, AVM2InstructionFlag.NO_FLASH_PLAYER, AVM2InstructionFlag.DOMAIN_MEMORY, AVM2InstructionFlag.FLOAT_MAJOR);
super(0x0A, "lf32x4", new int[]{}, true, AVM2InstructionFlag.NO_FLASH_PLAYER, AVM2InstructionFlag.DOMAIN_MEMORY, AVM2InstructionFlag.FLOAT4_SUPPORT);
}
@Override

View File

@@ -42,7 +42,7 @@ public class PushFloat4Ins extends InstructionDefinition {
* Constructor
*/
public PushFloat4Ins() {
super(0x54, "pushfloat4", new int[]{AVM2Code.DAT_FLOAT4_INDEX}, false, AVM2InstructionFlag.NO_FLASH_PLAYER, AVM2InstructionFlag.FLOAT_MAJOR);
super(0x54, "pushfloat4", new int[]{AVM2Code.DAT_FLOAT4_INDEX}, false, AVM2InstructionFlag.NO_FLASH_PLAYER, AVM2InstructionFlag.FLOAT4_SUPPORT);
}
@Override

View File

@@ -35,7 +35,7 @@ public class Sf32x4Ins extends InstructionDefinition {
* Constructor
*/
public Sf32x4Ins() {
super(0x0B, "sf32x4", new int[]{}, true, AVM2InstructionFlag.NO_FLASH_PLAYER, AVM2InstructionFlag.DOMAIN_MEMORY, AVM2InstructionFlag.FLOAT_MAJOR);
super(0x0B, "sf32x4", new int[]{}, true, AVM2InstructionFlag.NO_FLASH_PLAYER, AVM2InstructionFlag.DOMAIN_MEMORY, AVM2InstructionFlag.FLOAT4_SUPPORT);
}
@Override

View File

@@ -309,7 +309,13 @@ public class As3PCodeDocs extends AbstractDocs {
jsData += "flags_set[\"" + makeIdent(f.toString()) + "\"] = false;" + NEWLINE;
}
AVM2InstructionFlag[] hideFlags = new AVM2InstructionFlag[]{AVM2InstructionFlag.NO_FLASH_PLAYER};
AVM2InstructionFlag[] hideFlags = new AVM2InstructionFlag[]{
AVM2InstructionFlag.UNDOCUMENTED,
AVM2InstructionFlag.UNKNOWN_STACK,
AVM2InstructionFlag.ES4_NUMERICS_MINOR,
AVM2InstructionFlag.FLOAT4_SUPPORT,
AVM2InstructionFlag.UNKNOWN_OPERANDS
};
for (AVM2InstructionFlag f : hideFlags) {
jsData += "flags_set[\"" + makeIdent(f.toString()) + "\"] = true;" + NEWLINE;
}

View File

@@ -62,6 +62,10 @@ strong.flags-title {
background-color: #cccccc;
}
.instruction.instruction-flag-floatMajor {
background-color: #aaaaff;
}
body {
font-family: serif;
}

View File

@@ -35,6 +35,7 @@ instructionFlag.undocumented=Undocumented
instructionFlag.unknownStack=Unknown stack
instructionFlag.es4NumericsMinor=ES4 numerics (ABC minor 17)
instructionFlag.floatMajor=Float values (ABC major 47)
instructionFlag.float4Support=Float 4 values
instructionFlag.unknownOperands=Unknown operands
instructionFlag.noFlashPlayer=Not in standard Flash Player
instructionFlag.deprecated=Deprecated

View File

@@ -35,6 +35,7 @@ instructionFlag.undocumented=Indocumentada
instructionFlag.unknownStack=Pila desconeguda
instructionFlag.es4NumericsMinor=Num\u00e8rica ES4 (ABC minor 17)
instructionFlag.floatMajor=Valors de coma flotant (ABC major 47)
instructionFlag.float4Support=Valors de coma flotant 4
instructionFlag.unknownOperands=Operands desconeguts
instructionFlag.noFlashPlayer=No en Flash Player est\u00e0ndard
instructionFlag.deprecated=Obsoleta

View File

@@ -35,6 +35,7 @@ instructionFlag.undocumented=Nedokumentovan\u00e9
instructionFlag.unknownStack=Nezn\u00e1m\u00fd z\u00e1sobn\u00edk
instructionFlag.es4NumericsMinor=ES4 numerika (ABC minor 17)
instructionFlag.floatMajor=Float hodnoty (ABC major 47)
instructionFlag.float4Support=Float 4 hodnoty
instructionFlag.unknownOperands=Nezn\u00e1m\u00e9 operandy
instructionFlag.noFlashPlayer=Nen\u00ed v standardn\u00edm Flash Playeru
instructionFlag.deprecated=P\u0159ekonan\u00e9

View File

@@ -19,6 +19,7 @@ instructionFlag.undocumented=Ongedocumenteerd
instructionFlag.unknownStack=Onbekende stapel
instructionFlag.es4NumericsMinor=ES4 numeriek (ABC minor 17)
instructionFlag.floatMajor=Float waarden (ABC major 47)
instructionFlag.float4Support=Float 4 waarden
instructionFlag.unknownOperands=Onbekende operanden
instructionFlag.noFlashPlayer=Niet in standaard Flash Player
instructionFlag.deprecated=Verouderd

View File

@@ -35,6 +35,7 @@ instructionFlag.undocumented=Indocumentada
instructionFlag.unknownStack=Pilha desconhecida
instructionFlag.es4NumericsMinor=Num\u00e9ricos ES4 (ABC Menor 17)
instructionFlag.floatMajor=Valores de flutuantes (ABC Maior 47)
instructionFlag.float4Support=Valores de flutuantes 4
instructionFlag.unknownOperands=Operandos desconhecidos
instructionFlag.noFlashPlayer=N\u00e3o no Flash Player padr\u00e3o
instructionFlag.deprecated=Descontinuado

View File

@@ -35,6 +35,7 @@ instructionFlag.undocumented = Belgesiz
instructionFlag.unknownStack = Bilinmeyen y\u0131\u011f\u0131n
instructionFlag.es4NumericsMinor = ES4 say\u0131sallar\u0131 (ABC min\u00f6r 17)
instructionFlag.floatMajor = Kayan de\u011ferler (ABC maj\u00f6r 47)
instructionFlag.float4Support = Kayan 4 de\u011ferler
instructionFlag.unknownOperands = Bilinmeyen i\u015flenenler
instructionFlag.noFlashPlayer = Standart Flash Player'da de\u011fil
instructionFlag.deprecated = Kullan\u0131mdan kald\u0131r\u0131lan

View File

@@ -35,6 +35,7 @@ instructionFlag.undocumented = \u672a\u8bb0\u5f55
instructionFlag.unknownStack = \u672a\u77e5\u5806\u6808
instructionFlag.es4NumericsMinor = ES4 numerics (ABC minor 17)
instructionFlag.floatMajor = Float values (ABC major 47)
instructionFlag.float4Support = Float 4 values
instructionFlag.unknownOperands = \u672a\u77e5\u64cd\u4f5c\u6570
instructionFlag.noFlashPlayer = \u4e0d\u5728\u6807\u51c6Flash Player\u4e2d
instructionFlag.deprecated = \u5f03\u7528