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 o index_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)

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 do devindex 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.