add buttn fgos and modul um

This commit is contained in:
2025-01-31 10:14:34 +03:00
parent ccbf5fa368
commit 7feca8a40c
9 changed files with 224 additions and 128 deletions

View File

@@ -8,12 +8,12 @@ func _on_read_ems_g():
$load_boadr.visible = true
Constants.EMS_G_PORT_DATA_HOLDER.clear()
for i_input in 16:
Network.write_port_isa(Constants.EMS_G_BASE_ADDR+2, 1+i_input)
Network.read_port_isa([Constants.EMS_G_BASE_ADDR+0xA])
Network.write_port_isa(Constants.BASE_PORTS.EMS_G+2, 1+i_input)
Network.read_port_isa([Constants.BASE_PORTS.EMS_G+0xA])
for i_output in range(46, 62):
Network.write_port_isa(Constants.EMS_G_BASE_ADDR+2, 1+i_output)
Network.read_port_isa([Constants.EMS_G_BASE_ADDR+4, Constants.EMS_G_BASE_ADDR+8])
Network.write_port_isa(Constants.BASE_PORTS.EMS_G+2, 1+i_output)
Network.read_port_isa([Constants.BASE_PORTS.EMS_G+4, Constants.BASE_PORTS.EMS_G+8])
func _on_sync():
@@ -98,7 +98,7 @@ func _on_data_received(data_from_yau_07):
var parent_node2 = get_parent().get_parent()
process_sockets_vert(in_blank, in_imp, 16, 1, parent_node2)
#process_sockets_horizon(out_blank, out_imp, 16, 2, parent_node2)
process_sockets_horizon(out_blank, out_imp, 16, 2, parent_node2)
func process_sockets_horizon(blank: int, imp: int, count: int, col: int, parent_node2: Node):
@@ -207,11 +207,11 @@ func on_mouse_entered(meta_area):
func on_mode_link(mode, list):
## Формирование команды для выбора устройства
var meta = list.get_meta('device')
var address_port_wr = Constants.EMS_G_BASE_ADDR+2
var address_port_wr = Constants.BASE_PORTS.EMS_G+2
Network.write_port_isa(address_port_wr, meta) # Отправка команды
## Формирование команды для отправкы команды на устройство
address_port_wr = Constants.EMS_G_BASE_ADDR+8
address_port_wr = Constants.BASE_PORTS.EMS_G+8
var set_mode = 0x0000 if mode == 0 else 0x2000 if mode == 1 else 0x4000 if mode == 2 else 0x8000
Network.write_port_isa(address_port_wr, set_mode)
@@ -219,11 +219,11 @@ func on_mode_link(mode, list):
func _on_btn_connect(toggled_on: bool, chk_btn: Node):
## Формирование команды для выбора устройства
var meta = chk_btn.get_meta('device')
Network.write_port_isa(Constants.EMS_G_BASE_ADDR+2, meta[1]) # Отправка команды
Network.write_port_isa(Constants.BASE_PORTS.EMS_G+2, meta[1]) # Отправка команды
## Формирование команды для отправкы команды на устройство
if toggled_on:
button_link_meta[meta[1]] += 1 << meta[0]-1
else:
button_link_meta[meta[1]] -= 1 << meta[0]-1
Network.write_port_isa(Constants.EMS_G_BASE_ADDR+4, button_link_meta[meta[1]])
Network.write_port_isa(Constants.BASE_PORTS.EMS_G+4, button_link_meta[meta[1]])