Classes do sistema de entrada Lua¶
Permite que os scripts obtenham informações recebidas do usuário e acessem as portas de E/S da entrada do sistema emulado.
Gerenciador da porta E/S¶
Encapsula a classe ioport_port
do MAME que representa uma porta emulada de E/S,
assim como, lida com as configurações da entrada.
Instanciação¶
manager.machine:ioport()
Obtém a instância do gerenciador global da porta de E/S para o sistema emulado.
Métodos¶
ioport:count_players()
Retorna a quantidade dos controladores do jogador no sistema.
ioport:type_pressed(tipo, [jogador])
Retorna um booleano indicando se a entrada informada foi atualmente pressionada. O tipo da entrada pode ser um valor enumerado ou um tipo de acesso. Caso o tipo de acesso seja um valor enumerado, número do jogador é um índice com base zero. Se o número do jogador não for informado, será presumido que seja zero, sendo o tipo da entrada um tipo de acesso, o número do jogador não poderá ser informado de forma separada.
ioport:type_name(tipo, [jogador])
Retorna o nome da exibição para o tipo da entrada informada e o número do jogador. O tipo da entrada é um valor enumerado. O número do jogador é um índice com base zero. Se o número do jogador não for informado, será presumido que seja zero.
ioport:type_group(tipo, [jogador])
Retorna a entrada do grupo para o tipo da entrada informada e o número do jogador. O tipo da entrada é um valor enumerado. O número do jogador é um índice com base zero. Retorna um valor inteiro informando o agrupamento para a entrada. Se o número do jogador não for informado, será presumido que seja zero.
Deve ser invocado com os valores obtidos a partir dos campos da porta de E/S para informar o agrupamento canônico da configuração da entrada numa IU.
ioport:type_seq(tipo, [jogador], [tipo_da_sequência])
Obtenha a configuração do tipo da sequência da entrada para um determinado tipo de acesso, o número do jogador e o tipo da sequência. O tipo da entrada pode ser um valor enumerado ou um tipo de acesso. Caso o tipo de acesso seja um valor enumerado, o número do jogador pode ser informado como um índice com base zero, caso contrário, será presumido que seja zero, sendo o tipo da entrada um tipo de acesso, o número do jogador não poderá ser informado de forma separada. Havendo a informação do tipo da sequência, ela deve ser
"standard"
,"increment"
ou"decrement"
, na sua ausência, será presumido que seja"standard"
.Isso fornece acesso à configuração geral da entrada.
ioport:set_type_seq (tipo, [jogador], tipo_da_sequência, sequência)
Define a configuração da sequência de entrada para um determinado tipo de acesso, o número do jogador e o tipo da sequência. O tipo da entrada pode ser um valor enumerado ou um tipo de acesso. Caso o tipo de acesso seja um valor enumerado, o número do jogador pode ser informado como um índice com base zero, sendo o tipo da entrada um tipo de acesso, o número do jogador não poderá ser informado de forma separada. A sequência deve ser
"standard"
,"increment"
ou"decrement"
.Isso permite que a configuração geral da entrada possa ser definida.
ioport:token_to_input_type(string)
Retorna uma string com o tipo da entrada e o número do jogador para o tipo da entrada do token informado.
ioport:input_type_to_token(tipo, [jogador])
Retorna uma string do token para o tipo da entrada informada e o número do jogador. Se o número do jogador não for informado, será presumido que seja zero.
Propriedades¶
ioport.types[ ] (somente leitura)
Obtém o tipo de acesso compatível. As teclas são índices arbitrários. Todas as operações compatíveis possuem complexidade O(1).
ioport.ports[ ]
Obtém a emulação da porta de E/S no sistema. Chaves são tags absolutas. Os métodos
at
e oindex_of
têm complexidade O(n); todas as outras operações compatíveis têm complexidade O(1).
Gerenciador de teclado natural¶
Encapsula a classe natural_keyboard
do MAME que gerencia o teclado emulado e as
entradas do teclado.
Instanciação¶
manager.machine.natkeyboard
Obtém a instância do gerenciador do teclado natural global para o sistema que está sendo emulado.
Métodos¶
natkeyboard:post(texto)
Publique um texto literal no sistema emulado. O sistema deve ter uma entrada de teclado com os caracteres vinculados e o dispositivo correto da entrada do teclado deve estar ativado.
natkeyboard:post_coded(texto)
Publique o texto no sistema que está sendo emulado. Os códigos entre chaves são interpretados no texto. O sistema deve ter as entradas do teclado com os caracteres vinculados e o dispositivo correto da entrada do teclado deve estar ativado.
Os códigos reconhecidos são
{BACKSPACE}
,{BS}
,{BKSP}
,{DEL}
,{DELETE}
,{END}
,{ENTER}
,{ESC}
,{HOME}
,{INS}
,{INSERT}
,{PGDN}
,{PGUP}
,{SPACE}
,{TAB}
,{F1}
,{F2}
,{F3}
,{F4}
,{F5}
,{F6}
,{F7}
,{F8}
,{F9}
,{F10}
,{F11}
,{F12}
e{QUOTE}
.
natkeyboard:paste()
Publique o conteúdo da área de transferência do host no sistema emulado. O sistema deve ter as entradas do teclado com caracteres vinculados e o dispositivo correto da entrada do teclado deve estar ativado.
natkeyboard:dump()
Retorna uma string com uma descrição legível do teclado e dos dispositivos de entrada do teclado numérico no sistema, se eles estão ativados e os seus caracteres vinculados.
Propriedades¶
natkeyboard.empty (somente leitura)
Um booleano que indica se o buffer da entrada do gerenciador do teclado natural está vazio.
natkeyboard.full (somente leitura)
Um booleano que indica se o buffer da entrada do gerenciador do teclado natural está cheio.
natkeyboard.can_post (somente leitura)
Um booleano que indica se o sistema emulado suporta a postagem dos dados dos caracteres através do gerenciador do teclado natural.
natkeyboard.is_posting (somente leitura)
Um booleano que indica se os dados postados dos caracteres estão sendo entregues ao sistema que está sendo emulado.
natkeyboard.in_use (leitura e escrita)
Um booleano que indica se o modo “teclado natural” está ativado. Quando O modo “teclado natural” está ativado o gerenciador do teclado natural traduz a entrada de caractere do host para pressionamentos da tecla do sistema emulado.
natkeyboard.keyboards[ ]
Obtém o dispositivo de entrada do teclado no sistema que está sendo emulado, indexado através da tag absoluta do dispositivo. O índice get tem O(n) complexidade; todas as outras operações compatíveis têm complexidade O(1).
Dispositivo de entrada do teclado¶
Representa um teclado ou dispositivo de entrada do teclado que é gerenciado pelo gerenciador do teclado natural. Observe que isso não é uma classe de dispositivo.
Instanciação¶
manager.machine.natkeyboard.keyboards[tag]
Obtém o dispositivo da entrada do teclado com a tag informada ou
nil
se a tag não corresponder a um dispositivo da entrada do teclado.
Propriedades¶
keyboard.device (somente leitura)
O dispositivo subjacente.
keyboard.tag (somente leitura)
A tag absoluta do dispositivo subjacente.
keyboard.basetag (somente leitura)
O último componente da tag do dispositivo subjacente ou
"root"
para o dispositivo raiz do sistema.
keyboard.name (somente leitura)
A descrição legível para as pessoas do tipo do dispositivo subjacente.
keyboard.shortname (somente leitura)
O identificador do tipo do dispositivo subjacente.
keyboard.is_keypad (somente leitura)
Um booleano que indica se o dispositivo subjacente possui as entradas do teclado numérico, mas não para a entradas do teclado. Isso é usado para determinar quais dispositivos da entrada do teclado deve ser ativado por padrão.
keyboard.enabled (leitura e escrita)
Um booleano que indica se as entradas do teclado e/ou do teclado numérico do dispositivo estão ativados.
Porta de E/S¶
Encapsula a classe ioport_port
do MAME que representa uma porta emulada de E/S.
Instanciação¶
manager.machine.ioport.ports[tag]
Obtém uma porta de E/S emulada através da tag absoluta ou
nil
caso a tag não corresponda a uma porta de E/S.
manager.machine.devices[devtag]:ioport(porttag)
Obtém uma porta de E/S emulada através da tag relativa a um dispositivo ou
nil
se não houver nenhuma porta de E/S.
Métodos¶
port:read()
Leia o valor de entrada atual. Retorna um número inteiro com 32 bits.
port:write(valor, máscara)
Grave nos campos da saída da porta de E/S que são configuradas na máscara informada. A máscara e o valor devem ser inteiros e com 32 bits. Observe que isso não define os valores para os campos da entrada.
port:field(máscara)
Obtenha o primeiro campo da porta de E/S correspondente aos bits que são definidos na máscara informada ou
nil
se não houver nenhum campo correspondente.
Propriedades¶
port.device (somente leitura)
O dispositivo que possui a porta de E/S.
port.tag (somente leitura)
A etiqueta absoluta da porta E/S
port.active (somente leitura)
Uma máscara indicando quais os bits da porta E/S correspondem aos campos ativos (isto é, os bits que não utilizados ou não foram atribuídos).
port.live (somente leitura)
O estado ativo da porta de E/S.
port.fields[ ] (somente leitura)
Obtém uma tabela do campo da porta de E/S indexados por nome.
Campo da porta de E/S¶
Encapsula a classe ioport_field
do MAME que representa um campo dentro da porta
de E/S.
Instanciação¶
manager.machine.ioport.ports[tag]:field(máscara)
Obtém um campo para a porta informada através dos bits da máscara.
manager.machine.ioport.ports[tag].fields[nome]
Obtém um campo para a porta informada através do nome de exibição.
Métodos¶
field:set_value(valor)
Define o valor do campo da porta de E/S. Para os campos digitais, o valor é comparado com zero para determinar se o campo deve estar ativo; para os campos analógicos, o valor deve estar alinhado à direita e no intervalo correto.
field:clear_value()
Limpa o valor programado excedente e restaura o comportamento regular do campo.
field:set_input_seq(tipo_da_sequência, sequência)
Define a sequência de entrada para o tipo da sequência informada. Isso é usado para definir as configurações da entrada por sistema. O tipo da sequência deve ser
"standard"
,"increment"
ou"decrement"
.
field:input_seq(tipo_da_sequência)
Obtenha a sequência de entrada configurada para o tipo da sequência informada. Isso obtém as configurações da entrada por sistema. O tipo da sequência deve ser
"standard"
,"increment"
ou"decrement"
.
field:set_default_input_seq(tipo_da_sequência, sequência)
Define a sequência de entrada predefinida para o tipo da sequência informada. É usado para definir as configurações gerais da entrada. O tipo da sequência deve ser
"standard"
,"increment"
ou"decrement"
.
field:default_input_seq(tipo_da_sequência)
Obtém a sequência de entrada predefinida para o tipo da sequência informada. Obtém as configurações gerais da entrada. O tipo da sequência deve ser
"standard"
,"increment"
ou"decrement"
.
field:keyboard_codes(shift)
Obtém uma tabela dos caracteres correspondentes ao campo para o estado do shift informado. O estado do shift é uma máscara de bits das teclas ativas do shift.
Propriedades¶
field.device (somente leitura)
O dispositivo que possui a porta que o campo pertence.
field.port (somente leitura)
A porta de E/S que o campo pertence.
field.live (somente leitura)
O estado do campo da porta de E/S em tempo real do campo.
field.type (somente leitura)
O tipo da entrada do campo. Este é um valor enumerado.
field.name (somente leitura)
O nome da exibição do campo.
field.default_name (somente leitura)
O nome da configuração para o campo do sistema emulado (não pode ser substituído por scripts ou plug-ins).
field.player (somente leitura)
O número do jogador para o campo com base zero.
field.mask (somente leitura)
Os Bits na porta de E/S correspondente a este campo.
field.defvalue (somente leitura)
O valor predefinido do campo.
field.minvalue (somente leitura)
O valor mínimo permitido nos campos analógicos ou
nil
nos campos digitais.
field.maxvalue (somente leitura)
O valor máximo permitido nos campos analógicos ou
nil
nos campos digitais.
field.sensitivity (somente leitura)
A sensibilidade ou ganho para os campos analógicos ou
nil
nos campos digitais.
field.way (somente leitura)
A quantidade das direções permitidas através do restritor da placa/portão para um joystick digital ou zero (
0
) para as outras entradas.
field.type_class (somente leitura)
O tipo da classe para o campo da entrada para um dos
"keyboard"
,"controller"
,"config"
,"dipswitch"
ou"misc"
.
field.is_analog (somente leitura)
Um booleano que indica se o campo é um eixo analógico ou controle posicional.
field.is_digital_joystick (somente leitura)
Um booleano que indica se o campo corresponde ao comutador de um joystick digital.
field.enabled (somente leitura)
Um booleano que indica se o campo está ativado.
field.optional (somente leitura)
Um booleano que indica se o campo é opcional e não é obrigatório para uso no sistema que está sendo emulado.
field.cocktail (somente leitura)
Um booleano que indica se o campo é usado apenas quando o sistema é configurado para um gabinete de mesa tipo coquetel.
field.toggle (somente leitura)
Um booleano que indica se o campo corresponde a uma botão do hardware tipo liga/desliga ou um botão de pressão.
field.rotated (somente leitura)
Um booleano que indica se o campo corresponde a um controle que é rotacionado em relação à orientação padrão.
field.analog_reverse (somente leitura)
Um booleano que indica se o campo corresponde a um controle analógico que aumenta na direção oposta à convenção (por exemplo, valores maiores quando um pedal é solto ou um joystick é movido para a esquerda).
field.analog_reset (somente leitura)
Um booleano que indica se o campo corresponde a um incremental da posição da entrada (por exemplo, um dial ou eixo do trackball) que deve ser redefinida para zero para cada quadro do vídeo.
field.analog_wraps (somente leitura)
Um booleano que indica se o campo corresponde a uma entrada analógica que encapsula a partir de uma extremidade da sua faixa para a outra (por exemplo, uma posição incremental como a entrada de um dial ou o eixo do trackball).
field.analog_invert (somente leitura)
Um booleano que indica se o campo corresponde a uma entrada analógica que tem o seu valor complementado.
field.impulse (somente leitura)
Um booleano que indica se o campo corresponde a uma entrada digital que é ativado por um determinado período de tempo fixo.
field.crosshair_scale (somente leitura)
O fator de escala para traduzir o intervalo do campo para a posição da mira. Um valor de um (
1
) que traduz o intervalo total do campo para a largura total ou altura da tela.
field.crosshair_offset (somente leitura)
O offset para traduzir o intervalo do campo para a posição da mira.
field.user_value (leitura e escrita)
O valor da chave DIP ou das definições da configuração.
field.settings[ ] (somente leitura)
Obtém uma tabela das configurações ativadas atualmente para um interruptor DIP ou o campo de configuração, indexado por valor.
Estado do campo da porta de E/S em tempo real¶
Encapsula a classe ioport_field_live
do MAME que representa o estado em tempo
real de uma porta de E/S.
Instanciação¶
manager.machine.ioport.ports[tag]:field(máscara).live
Obtém o estado em tempo real para um campo da porta de E/S.
Propriedades¶
live.name
O nome da exibição do campo.
Tipo da entrada¶
Envelopa a classe input_type_entry
do MAME, faz a representação do
tipo de acesso ou do tipo de acesso da interface do usuário no emulador.
Os tipo de acesso são identificados de forma única através da combinação
do índice do jogador e do tipo do valor da sua enumeração.
Instanciação¶
manager.machine.ioport.types[índice]
Obtém um tipo de acesso compatível.
Propriedades¶
type.type (somente leitura)
Um valor enumerado que representa o tipo de acesso.
type.group (somente leitura)
Um valor inteiro que fornece o agrupamento para o tipo de acesso. Deve ser utilizado para fornecer um agrupamento canônico numa configuração de entrada da interface do usuário (IU).
type.player (somente leitura)
Número do jogador com base zero ou zero para controles não relacionados com o jogador.
type.token (somente leitura)
A string de um token para o tipo de acesso, usado nos arquivos de configuração.
type.name (somente leitura)
O nome do tela para o tipo de acesso.
type.is_analog (somente leitura)
Retorna um booleano indicando se o tipo de acesso é analógico ou digital. As entradas que possuam apenas as condições ligado ou desligado são consideradas digitais, enquanto todas as outras são consideradas analógicas ainda que elas representem apenas valores discretos ou posições.
Gerenciador da entrada¶
Encapsula a classe input_manager
do MAME que lê os dispositivos da entrada do
host e verifica se as entradas configuradas estão ativas.
Instanciação¶
manager.machine:input()
Obtém a instância global do gerenciador da entrada para o sistema que está sendo emulado.
Métodos¶
input:code_value(código)
Obtém o valor atual para a entrada do host correspondente ao código informado. Retorna um valor inteiro assinado onde zero é a posição neutra.
input:code_pressed(código)
Retorna um booleano indicando se o código informado da entrada do host correspondente tem um valor diferente de zero (ou seja, não é uma posição neutra).
input:code_pressed_once(código)
Retorna um booleano indicando se o código informado da entrada do host correspondente saiu da posição neutra desde a última vez que foi verificado através desta função. O gerenciador da entrada pode rastrear uma quantidade de entradas desta forma.
input:code_name(código)
Obtenha o nome de exibição para um código da entrada.
input:code_to_token(código)
Obtenha a string do token para um código da entrada. Isso deve ser usado ao salvar uma configuração.
input:code_from_token(token)
Converta uma string do token num código de entrada. Retorna o código de entrada inválido se o token não for válido ou caso pertença a um dispositivo de entrada que não está presente.
input:seq_pressed(sequência)
Retorna um booleano indicando se a sequência da entrada informada foi realmente pressionada.
input:seq_clean(sequência)
Remova os elementos inválidos da sequência da entrada informada. Retorna uma nova, sequência limpa da entrada.
input:seq_name(sequência)
Obtenha o texto de exibição para uma sequência da entrada.
input:seq_to_tokens(sequência)
Converta uma sequência da entrada numa string token. Isso deve ser usado quando for salvar na configuração.
input:seq_from_tokens(tokens)
Converta uma string token numa sequência da entrada. Isso deve ser usado quando for carregar uma configuração.
input:axis_code_poller()
Retorna um código da condição da entrada para obter um código da entrada do host analógico.
input:switch_code_poller()
Retorna um código da condição da entrada para obter um código da entrada do interruptor do host.
input:keyboard_code_poller()
Retorna um código da condição da entrada para a obtenção de um código da entrada do interruptor do host que considera apenas a entrada dos dispositivos do teclado.
input:axis_sequence_poller()
Retorna uma sequência da condição da entrada para obter uma sequência da entrada para configurar uma entrada analógica.
input:axis_sequence_poller()
Retorna uma sequência da condição da entrada para obter uma sequência da entrada para configurar uma entrada digital.
Propriedades¶
input.device_classes[ ] (somente leitura)
Pega uma tabela host host da classe do dispositivo da entrada indexada por nome.
Código da condição da entrada¶
Encapsula a classe input_code_poller
do MAME que é usada para pesquisar as
entradas do host que estão sendo ativadas.
Instanciação¶
manager.machine.input:axis_code_poller()
Retorna uma condição do código da entrada que pesquisa as entradas analógicas que estão sendo ativadas.
manager.machine.input:switch_code_poller()
Retorna uma condição do código da entrada que pesquisa as entradas do interruptor do host que estão sendo ativadas.
manager.machine.input:keyboard_code_poller()
Retorna uma condição do código da entrada que pesquisa as entradas do interruptor do host que estão sendo ativadas, considerando apenas os dispositivos da entrada do teclado.
Métodos¶
poller:reset()
Redefine a lógica da pesquisa. As entradas do interruptor ativo são apagadas e as entradas das posições analógica são definidas.
poller:poll()
Retorna um código da entrada correspondente à primeira entrada relevante do host que foi ativado desde a última vez que o método foi invocado. Retorna um código de entrada inválido caso nenhuma entrada relevante tenha sido ativada.
Sequência da condição da entrada¶
Encapsula a classe da condição input_sequence_poller
do MAME que permite que os
usuários atribuam combinações na entrada do host para as entradas
emuladas e outras ações.
Instanciação¶
manager.machine.input:axis_sequence_poller()
Retorna uma condição da sequência da entrada para atribuir as entradas do host a uma entrada analógica.
manager.machine.input:switch_sequence_poller()
Retorna uma condição da sequência da entrada para atribuir as entradas do host a entrada de um interruptor.
Métodos¶
poller:start([seq])
Comece a obter. Caso uma sequência seja fornecida, ela será usada como uma sequência inicial para entradas analógicas, o usuário pode alternar entre a faixa completa e as porções positivas e negativas de um eixo; para as entradas do interruptor, um código “or” é anexado e o usuário pode adicionar uma combinação alternativa da entrada do host.
poller:poll()
Obtém a entrada do usuário e atualiza a sequência, caso seja apropriado. Retorna um booleano que indica se a entrada da sequência está completa. Se este método retornar falso, você deve continuar com o processo de obtenção.
Propriedades¶
poller.sequence (somente leitura)
A sequência da entrada atual. É atualizado durante o processo de obtenção. É possível para que a sequência se torne inválida.
poller.valid (somente leitura)
Um booleano que indica se a sequência da entrada atual é válida.
poller.modified (somente leitura)
Um booleano que indica se a sequência foi alterada através de alguma entrada do usuário desde o início do processo.
Sequência da entrada¶
Encapsula a classe input_seq
do MAME que representa a combinação das entradas
do host que possam ser lidos ou designados para uma determinada
entrada da emulação. As sequências da entrada podem ser manipuladas
usando os métodos do
gerenciador da entrada.
Use um
obtentor da sequência de entrada
para obter uma sequência da entrada a partir do usuário.
Instanciação¶
emu.input_seq()
Cria uma sequência vazia da entrada.
emu.input_seq(seq)
Cria uma cópia de uma sequência já existente da entrada.
Métodos¶
seq:reset()
Limpa a sequência da entrada, removendo todos os itens.
seq:set_default()
Define a sequência da entrada num único item contendo o valor meta que definindo qual a configuração padrão deve ser usada.
Propriedades¶
seq.empty (somente leitura)
Um booleano indicando se a sequência da entrada está vazia (não possui quaisquer itens, indicando uma entrada sem atribuição).
seq.length (somente leitura)
A quantidade dos itens na sequência da entrada.
seq.is_valid (somente leitura)
Um booleano indicando se a sequência da entrada é válida. Para ser válido, deve conter pelo menos um item, todos os itens devem possuir códigos válidos, todos os grupos dos produtos devem conter pelo menos um item que não seja negado e os itens referentes aos eixos absolutos e relativos não devem ser misturados dentro de um grupo de produtos.
seq.is_default (somente leitura)
Um booleano indicando se a sequência da entrada define se a configuração deve ser usada.
Host da classe do dispositivo da entrada¶
Encapsula a classe input_class
do MAME que representa uma categoria da entrada
do host dos dispositivos (por exemplo, teclados ou joysticks).
Instanciação¶
manager.machine.input.device_classes[nome]
Obtém uma entrada da classe do dispositivo por nome.
Propriedades¶
devclass.name (somente leitura)
O nome da classe do dispositivo.
devclass.enabled (somente leitura)
Um booleano que indica se a classe do dispositivo está ativo.
devclass.multi (somente leitura)
Um booleano que indica se a classe do dispositivo oferece suporte a vários dispositivos ou as entradas de todos os dispositivos da classe são combinadas e tratadas como um único dispositivo.
devclass.devices[ ] (somente leitura)
Obtém uma tabela host do dispositivo da entrada na classe. As chaves são os índices com base
1
.
Host do dispositivo da entrada¶
Encapsula a classe input_device
do MAME que representa um dispositivo da
entrada do host.
Instanciação¶
manager.machine.input.device_classes[nome].devices[índice]
Obtém um dispositivo de entrada específica de um host.
Propriedades¶
inputdev.name (somente leitura)
Nome da exibição do dispositivo. Não há garantia de que isso seja exclusivo.
inputdev.id (somente leitura)
A string do identificador exclusivo para o dispositivo. Isso pode não ser legível para as pessoas.
inputdev.devindex (somente leitura)
O índice do dispositivo dentro da classe de dispositivo. Isso não é necessariamente o mesmo que o índice na propriedade
devices
da classe do dispositivo o índice dodevindex
podem não ser contíguos.
inputdev.items (somente leitura)
Obtém as tabelas host do item do dispositivo da entrada, indexado através da ID do item. A ID do item é um valor enumerado.
Host do item do dispositivo da entrada¶
Encapsula a classe input_device_item
do MAME que representa uma única entrada
do host (por exemplo uma chave, botão ou eixo).
Instanciação¶
manager.machine.input.device_classes[nome].devices[índice].items[id]
Obtém um item individual da entrada do host. A ID do item é um valor enumerado.
Propriedades¶
item.name (somente leitura)
O nome da exibição da entrada do item. Observe que este é apenas o nome do próprio item que não inclui o nome do dispositivo. O nome completo da exibição para o item pode ser obtido ao invocar o método
code_name
no gerenciador da entrada com o código do item.
item.code (somente leitura)
O código de identificação da entrada do item. Isso é usado por vários métodos do gerenciador da entrada.
item.token (somente leitura)
A string token do item da entrada. Observe que este é um fragmento do token para o próprio item que não inclui a parte do dispositivo. O token completo para o item pode ser obtido ao invocar o método
code_to_token
no gerenciador da entrada com o código do item.
item.current (somente leitura)
O valor atual do item. Este é um número inteiro assinado onde zero é a posição neutra.
Gerenciador da entrada da IU¶
Encapsula a classe ui_input_manager
do MAME que é usada para a entrada de alto
nível.
Instanciação¶
manager.machine.uiinput
Obtém a instância do gerenciador da entrada global da IU para a sistema.
Métodos¶
uiinput:reset()
Limpa os eventos pendentes e os estados da interface de entrada do usuário. Deve ser chamado ao encerrar o modo de um estado onde a entrada é tratada diretamente (ao configurar uma combinação de entrada por exemplo).
uiinput:pressed(tipo)
Retorna um booleano indicando se a entrada da IU informada foi pressionada. O tipo da entrada é um valor enumerado.
uiinput:pressed_repeat(tipo, velocidade)
Retorna um booleano indicando se a entrada da IU informada foi pressionada ou a repetição automática foi disparada na velocidade informada. O tipo da entrada é um valor enumerado; a velocidade é um intervalo em sessenta avos de um segundo.
Propriedades¶
uiinput.presses_enabled (leitura e escrita)
Se o gerenciador da entrada da IU verificará se há atualizações do quadro das entradas da IU.