add halfwidth text bricks

This commit is contained in:
Redo 2022-10-27 20:44:46 -06:00
parent fe8057f4ec
commit ff0a35dbe5
6 changed files with 822 additions and 6 deletions

446
bricks/blb/ScreenBottom.blb Normal file
View File

@ -0,0 +1,446 @@
1 1 1
SPECIAL
b
1
0 0 0
1 1 1
COVERAGE:
1 : 1
1 : 1
1 : 1
1 : 1
1 : 1
1 : 1
---------------- TOP QUADS ----------------
5
TEX:TOP
POSITION:
0.5 0 1.5
0 -0 1.5
0 0.5 1.5
0.5 0.5 1.5
UV COORDS:
-0 0.5
0.5 0.5
0.5 1
-0 1
NORMALS:
0 0 1
0 0 1
0 0 1
0 0 1
TEX:SIDE
POSITION:
0 -0 1.5
0 -0 -0.5
-0.000001 0.5 -0.5
0 0.5 1.5
UV COORDS:
1.064453 -0.032227
1.064453 1.032227
-0.064453 1.032227
-0.064453 -0.032227
NORMALS:
-1 -0.000001 0.000001
-1 -0.000001 0.000001
-1 -0.000001 0.000001
-1 -0.000001 0.000001
TEX:SIDE
POSITION:
0.5 -0.5 0.5
-0.5 -0.5 0.5
-0.5 -0 0.5
0.5 0 0.5
UV COORDS:
-0.064453 1.021484
-0.064453 -0.021484
1.064453 -0.021484
1.064453 1.021484
NORMALS:
0 0 1
0 0 1
0 0 1
0 0 1
TEX:SIDE
POSITION:
0.5 0 1.5
0.5 0 0.5
0 -0 0.5
0 -0 1.5
UV COORDS:
1.064453 -0.085938
1.064453 1.085938
-0.064453 1.085938
-0.064453 -0.085938
NORMALS:
0.000001 -1 0
0.000001 -1 0
0.000001 -1 0
0.000001 -1 0
TEX:SIDE
POSITION:
-0.5 -0 -0.5
-0 0 -0.5
0 0 0.5
-0.5 -0 0.5
UV COORDS:
1.064453 1.085938
-0.064453 1.085938
-0.064453 -0.085938
1.064453 -0.085938
NORMALS:
-0.000001 1 -0
-0.000001 1 -0
-0.000001 1 -0
-0.000001 1 -0
---------------- BOTTOM QUADS ----------------
8
TEX:BOTTOMEDGE
POSITION:
-0.5 -0.5 -0.5
-0 -0 -0.5
-0.5 -0 -0.5
-0.5 -0 -0.5
UV COORDS:
1 0
0.5 0.5
0.5 0
0.5 0
NORMALS:
-0 0 -1
-0 0 -1
-0 0 -1
-0 0 -1
TEX:BOTTOMEDGE
POSITION:
0.5 0.5 -0.5
0 -0 -0.5
0.5 0 -0.5
0.5 0 -0.5
UV COORDS:
1 0
0.5 0.5
0.5 0
0.5 0
NORMALS:
0 0 -1
0 0 -1
0 0 -1
0 0 -1
TEX:BOTTOMEDGE
POSITION:
0.5 -0.5 -0.5
-0 -0 -0.5
0 -0.5 -0.5
0 -0.5 -0.5
UV COORDS:
1 0
0.5 0.5
0.5 0
0.5 0
NORMALS:
0 -0 -1
0 -0 -1
0 -0 -1
0 -0 -1
TEX:BOTTOMEDGE
POSITION:
-0 -0 -0.5
-0.5 -0.5 -0.5
-0 -0.5 -0.5
-0 -0.5 -0.5
UV COORDS:
0.5 0.5
0 0
0.5 0
0.5 0
NORMALS:
-0 -0 -1
-0 -0 -1
-0 -0 -1
-0 -0 -1
TEX:BOTTOMEDGE
POSITION:
0 -0 -0.5
0.5 0.5 -0.5
0 0.5 -0.5
0 0.5 -0.5
UV COORDS:
0.5 0.5
0 0
0.5 0
0.5 0
NORMALS:
0 0 -1
0 0 -1
0 0 -1
0 0 -1
TEX:BOTTOMEDGE
POSITION:
-0.5 0.5 -0.5
0 -0 -0.5
-0 0.5 -0.5
-0 0.5 -0.5
UV COORDS:
1 0
0.5 0.5
0.5 0
0.5 0
NORMALS:
0 0 -1
0 0 -1
0 0 -1
0 0 -1
TEX:BOTTOMEDGE
POSITION:
0 -0 -0.5
-0.5 0.5 -0.5
-0.5 -0 -0.5
-0.5 -0 -0.5
UV COORDS:
0.5 0.5
0 0
0.5 0
0.5 0
NORMALS:
-0 0 -1
-0 0 -1
-0 0 -1
-0 0 -1
TEX:BOTTOMEDGE
POSITION:
-0 -0 -0.5
0.5 -0.5 -0.5
0.5 -0 -0.5
0.5 -0 -0.5
UV COORDS:
0.5 0.5
0 0
0.5 0
0.5 0
NORMALS:
0 -0 -1
0 -0 -1
0 -0 -1
0 -0 -1
---------------- NORTH QUADS ----------------
1
TEX:PRINT
POSITION:
0 0.5 1.5
-0.000001 0.5 -0.5
0.5 0.5 -0.5
0.5 0.5 1.5
UV COORDS:
1 0
1 1
0 1
0 0
NORMALS:
-0.000001 1 -0
-0.000001 1 -0
-0.000001 1 -0
-0.000001 1 -0
---------------- EAST QUADS ----------------
2
TEX:SIDE
POSITION:
0.5 0 -0.5
0.5 0 1.5
0.5 0.5 1.5
0.5 0.5 -0.5
UV COORDS:
0.5 1.032227
0.5 -0.032227
1 -0.032227
1 1.032227
NORMALS:
1 0 -0.000001
1 0 -0.000001
1 0 -0.000001
1 0 -0.000001
TEX:SIDE
POSITION:
0.5 -0.5 -0.5
0.5 -0.5 0.5
0.5 0 0.5
0.5 0 -0.5
UV COORDS:
0 1.032227
0 0.5
0.5 0.5
0.5 1.032227
NORMALS:
1 0 -0.000001
1 0 -0.000001
1 0 -0.000001
1 0 -0.000001
---------------- SOUTH QUADS ----------------
6
TEX:SIDE
POSITION:
-0.4 -0.64 0.3
-0.4 -0.5 0.3
0.4 -0.5 0.3
0.4 -0.64 0.3
UV COORDS:
0.5 0.5
0.5 0.5
0.5 0.5
0.5 0.5
COLORS:
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
NORMALS:
0 0 1
0 0 1
0 0 1
0 0 1
TEX:SIDE
POSITION:
0.4 -0.64 -0.3
-0.4 -0.64 -0.3
-0.4 -0.64 0.3
0.4 -0.64 0.3
UV COORDS:
0.5 0.5
0.5 0.5
0.5 0.5
0.5 0.5
COLORS:
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
NORMALS:
0 -1 0
0 -1 0
0 -1 0
0 -1 0
TEX:SIDE
POSITION:
0.4 -0.64 -0.3
0.4 -0.5 -0.3
-0.4 -0.5 -0.3
-0.4 -0.64 -0.3
UV COORDS:
0.5 0.5
0.5 0.5
0.5 0.5
0.5 0.5
COLORS:
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
NORMALS:
-0 0 -1
-0 0 -1
-0 0 -1
-0 0 -1
TEX:SIDE
POSITION:
-0.4 -0.64 -0.3
-0.4 -0.5 -0.3
-0.4 -0.5 0.3
-0.4 -0.64 0.3
UV COORDS:
0.5 0.5
0.5 0.5
0.5 0.5
0.5 0.5
COLORS:
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
NORMALS:
-1 0 0
-1 0 0
-1 0 0
-1 0 0
TEX:SIDE
POSITION:
0.4 -0.64 0.3
0.4 -0.5 0.3
0.4 -0.5 -0.3
0.4 -0.64 -0.3
UV COORDS:
0.5 0.5
0.5 0.5
0.5 0.5
0.5 0.5
COLORS:
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
NORMALS:
1 0 -0
1 0 -0
1 0 -0
1 0 -0
TEX:SIDE
POSITION:
0.5 -0.5 0.5
0.5 -0.5 -0.5
-0.5 -0.5 -0.5
-0.5 -0.5 0.5
UV COORDS:
1 0.532227
1 1.032227
0 1.032226
0 0.532227
NORMALS:
0 -1 0
0 -1 0
0 -1 0
0 -1 0
---------------- WEST QUADS ----------------
1
TEX:SIDE
POSITION:
-0.5 -0.5 0.5
-0.5 -0.5 -0.5
-0.5 -0 -0.5
-0.5 -0 0.5
UV COORDS:
1 0.532227
1 1.032227
0 1.032227
0 0.532227
NORMALS:
-1 -0 0
-1 -0 0
-1 -0 0
-1 -0 0
---------------- OMNI QUADS ----------------
0

344
bricks/blb/ScreenTop.blb Normal file
View File

@ -0,0 +1,344 @@
1 1 1
SPECIAL
b
1
0 0 0
1 1 1
COVERAGE:
1 : 1
1 : 1
1 : 1
1 : 1
1 : 1
1 : 1
---------------- TOP QUADS ----------------
1
TEX:TOP
POSITION:
0.500001 0.499999 0.5
0.5 -0.5 0.5
-0.5 -0.5 0.5
-0.5 0.500001 0.5
UV COORDS:
0 1
0 0
1 0
1 1
NORMALS:
0 0 1
0 0 1
0 0 1
0 0 1
---------------- BOTTOM QUADS ----------------
6
TEX:SIDE
POSITION:
-0 -0 -1.5
-0 -0 0.5
0 0.5 0.5
-0 0.5 -1.5
UV COORDS:
0.25 0.25
0.75 0.25
0.75 0.75
0.25 0.75
NORMALS:
1 -0.000001 -0
1 -0.000001 -0
1 -0.000001 -0
1 -0.000001 -0
TEX:SIDE
POSITION:
-0.5 0 -1.5
-0.5 0 -0.5
-0 -0 -0.5
-0 -0 -1.5
UV COORDS:
0.25 0.25
0.75 0.25
0.75 0.75
0.25 0.75
NORMALS:
-0.000001 -1 -0
-0.000001 -1 -0
-0.000001 -1 -0
-0.000001 -1 -0
TEX:SIDE
POSITION:
-0.5 -0.5 -0.5
0.5 -0.5 -0.5
0.5 -0 -0.5
-0.5 0 -0.5
UV COORDS:
0.25 0.25
0.75 0.25
0.75 0.75
0.25 0.75
NORMALS:
0 0 -1
0 0 -1
0 0 -1
0 0 -1
TEX:BOTTOMEDGE
POSITION:
-0.5 0.5 -1.5
-0 0 -1.5
-0 0.5 -1.5
-0 0.5 -1.5
UV COORDS:
1 0
0.5 0.5
0.5 0
0.5 0
NORMALS:
-0 0 -1
-0 0 -1
-0 0 -1
-0 0 -1
TEX:BOTTOMEDGE
POSITION:
-0 0 -1.5
-0.5 0.5 -1.5
-0.5 0 -1.5
-0.5 0 -1.5
UV COORDS:
0.5 0.5
0 0
0.5 0
0.5 0
NORMALS:
-0 0 -1
-0 0 -1
-0 0 -1
-0 0 -1
TEX:SIDE
POSITION:
0.5 -0 0.5
-0 0 0.5
-0 0 -0.5
0.5 -0 -0.5
UV COORDS:
0.25 0.25
0.75 0.25
0.75 0.75
0.25 0.75
NORMALS:
0.000001 1 0
0.000001 1 0
0.000001 1 0
0.000001 1 0
---------------- NORTH QUADS ----------------
1
TEX:PRINT
POSITION:
-0 0.5 -1.5
0 0.5 0.5
-0.5 0.5 0.5
-0.5 0.5 -1.5
UV COORDS:
0 1
0 0
1 0
1 1
NORMALS:
0.000001 1 0
0.000001 1 0
0.000001 1 0
0.000001 1 0
---------------- EAST QUADS ----------------
1
TEX:SIDE
POSITION:
0.5 -0.5 -0.5
0.5 -0.5 0.5
0.5 -0 0.5
0.5 -0 -0.5
UV COORDS:
0 0.467773
0 -0.032227
0.5 -0.032227
0.5 0.467773
NORMALS:
1 0 0
1 0 0
1 0 0
1 0 0
---------------- SOUTH QUADS ----------------
6
TEX:SIDE
POSITION:
-0.5 -0.5 -0.5
-0.5 -0.5 0.5
0.5 -0.5 0.5
0.5 -0.5 -0.5
UV COORDS:
0 0.467773
0 -0.032227
1 -0.032227
1 0.467773
NORMALS:
-0 -1 -0
-0 -1 -0
-0 -1 -0
-0 -1 -0
TEX:SIDE
POSITION:
0.4 -0.64 -0.3
0.4 -0.5 -0.3
-0.4 -0.5 -0.3
-0.4 -0.64 -0.3
UV COORDS:
0.4375 0.4375
0.5625 0.4375
0.5625 0.5625
0.4375 0.5625
COLORS:
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
NORMALS:
0 0 -1
0 0 -1
0 0 -1
0 0 -1
TEX:SIDE
POSITION:
-0.4 -0.64 0.3
0.4 -0.64 0.3
0.4 -0.64 -0.3
-0.4 -0.64 -0.3
UV COORDS:
0.4375 0.4375
0.5625 0.4375
0.5625 0.5625
0.4375 0.5625
COLORS:
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
NORMALS:
0 -1 0
0 -1 0
0 -1 0
0 -1 0
TEX:SIDE
POSITION:
-0.4 -0.64 0.3
-0.4 -0.5 0.3
0.4 -0.5 0.3
0.4 -0.64 0.3
UV COORDS:
0.4375 0.4375
0.5625 0.4375
0.5625 0.5625
0.4375 0.5625
COLORS:
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
NORMALS:
0 0 1
0 0 1
0 0 1
0 0 1
TEX:SIDE
POSITION:
0.4 -0.64 0.3
0.4 -0.5 0.3
0.4 -0.5 -0.3
0.4 -0.64 -0.3
UV COORDS:
0.4375 0.4375
0.5625 0.4375
0.5625 0.5625
0.4375 0.5625
COLORS:
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
NORMALS:
1 0 0
1 0 0
1 0 0
1 0 0
TEX:SIDE
POSITION:
-0.4 -0.64 -0.3
-0.4 -0.5 -0.3
-0.4 -0.5 0.3
-0.4 -0.64 0.3
UV COORDS:
0.4375 0.4375
0.5625 0.4375
0.5625 0.5625
0.4375 0.5625
COLORS:
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
NORMALS:
-1 -0 0
-1 -0 0
-1 -0 0
-1 -0 0
---------------- WEST QUADS ----------------
2
TEX:SIDE
POSITION:
-0.5 0 0.5
-0.5 0 -1.5
-0.5 0.5 -1.5
-0.5 0.5 0.5
UV COORDS:
0.5 -0.032227
0.5 1.032227
0 1.032227
0 -0.032227
NORMALS:
-1 0 0
-1 0 0
-1 0 0
-1 0 0
TEX:SIDE
POSITION:
-0.5 -0.5 0.5
-0.5 -0.5 -0.5
-0.5 0 -0.5
-0.5 0 0.5
UV COORDS:
1 -0.032227
1 0.5
0.5 0.5
0.5 -0.032227
NORMALS:
-1 -0 0
-1 -0 0
-1 -0 0
-1 -0 0
---------------- OMNI QUADS ----------------
0

View File

@ -26,5 +26,5 @@ exec("./outputs/TextBrick2.cs");
exec("./special/EventGate.cs");
exec("./special/rom.cs");
exec("./big/cpu1.cs");
exec("./big/ram8x12.cs");
//exec("./big/cpu1.cs");
//exec("./big/ram8x12.cs");

View File

@ -11,6 +11,8 @@ return function(gate, argv)
local code = keycode+(status and 128 or 0)
if #gate.queueBits > 1024 return end
queueBit(gate, 1)
for bitidx = 1, 8 do
local val = bit.band(code, 0x80)

View File

@ -14,7 +14,7 @@ datablock fxDTSBrickData(LogicGate_TextBrick2_Data){
isLogicInput = false;
logicUIName = "Text Brick";
logicUIDesc = "Takes 7-bit serial input for ascii character, format 1xxxxxxx10";
logicUIDesc = "Takes 7-bit serial input for ascii character, format 1xxxxxxx10, MSB first";
logicInit = lualogic_readfile($LuaLogic::Path @ "bricks/outputs/text2-init.lua" );
logicUpdate = lualogic_readfile($LuaLogic::Path @ "bricks/outputs/text2-update.lua");
@ -33,3 +33,26 @@ lualogic_registergatedefinition("LogicGate_TextBrick2_Data");
function LogicGate_TextBrick2_Data::LuaLogic_Callback(%data, %brick, %printname){
%brick.setPrint(lualogic_getprint(%printname));
}
// Pah's half-width prints
datablock fxDtsBrickData(LogicGate_TextBrick2Top2_Data : LogicGate_TextBrick2_Data) {
brickFile = $LuaLogic::Path @ "bricks/blb/ScreenTop.blb";
uiName = "Text Brick Right";
logicPortPos[0] = "0 0 0";
};
lualogic_registergatedefinition("LogicGate_TextBrick2Top2_Data");
function LogicGate_TextBrick2Top2_Data::LuaLogic_Callback(%data, %brick, %printname){
LogicGate_TextBrick2_Data::LuaLogic_Callback(%data, %brick, %printname);
}
datablock fxDtsBrickData(LogicGate_TextBrick2Bottom2_Data : LogicGate_TextBrick2_Data) {
brickFile = $LuaLogic::Path @ "bricks/blb/ScreenBottom.blb";
uiName = "Text Brick Left";
logicPortPos[0] = "0 0 0";
};
lualogic_registergatedefinition("LogicGate_TextBrick2Bottom2_Data");
function LogicGate_TextBrick2Bottom2_Data::LuaLogic_Callback(%data, %brick, %printname){
LogicGate_TextBrick2_Data::LuaLogic_Callback(%data, %brick, %printname);
}

View File

@ -21,7 +21,7 @@ package lualogic_rom_update {
function fxDTSBrick::onRemove(%brick) {
parent::onRemove(%brick);
%brick.lualogic_rom_delete = 1;
lualogic_rom_updatebrick(%brick);
lualogic_rom_updatebrick(%brick, 1);
}
function fxDtsBrick::setRaycasting(%brick, %val) {
parent::setRaycasting(%brick, %val);
@ -30,9 +30,10 @@ package lualogic_rom_update {
};
schedule(0, 0, activatePackage, lualogic_rom_update);
function lualogic_rom_updatebrick(%brick) {
function lualogic_rom_updatebrick(%brick, %instant) {
cancel(%brick.lualogic_rom_updatebrick_schedule);
%brick.lualogic_rom_updatebrick_schedule = schedule(100, 0, lualogic_rom_updatebrick_final, %brick);
if(%instant) lualogic_rom_updatebrick_final(%brick);
else %brick.lualogic_rom_updatebrick_schedule = schedule(100, 0, lualogic_rom_updatebrick_final, %brick);
}
function lualogic_rom_updatebrick_final(%brick) {
if(!isObject(%brick)) return;