Arqueologia Digital

Ano 1 · Ano 2 · Ano 3 · Ano 4 · Ano 5 · Ano 6 · Ano 7 · Ano 8 · Ano 9

Tópicos › Oitavo ano › Emulação do Technics KN5000

Emulação do Technics KN5000

Durante o ano, Felipe "Juca" Sanches avançou o driver do teclado Technics KN5000 no MAME. Patches na ROM fizeram a sequência de boot avançar. Um dump, ainda incompleto, da ROM de boot da subCPU foi obtido pela porta serial. A variante TMP94C241 do TLCS-900 foi aceita; em seguida, Felipe começou a implementar o micro DMA, abriu um PR de rascunho da porta serial e teve aceito o barramento de expansão com a placa HD-AE5000. Também se discutiram compiladores para a CPU do teclado.

Oitavo ano: novembro de 2024 a outubro de 2025

Patches na ROM e sequência de boot

Patches na program ROM enganaram o self-test do painel e forçaram a exibição de telas internas pelo ID, e dezenas delas foram registradas. Depois, o script de patching do repositório kn5000_homebrew foi refatorado. Felipe disse que a VM do Another World rodando no KN5000 emulado já era quase realidade, ainda "extremamente bugada".

Teclados Technics (KN5000, KN7000 e outros): todos os anos ›

10 dez 2024 KN5000: patches na ROM e telas internas por ID ★★★

Felipe "Juca" Sanches avançou a sequência de boot do emulador do KN5000 no MAME com patches na program ROM. Um deles engana o self-test dos LEDs e botões do painel e elimina o erro de comunicação com os MCUs do painel. Outro força telas internas pelo ID gravado no endereço FB7863. Ele registrou dezenas de telas: demonstrações, equalizador, testes de drive de disquete, de LCD e de varredura de teclas. O objetivo declarado é entender o boot para dispensar esses hacks no emulador.

Participantes: Felipe "Juca" Sanches, L., Pablo Vasques Bravo-Villalba

Ir para o início da conversa · mensagens-chave: #33503 · #33511

5 fev 2025 VM do Another World rodando no KN5000 emulado ★★

Felipe "Juca" Sanches comentou seus projetos recorrentes e disse que a VM do Another World rodando no KN5000 emulado no MAME já é quase realidade, ainda "extremamente bugada". Perguntado por Shideravan, explicou que o teclado é um computador com controlador VGA.

Participantes: Hugo (Agaelebê), Felipe "Juca" Sanches, L., Shideravan

Ir para o início da conversa · mensagens-chave: #34286 · #34297 · #34298

25 fev 2025 Refatoração do script de patches do KN5000 ★★

Felipe "Juca" Sanches refatorou o script de patching das ROMs do Technics KN5000 no repositório kn5000_homebrew.

Participantes: Felipe "Juca" Sanches

Ir para o início da conversa

Dump da ROM de boot da subCPU

Felipe trocou um plano complexo de dump pela ideia de fazer a subCPU enviar sua mask ROM pela porta serial do teclado. Documentou o disassembly do payload e, em 20/01, obteve um dump que parecia bom. Nas sessões no Calango Hacker Clube, trabalhou nos handlers de interrupção da serial para que o payload recebesse comandos e fizesse dumps da bootrom.

Teclados Technics (KN5000, KN7000 e outros): todos os anos ›

13 jan 2025 Dump da ROM de boot da subCPU do KN5000 ★★★

Felipe "Juca" Sanches trocou um plano complexo de dump por uma ideia mais direta: fazer a subCPU enviar sua mask ROM pela porta RS-422 "computer interface" do teclado. Para isso, encomendou um conversor e conectores. Constatou que a carga do payload e a comunicação entre as CPUs dependem do micro DMA, ainda não emulado no core TLCS-900 do MAME. Documentou o disassembly do payload da subCPU e, em 20/01, obteve um dump que parecia bom.

Participantes: Felipe "Juca" Sanches

Ir para o início da conversa · mensagens-chave: #33829 · #33947

17 fev 2025 Sessões de hacking do KN5000 no Calango Hacker Clube ★★

Felipe "Juca" Sanches se reuniu no Calango Hacker Clube, em Brasília, para continuar o trabalho de emulação no MAME. Iniciou o rebase do PR do KN5000 e passou a resolver os conflitos. Numa sessão, trabalhou no patch dos handlers de interrupção TX/RX da serial #1 da subCPU, para que o payload receba comandos do laptop e faça dumps da bootrom. Em seguida compartilhou o link do PR #13386.

Participantes: Felipe "Juca" Sanches, Shideravan

Ir para o início da conversa · mensagens-chave: #34538 · #34539

TMP94C241 no MAME: merge, micro DMA e serial

Felipe dividiu o código do KN5000 em PRs menores, e o da variante TMP94C241, implementada a partir do datasheet, foi aceito após várias revisões. Depois ele começou a implementar o micro DMA, que deu os primeiros sinais de funcionamento, e passou a unificá-lo com o da variante do NeoGeo Pocket. Também abriu um PR de rascunho com a porta serial usada pelo painel e pelo MIDI.

Teclados Technics (KN5000, KN7000 e outros): todos os anos ›

12 jan 2025 KN5000: PRs fatiados para o MAME ★★

Felipe "Juca" Sanches relatou a dificuldade de fazer o PR do KN5000 ser aceito no MAME e passou a dividir o código em PRs menores. O PR de melhorias no layout interno foi aceito, e ele apontou o da variante TMP94C241 como o mais importante.

Participantes: Felipe "Juca" Sanches

Ir para o início da conversa · mensagens-chave: #33802

17 fev 2025 Merge da variante TMP94C241 no MAME ★★★

Após várias revisões e rebases, o PR com a variante TMP94C241 do TLCS-900, implementada a partir do datasheet, foi aceito no MAME. Com isso, o driver do KN5000 avança mais no boot. Felipe "Juca" Sanches explicou que ainda tem commits pendentes, entre eles a declaração da ROM da subCPU. O dump, ainda incompleto, foi obtido com um patch no payload que envia os dados pela serial da própria subCPU.

Participantes: Felipe "Juca" Sanches, Shideravan, RicBit, Pedro de Medeiros 👾

Ir para o início da conversa · mensagens-chave: #34463 · #34468 · #34474

22 fev 2025 Micro DMA no core TMP94C241 do MAME ★★

Felipe "Juca" Sanches começou a implementar o micro DMA no core TMP94C241, que deu os primeiros sinais de funcionamento. Passou então a unificá-lo com a implementação existente da variante usada no NeoGeo Pocket.

Participantes: Felipe "Juca" Sanches

Ir para o início da conversa · mensagens-chave: #34550

26 out 2025 Porta serial do TMP94C241 para o Technics KN5000 ★★

Felipe abre um PR de rascunho com a implementação da porta serial do TMP94C241, usada pelo painel de controle e pelo MIDI do Technics KN5000.

Participantes: Felipe "Juca" Sanches

Ir para o início da conversa

Barramento de expansão e placa HD-AE5000

Felipe escaneou o guia de instalação da HD-AE5000, placa opcional de disco rígido para o KN5000, e encontrou um desenho do teclado num CD-ROM de 1997. O PR #14068, com o barramento de expansão e a placa, foi aceito em 4 de setembro.

Teclados Technics (KN5000, KN7000 e outros): todos os anos ›

1 mar 2025 Manual escaneado da placa HD-AE5000 ★★

Felipe "Juca" Sanches escaneou e compartilhou o guia de instalação da HD-AE5000, placa opcional de disco rígido de terceiros para o Technics KN5000. Informou que tem mais três ou quatro documentos sobre o tema para escanear.

Participantes: Felipe "Juca" Sanches

Ir para o início da conversa · mensagens-chave: #34601

  • Guia de instalação escaneado da placa HD-AE5000 (HD-AE5000 installation guide.pdf)
11 abr 2025 Ilustração do KN5000 em CD-ROM de 1997 ★

Felipe "Juca" Sanches encontrou um desenho do Technics KN5000 num CD-ROM de 1997 do Internet Archive, acessível pelo discmaster.

Participantes: Felipe "Juca" Sanches

Ir para o início da conversa

18 ago 2025 Barramento de expansão do Technics KN5000 e placa HD-AE5000 ★★

Felipe abre o PR #14068, que adiciona ao MAME o barramento de expansão do Technics KN5000 e a placa opcional HD-AE5000. O PR é aceito em 4 de setembro.

Participantes: Felipe "Juca" Sanches

Ir para o início da conversa · mensagens-chave: #35477

Compiladores para o TLCS-900

Felipe compilou o LLVM pela primeira vez e disse que o próximo passo seria tentar escrever um backend para o TLCS-900. Mais tarde perguntou se seria mais simples portar o compilador C do RetrOS-32, e L. lembrou que o SDCC parece suportar o TLCS-90.

Teclados Technics (KN5000, KN7000 e outros): todos os anos ›

20 nov 2024 Compilação do LLVM e plano de backend para TLCS-900 ★★

Felipe "Juca" Sanches compilou o LLVM pela primeira vez, com os backends x86 e M68k, e disse que o próximo passo seria tentar escrever um backend para a CPU TLCS-900 do KN5000. Encontrou instruções 68000 que o llvm-objdump marcava como unknown, mas que o debugger do MAME decodificava, e disse ter identificado a causa. L. recomendou usar Ninja em vez de make.

Participantes: Felipe "Juca" Sanches, L.

Ir para o início da conversa · mensagens-chave: #33398 · #33400 · #33406

16 jul 2025 Compilador C para TLCS-900 e o Technics KN5000 ★

A partir do RetrOS-32, compartilhado por Pedro, Felipe pergunta se seria mais fácil portar o compilador C desse sistema para TLCS-900 e rodar um SO no Technics KN5000 do que portar o LLVM ou o GCC. L. lembra que o SDCC parece já suportar o TLCS-90 (não o 900), como possível ponto de partida.

Participantes: Pedro de Medeiros 👾, Felipe "Juca" Sanches, L.

Ir para o início da conversa · mensagens-chave: #35215 · #35216