Group chat: Arqueologia Digital e Preservação Histórica por meio da Emulação de Dispositivos Eletrônicos

Mon 2017-11-06, 18:06
Werner Eck:
👍 vou abrir ele aqui
Acabei de atualizar esse grupo para "super grupo" de modo a poder usar algumas funcionalidades extras como, por exemplo, a habilidade de setar uma mensagem fixa
Werner Eck:
👍
Este é um grupo de estudos focado em articular uma força-tarefa para a preservação de hardware histórico. O resgate histórico do Patinho Feio será um dos nossos principais projetos (via emulação, digitalização de documentos, construção de réplicas-funcionais, etc) mas há abertura para a discussão de outros projetos de emulação e de preservação histórica de hardware sempre que houver interesse.

Este grupo tem seu histórico registrado publicamente em: https://garoa.github.io/Telegram_logs_Garoa_Hacker_Clube_Publico/formatted/html/index.html
Werner Eck:
esse texto vai ficar fixo no grupo?
talvez. Se eu conseguir entender como faz
não tô achando aqui a opção
pinned the message
Pronto, feito!
Mon 2017-11-06, 18:06
Podemos editar a mensagem à vontade com o passar do tempo, é claro.
Werner Eck:
como é q faz para ver a mensagem?
curiosamente só consigo ver por meio do cliente desktop (talvez pelo celular também dê). Mas pela versão web do telegram não aparece nem a opção de configurar "pinned-message" nem de visualizar.
talvez não implementaram isso no cliente web
Werner Eck:
ummm
Werner Eck:
eu só usava o cliente web. Não tinha idéia q havia um cliente desktop. Já to usando aqui
Werner Eck:
agora aparece a msg fixada
Werner Eck:


Ó lá, já adicionei os remotes
Werner Eck:
To fazendo make
Mon 2017-11-06, 19:07
Werner Eck:
mas vai demorar, eu só digitei make.
aquele make para compilação parcial ?
ah!
eita...
Werner Eck:
não o parcial, fiz merda
lá vão umas 2 ou 3 horas
Werner Eck:
agora ta fazendo geral
Werner Eck:
nossa
Werner Eck:
mas tá fazendo
dá ctrl-C aí e faz o build parcial
Mon 2017-11-06, 19:07
é mais negócio
Werner Eck:
tava com medo de fazer isso se desse pau...
você nem tem um ROM set completo do MAME pra rodar todos os drivers
Werner Eck:
preciso baixar a ROM do CP-500
Werner Eck:
ele está processando os arquivos de layouts
Werner Eck:
eu lembro q vc disse q esses ele sempre pega de todos
é... é meio burro nesse aspecto. Ele processa todos arquivos de layout mesmo quando pedimos um build parcial
seria ótimo se alguém pudesse arrumar esse aspecto dos scripts de build
Werner Eck:
Dá uma espiada nisso:
Werner Eck:
Compiling 3rdparty/bgfx/src/glcontext_egl.cpp...
In file included from ../../../../../3rdparty/bgfx/src/glcontext_egl.cpp:9:0:
../../../../../3rdparty/bgfx/src/renderer_gl.h:43:22: fatal error: GL/gl.h: Arquivo ou diretório não encontrado
compilation terminated.
bgfx.make:480: recipe for target '../../../../linux_gcc/obj/x64/Release/3rdparty/bgfx/src/glcontext_egl.o' failed
make[2]: * [../../../../linux_gcc/obj/x64/Release/3rdparty/bgfx/src/glcontext_egl.o] Error 1
Makefile:64: recipe for target 'bgfx' failed
make[1]: * [bgfx] Error 2
makefile:1243: recipe for target 'linux_x64' failed
make: *** [linux_x64] Error 2
Mon 2017-11-06, 19:07
fatal error: GL/gl.h: Arquivo ou diretório não encontrado
Werner Eck:
do q se trata esse GL/gl.h
precisa instalar alguma lib de OpenGL
não sei como é na sua distro
Werner Eck:
será q é só dar um apt-get?
mas talvez seja algo similar a um sudo apt-get install alguma-coisa-dev
sudo apt-get install mesa-common-dev segundo esse site: https://askubuntu.com/questions/306703/compile-opengl-program-missing-gl-gl-h
Compile OpenGL Program (Missing GL/gl.h)

I am a complete Linux/Ubuntu noob, so I apologize for any dumb portions of this question or follow up ones. I am trying to get a program that my software engineering class's group wrote onto my home
Werner Eck:
tava lendo esse mesmo post
Werner Eck:
ele pede pra usar apt-file mas esse comando não existe
sudo apt-get install mesa-common-dev
Mon 2017-11-06, 19:07
Werner Eck:
vou tentar instalar esse treco aí (mesa)
Werner Eck:
não preciso sudo, eu sou root
https://en.wikipedia.org/wiki/Mesa_(computer_graphics)
Mesa (computer graphics)

Mesa, also called Mesa3D and The Mesa 3D Graphics Library, is an open-source device driver and software implementation of the OpenGL, Vulkan and other specifications. Its most important user surfacing parts are the two graphics drivers mostly developed and funded by Intel and AMD, which are using those implementations. The smaller GeForce graphics driver Nouveau in contrast is mostly a community effort. Mesa implements a cross-language, cross-platform (mostly on BSD and Linux distributions), vendor-neutral standard API for interfacing with diverse vendor-specific graphics hardware drivers.
Werner Eck:
ummm.
Eu nunca uso o sistema como root. É muito fácil fazer besteira e não ter volta.
Werner Eck:
faz todo sentido
Werner Eck:
essa distro já veio configurada com o usuário root. Eu posso criar outro, não root
seria bom. Para a sua própria segurança 😉
Werner Eck:
agora é o sdl
😉
Mon 2017-11-06, 20:08
Werner Eck:
Pode me dar um help com esse erro:
Werner Eck:
Os pacotes a seguir têm dependências desencontradas:
libpam-systemd : Depende: systemd (= 235-2) mas 228-4 está para ser instalado
udev : Quebra: systemd (< 233-4) mas 228-4 está para ser instalado
E: Erro, pkgProblemResolver::Resolve gerou falhas, isto pode ser causado por pacotes mantidos (hold).
Werner Eck:
eu entendi o q ele diz, mas não sei como resolver
Werner Eck:
ele está para instalar uma versão inferior dessas duas dependências
Werner Eck:
ele deu esse erro ao tentar o apt-get install libsdl2-dev
Werner Eck:
to dando apt-get no systemd
MAME não deveria ter relação nenhuma com systemd !!!!
Werner Eck:
já atualizei o systemd e tbm instalei o sdl2. agora to com mais outro erro......
Werner Eck:
cc1plus: fatal error: ../../../../linux_gcc/obj/x64/Release/emu.h: Arquivo ou diretório não encontrado
systemd é parte básica do sistema
Mon 2017-11-06, 20:08
Werner Eck:
mas ele deu esse erro de dependencia ao tentar instalar o sdl2
Werner Eck:
pra instalar o sdl2 tive que atualizar o systemd
Werner Eck:
e agora tem esse outro erro: cc1plus: fatal error: ../../../../linux_gcc/obj/x64/Release/emu.h: Arquivo ou diretório não encontrado
Werner Eck:
Não era o MAME q estava pedindo isso
Werner Eck:
era o SDL2
ok
tenta fazer make REGENIE=1
Werner Eck:
esse parametro já está na linha de comando q vc me passou anteriormente
o sistema de build do MAME não é tão esperto e às vezes precisamos mandar ele re-processar as regras de build
ok
Mon 2017-11-06, 20:08
adiciona a palavra clean no final desse comando pra limpar o build incompleto feito até agora e depois re-executa aquela linha longa do build-parcial
sei lá... tô pensando aqui no que pode ter dado errado
Werner Eck:
to atualizando o gcc...
hahaha
Werner Eck:
daí vou tentar isso
ok
Werner Eck:
sei lá né? tinha o nome gcc no meio desse path
emu.h é um arquivo comum demais no MAME pra não estar achando
praticamente tudo no MAME dá include no emu.h
Werner Eck:
pois é, estranho
Mon 2017-11-06, 20:08
Werner Eck:
make clean primeiro, depois make SUBTARGET=trs80_ SOURCES=src/mame/drivers/trs80.cpp REGENIE=1?
make SUBTARGET=trs80_ SOURCES=src/mame/drivers/trs80.cpp REGENIE=1 clean
Ismael Luceno:
que estranha essa dependência da sdl2 com o systemd...
eu também achei
Ismael e @wmoecke , vocês já se conhecem ?
O Ismael aparentemente tem acompanhado nossas conversas aqui. Já o Werner acho que não conhece o seu trabalho, né?
O Ismael frequentou o Garoa Hacker Clube por algum tempo quando ele morava no Brasil, aqui em São Paulo
Werner Eck:
opa
Werner Eck:
dei uma saida, retornei agora
Werner Eck:
deixei instalando aqui
Mon 2017-11-06, 21:09
solucionou as tretas do emu.h ?
Werner Eck:
nao ainda.
Werner Eck:
to aguardando o gcc acabar de atualizar
Werner Eck:
qdo cheguei agora tava parado em uns textos
é... se me lembro bem o MAME precisa de uma versão relativamente nova no gcc
Werner Eck:
precisei pressionar espaço diversas vezes
Werner Eck:
então vamos terminar de atualizar e daí eu faço o clean e tento compilar de novo
é... vamos ver
Ismael Luceno:
Eu não me lembro se conheci o @wmoecke
Ismael Luceno:
Provavelmente não
Mon 2017-11-06, 21:09
Werner Eck:


Poutz. Aqui vai longe...
Werner Eck:
eu não lembro, só fui duas vezes ao garoa. A primeira faz dois anos
Werner Eck:
Só lembro de umas poucas pessoas, dentre elas o Juca
Ismael Luceno:
Então provavelmente não
Werner Eck:
xiiiiii. O Kali travou.
Werner Eck:
nunca vi acontecer isso
Werner Eck:
ainda bem q é vm
Werner Eck:


Nem com reboot... vou ter q voltar no tempo a instância...
Werner Eck:
dancei. Não tem snapshot salvo.
Werner Eck:
perdi a maquina.
Mon 2017-11-06, 22:10
:-P
que zoado, hein
dual-boot demorô
(no mínimo um dual boot ;-D)
Werner Eck:
Dual boot?
Werner Eck:
Mas a maquina era uma vm
qual sistema operacional você tem no seu computador ?
Werner Eck:
Windows 7
a minha sugestão é instalar o GNU+Linux como sistema operacional verdadeiro no seu computador
ou, ao menos, instalá-lo lado a lado com o Windows 7, em esquema de dual boot
Mon 2017-11-06, 22:10
Werner Eck:
Mas aí perco td q eu tenho aqui.. Programas, documentos, etc
VMs são legais, mas se elas te dão dor de cabeça como a que você teve hoje, não vale o risco
Werner Eck:
Minha vida toda está nesse windows
Werner Eck:
Por isso eu tenho as vms
então faça um backup da sua vida
😊
Werner Eck:
Cara o q zoou foi a vm
Werner Eck:
Nao o windows
algum dia o laptop pifa e você perde a "sua vida"
Werner Eck:
Ja aconteceu isso diversas vezes
Já varias vezes clonei meu hd para uma outra maquina
Mon 2017-11-06, 22:10
justamente, instalando o GNU+Linux direto no HD (mesmo que lado-a-lado com o Windows em esquema dual boot), você vai ter uma dor de cabeça a menos (como uma VM zoando do nada)
Werner Eck:
Pensarei nisso. Se nao conseguir recuperar nem com a imagem do iso então só me resta reinstalar o kali. Daí posso pensar em fazer com dual boot...
por que a outra opção é compilar o MAME no Windows. Mas eu nem sei como te ajudar nisso :-P
apesar de ser possível
(em teoria)
Werner Eck:
Penso em tentar isso amanhã. Tenho o gcc no windows.
Ismael Luceno:
Não vale a pena
Werner Eck:
O q não vale a pena?
Windows hahaha
(perdão)
Mon 2017-11-06, 22:10
Ismael Luceno:
E compilar o mame no Windows
Werner Eck:
Ah tá... bom, eu concordo. Não sou daqueles fanboy da microsoft
Werner Eck:
Mas já tive esses erros catastróficos no Linux Debian e agora nesse Kali. Confesso q me dá medo.
Werner Eck:
Compilar o MAME no Windows não vale a pena?
Werner Eck:
Parece q qq coisa estoura a bomba e vc perde tudo do nada...
Werner Eck:
eu estava só atualizando o GCC e travou com aquela tela cinza
Ismael Luceno:
É... Na verdade eu não posso dizer que Linux é um bom sistema operacional, mas é infinitamente melhor :p
Werner Eck:
o problema é essa questão da estabilidade.
Werner Eck:
Me passa uma impressão de ser um sistema que tende a ser instável... de uma hora para outra, booom.
Ismael Luceno:
Mas esse é um tema de escolha, é só instalar um sistema estável
Mon 2017-11-06, 22:10
Werner Eck:
No windows tem uma coisa: Se vc instala algo q não funciona, o problema fica isolado. Não compromete todo o kernel do SO
Ismael Luceno:
Tendo experiência no desenvolvimento dos dois, eu posso confirmar você que não, é igual ou pior
Werner Eck:
Bom, vai de cada um.
Werner Eck:
Eu não sinto ainda confiança pra migrar todas as minhas coisas pro Linux. Simplesmente não consigo confiar. Problema no Windows eu sei resolver.
Werner Eck:
>20 anos de prática.
Ismael Luceno:
Pode ter melhores resultados com o OpenBSD
Ismael Luceno:
Ah, sim, do lado da experiência, leva tempo se acostumar, tal vez
Ismael Luceno:
Na verdade o meu SO leva passado por 6 computadores, já tem mais de dez anos
Ismael Luceno:
Geralmente sem problema
Werner Eck:
mesma coisa aqui comigo, com o Windows
Mon 2017-11-06, 22:10
Werner Eck:
problemas tive, mas resolvíveis. Nada que quebrasse o kernel
Werner Eck:
são duas perspectivas distintas
Ismael Luceno:
Mas como você quebra o kernel?
Ismael Luceno:
Se você não faz desenvolvimento de drivers tá difícil
Werner Eck:
não sei. Não quis dizer literalmente. Só q o negocio vai pras cucuias e pronto.
Werner Eck:
não sou literado em linux.
Werner Eck:
muito menos em kernel
Werner Eck:
do linux
Werner Eck:
ou desenvolvimento de drivers
Ismael Luceno:
Então nunca vai ter muito problema :p
Mon 2017-11-06, 22:10
Werner Eck:
mas já estou com uma bomba. tentando resolver atualizando a distro.
Ismael Luceno:
Tente com alguma distribuição mais estável, openSUSE por exemplo
Werner Eck:
blz
Ismael Luceno:
Mesmo Debian Sid vai dar menos problemas que Kali
Ismael Luceno:
Mas, para começar, alguma coisa assim bem "enterprise" vai ser melhor para você, provavelmente
Ismael Luceno:
@wmoecke e se pensa seguir o conselho do @fsanches, pegue algum disco USB/eSATA e faça a instalação aí, depois se quer ficar com ele definitivo e só copiar
Ismael Luceno:
É mais simples na hora de quebrar que o dual boot no disco interno
Ismael Luceno:
Eu quero dizer, você não tem que se quebrar a cabeça, e pode usar o disco na VM e para boot do host também
Ismael Luceno:
Facilmente
Ismael Luceno:
Eu não vejo simples fazer desenvolvimento no Windows, ainda hoje tem pouco suporte
Mon 2017-11-06, 23:11
Ismael Luceno:
E não vai ter

Eu tenho um desses !
E olha o que eu achei aqui em casa hoje:

Werner Eck:
Isso é o q eu penso ser?
Um conversor USB serial usando chip FTDI
Werner Eck:
então deve funcionar lá
yep!
Werner Eck:
junto com esse adaptador de pinos 9 -> 25
exatamente
Tue 2017-11-07, 12:12
Werner Eck:
tem q ter driver instalado no seu computador
Werner Eck:
provavelmente
já tenho tudo certinho
Werner Eck:
então blzinha
Werner Eck:
vc ta na usp ou em casa?

Isso aqui é o que o meu kernel avisa quando eu plugo o adaptador na USB
Na verdade aí no log você me vê desplugando e replugando
Werner Eck:
é isso aí
Werner Eck:
tá com td
falta a troca dos capacitores
Tue 2017-11-07, 12:12
Werner Eck:
pois é
e falta montar um cabo de alimentação elétrica
Werner Eck:
isso msm
Werner Eck:
vc tem a foto da traseira dele d novo?
vou ver se consigo anotar hoje lá todos os capacitores necessários
Werner Eck:
não só os eletrolíticos, mas todos, inclusive os cerâmicos, de poliéster, etc
Werner Eck:
os mais críticos são os eletrolíticos e os cerâmicos
Werner Eck:
e quanto à tomada, leve um adaptador desses benjamim padrão abnt (3 pinos) fêmea, veja se ele se encaixa lá
aqui!
Forwarded message from Felipe "Juca" Sanches:


Tue 2017-11-07, 12:12
Werner Eck:
exato
Werner Eck:
olhando com zoom, parecem ser 3 pinos banana mesmo
Werner Eck:
mas tenta ver se um adaptador femea 3 pinos encaixa nele
Werner Eck:
caso contrário teremos q fazer uma espécie de adaptador com 3 jacks banana

isso aqui pode ajudar também.
Werner Eck:
O q estou pensando é em fazer uma coisa q a gente prenda nesses 3 conectores garrinha e encaixe lá nos 3 pinos.
eu tenho alguns desses cabos aqui em casa
Werner Eck:
imagina q esses 3 pinos macho desse cabo aí sejam compatíveis com os do sagitta
Werner Eck:
pra medir corretamente, pense em se vc fosse encaixar um benjamim femea nesse cabo
Tue 2017-11-07, 12:12
Werner Eck:
perae
Werner Eck:


o truque do benjamim fêmea não vai funcionar por que os pinos do sagitta estão alinhados e no padrão brasileiro o pino do meio não é alinhado com os outros dois
isso aí não vai dar certo
Werner Eck:


Werner Eck:
ctz?
não rola
Werner Eck:
ele tem furos em 2 tamanhos diferentes
Werner Eck:
pq vc diz isso?
suponho que os furos mais largos sejam para 220V
Tue 2017-11-07, 12:12
Werner Eck:
isso é só pra testar lá
Werner Eck:
sim, mas e daí?
Werner Eck:
estamos apenas falando mecanicamente
esse adaptador aí não tem o pino de terra
Werner Eck:
tem no meio
Werner Eck:
só não liga em nada. A maioria das instalações elétricas no Brasil não tem.
na foto nitidamente faltaum terceiro pino
Werner Eck:
tem o furo
Werner Eck:
pro pino do meio
eu prefiro sempre ligar o terra
Tue 2017-11-07, 12:12
Werner Eck:
então vc tá lascadp
imagino que a faculdade de engenharia elétrica da escola politécnica da USP tenha instalações elétricas decentes
Werner Eck:
pq a maioria das instalações feitas no Brasil não contemplam essa ligação
Werner Eck:
esse Sagitta provavelmente viveu a vida inteira ligado sem terra
Werner Eck:
vc q sabe... eu aposto minhas fichas q nao
Werner Eck:
mas...
😉
Werner Eck:
Mas a questão nem é essa
Werner Eck:
eu volto a reiterar
Werner Eck:
a gente nesse momento só precisa saber se mecanicamente os pinos entrariam nesses furos
Tue 2017-11-07, 12:12
Werner Eck:
o adaptador só será utilizado pra isso
Werner Eck:
daí vc pode ter a confiança q vai poder entrar numa loja de materiais elétricos
eu acho que não cabe no espaço disponível
Werner Eck:
e gastar um $ pra comprar uma tomada femea
Werner Eck:
e ligar nas 3 pontas do seu cabo
Werner Eck:
cara então não sei o q mais dizer
e mesmo que caiba, se um pino ficar firme o outro ficará frouxo, dado que essa ligação gambiarrada na diagonal resulta em furos de diametro diferente
Werner Eck:
vai ter q desmontar essa parte no sagitta, e trocar a tomada dele, ou simplesmente dar um jeito de conectar essas 3 pontas do seu cabo na placa da fonte
Werner Eck:
outra coisa não tem
Werner Eck:
leva esse seu cabo, um kit de ferramentas...
Tue 2017-11-07, 12:12
Werner Eck:
alicate de corte, de bico...
Werner Eck:
chaves de fenda e philips de diversos tamanhos
eu acho que o melhor esquema é montar um cabo usando esse meu de 3 garras e 3 cabos com plug fêmea para banana.
Werner Eck:
essa tomada é totalmente fora de qq padrão conhecido. Vai ter q dar uma de McGyver\
Werner Eck:
só q daí tem um outro problema
Werner Eck:
eu duvido q nesse espacinho pequeno caiba 3 conectores banana femea ali
é... vou ter que testar
Werner Eck:
eles são grossos
Werner Eck:
então... se é pra testar...
talvez dê, talvez não dÊ
Tue 2017-11-07, 12:12
Werner Eck:
leva um adaptador como esse meu
eu não tenho um desses aí
Werner Eck:
compra no caminho...
Werner Eck:
custa 3.50
Werner Eck:
vc tem os banana?
😉 pode ser...
Werner Eck:
outra coisa, leva esse seu cabo junto
talvez. Tenho que ver aqui. Acho que eu tinha, mas não tenho certeza
Werner Eck:
e fotografa dentro da fonte, onde esses 3 pinos são ligados
Werner Eck:
de repente é td parafusado na placa
Tue 2017-11-07, 12:12
se tiver garrinhas internamente vai ser só alegria
Werner Eck:
daí se for assim, vc só precisa afrouxar os parafusos da placa, retirar as conexões q vão pra esses pinos do gabinete, e ligar o seu cabo
é. Tem uma boa chance disso ser possível.
Werner Eck:
e já te digo, não adianta torcer o nariz pra manter o equipamento na originalidade... vai ter q adaptar uma coisinha ou outra.
Werner Eck:
não tem outro jeito, tanto pros capacitores quanto pra essa conexão elétrica.
sim. Faz sentido
Werner Eck:
leve seu multimetro. vc sabe medir a ddp entre o neutro/terra/fase?
Werner Eck:
isso serve para descobrir qual é qual, e se tem de fato um terra lá
sim, eu consigo mapear isso
Werner Eck:
blz
Tue 2017-11-07, 12:12
Werner Eck:
daí vc consegue até diagnosticar o equipamento um pouco
Werner Eck:
tipo, imaginemos q dê pra conectar ele na tomada/
Werner Eck:
vc pode medir as saídas da fonte, pra ver q tensões CC saem dela
Werner Eck:
seria ideal se essa fonte estivesse conectada à placa principal através de algum conector
o equipamento é tudo uma coisa só.
Werner Eck:
ideal seria se desse pra isolar a fonte do resto, e medir
Werner Eck:
outra coisa: fusíveis
ligou na tomada, já era. Tem risco de pipocar os capacitores
Werner Eck:
tem um soquete lá acima do conector de força
Werner Eck:
para fusível. Veja se ele está rompido
Tue 2017-11-07, 12:12
sim, vou ver
Werner Eck:
se estiver rompido, precisa ser substituído por um de igual "amperagem"
Werner Eck:
nunca superior
Werner Eck:
no caso, 2A
Werner Eck:
fusiveis custam na margem de centavos de real
Werner Eck:
qq lojinha de material de construção vende
Werner Eck:
e elétricas
Werner Eck:
assistencias técnicas... capaz do cara te dar de graça
"fusível do bom, daqueles que não queimam" http://www.tabalabs.com.br/eletronica/gambiarras/1.jpg
Werner Eck:
pqp!!!!
Tue 2017-11-07, 12:12
Fusivel "do bom" daqueles que nao queimam nunca versao 2.0 http://www.tabalabs.com.br/eletronica/gambiarras/5.jpg
:-P
Werner Eck:
olha q interessante na foto de cima, o conector com 3 pinos...
Werner Eck:
se for algo assim na placa do sagitta, tbm podemos adaptar
to indo almoçar
Werner Eck:
mas o ideal seria parafusável
Werner Eck:
blz
e depois vou lá pra USP
té mais
Werner Eck:
👍🏻
Tue 2017-11-07, 14:02
Werner Eck:
Ô cara, valeu por isso:
Werner Eck:
+ Thanks to Werner Moecke for the help in inspecting the circuits and
+ debugging this driver.
Werner Eck:
https://github.com/mamedev/mame/pull/2776/files
new non-working driver: Scopus Sagitta 150/180 serial terminal by felipesanches · Pull Request #2776 · mamedev/mame

mame - MAME
Werner Eck:
☺️

Werner Eck:
à direita vc tem o q parece ser o conector AC externo plugando à placa?

Werner Eck:
isso parecem ser as velocidades da serial
Werner Eck:
legal q as conexões de alimentação são todas ligadas por cabos e conectores.
Facilita na hora de medir as tensões da fonte sem medo de danificar o resto da eletrônica
O cabo Azul com os vários fiozinhos coloridos conectado à placa via pin-headers vai ligado no tubo CRT
Tue 2017-11-07, 15:03
Essas fotos todas são do Sagitta 150
Werner Eck:
e o cabo azul com fios brancos e azuis?
De fato, essas labels no silk parecem ser baud rates
Werner Eck:
são sim, sem dúvida. Inclusive tem um label "Tx/Rx" ali tbm
os dois cabos azuis vão ligados no CRT
segue abaixo uma foto dos nomes dos sinais no silk da placa:

Werner Eck:
são tensões de excitamento do tubo
alguém usou pedaços de corpo de caneta BIC como espaçador para aparafusar o teclado:

Tue 2017-11-07, 15:03
Werner Eck:
altíssimas tensões, portanto nada de mãos ali durante o funcionamento
Werner Eck:
choque de jogar o corpo longe.
sim, conheço
Werner Eck:
tá vendo, já tem gambiarras
Werner Eck:
normal isso nesse tipo de equipamento.


Werner Eck:
só q um detalhe
é muito dificil de levantar a placa pra ver
Werner Eck:
Ali na foto anterior à do teclado, tem duas PCIs presas ao painel traseiro.
Tue 2017-11-07, 15:03
o teclado não tem nenhum chip controlador especializado. Apenas aquele 74145 alí
Werner Eck:
Uma delas, próxima aos potenciômetros, deve ser a que distribui força aos transformadores.
Werner Eck:
imagino que os pinos de entrada de força estejam soldados a fios, cujas outras extremidades estejam soldadas a essa placa.
credo! 74145 é conversor de BCD pra decimal... :-P http://www.ti.com/product/SN74145
SN74145 BCD-To-Decimal Decoders/Drivers | TI.com

These monolithic BCD-to-decimal decoder/drivers consist of eight inverters and ten four-input NAND gates.
Werner Eck:
achei q ele seria somente algum latch ou buffer.
Werner Eck:
pode ser q ele faça parte do circuito decodificador do teclado.
Werner Eck:
não sei ao certo. Precisaria ver no q ele está ligado.
ah! é usado para multiplexar as linhas (ou colunas, não sei)

entra um valor de 4 bits e sai ativo baixo em um dos 10 outputs
Tue 2017-11-07, 15:03
preciso ver em que endereço tá mapeado esse bicho
Werner Eck:
faz sentido isso aí.
Werner Eck:
faz parte da lógica do teclado. Linhas e colunas.
Werner Eck:
veja onde se conectam os pinos 12/13/14/15 dele
Werner Eck:
pois os pinos 1 a 11 certamente são ligados ao teclado.
Werner Eck:
cara, mutex não faz parte da biblioteca std?
Werner Eck:
(só um parentese)
Werner Eck:
to tendo um erro no código core do MAME, numa linha q diz: std::mutex
Werner Eck:
e em std::thread tbm
Werner Eck:
mas deixa isso pra mais tarde.
Tue 2017-11-07, 15:03
Werner Eck:
voltando ao sagitta
nao sei responder essa pergunta
Werner Eck:
em windows o mutex não é implementado em gcc
justamente estou mapeando os sinais A, B, C e D
Werner Eck:
estou procurando um workaround
Werner Eck:
blz
os pinos A, B e C estao respectivamente ligados a uma pastilha 7493 nos pinos 9, 8 e 11
Werner Eck:
o 7493 é um decodificador de display 7 segmentos
Werner Eck:
perai deixa eu ler mais um pouco
http://pdf.datasheetcatalog.com/datasheet/motorola/SN54LS92J.pdf
Tue 2017-11-07, 15:03
Werner Eck:
bcd
Werner Eck:
desculpe, ele sai código bcd
é um contador
Werner Eck:
sim, ele conta em bcd
Werner Eck:
essa lógica é pra varrer as linhas do teclado
sim
então alguém dá pulsos nesse contador pra trocar a linha ativa
Werner Eck:
normalmente em projetos, ele é usado conectado a um driver bcd para 7 segmentos, a fim de mostrar a contagem em um display
e depois lê de algum outro lugar o padrão de pressionamento das teclas da linha selecionada
Werner Eck:
mas nesse caso ele está ativando linhas no teclado
Tue 2017-11-07, 15:03
Werner Eck:
procure agora onde tem as colunas
Werner Eck:
isso deve levar até onde o teclado é decodificado
e o quarto bit (o sinal D) tá ligado no pinio 3 de um 7474 (sinal de CLK de um flip flop)
Werner Eck:
ele usa esse flip flop pra dividir o sinal provavelmente pra outra coisa
Werner Eck:
(é um divisor da frequencia do flip flop)
Werner Eck:
olhando na saida do flip flop ele liga em que?
Werner Eck:
não tem nada que conecte esse teclado a um outro CI, um maiorzinho? Ou mesmo ao 8080?
to desenhando aqui na lousa
tá complicadinho o circuito aqui
mas to levantando aos poucos
Tue 2017-11-07, 16:04
Werner Eck:
não se prenda demais ao nitty-gritty detail... foque onde estão conectadas as duas pontas da fiozera

Werner Eck:
uma ponta é o teclado, e a outra é...
os canetões não tão ajudando muito, pra variar
haha
Werner Eck:
tá meio apagadão o u32 e u101
u92
Werner Eck:
onde vai ligado a saida do flip-flop u32?
vou ver
Werner Eck:
ah ta, u92
Tue 2017-11-07, 16:04
vai numa das entradas de outra porta NAND
Werner Eck:
puta merda... tenta ver onde isso tudo vai dar. Em algum ponto tem q conectar no barramento de dados de alguém. cazzo.
Werner Eck:
não adianta muito pra gente ficar analisando todo o bloco da lógica de leitura desse teclado. Só nos interessa o endereçamento dele e/ou quem habilita os dados das teclas pro processador ler
Werner Eck:
😏
ufa!
arrumei canetão melhor aqui
concordo
Werner Eck:
tente abstrair ao máximo, tentando chegar no big picture
Werner Eck:
senão vc vai endoidar desenhando flip-flops e portas lógicas
Werner Eck:
pense como nos diagramas lógicos da tese do zezinho
Tue 2017-11-07, 16:04
sim, to ligado
to indo pra trás nos caminhos de onde vem o sinal
tentando ver de onde vem os pulsos de clk por exemplo
Werner Eck:
👍🏻
esse circuito tem a cara do Edson Fregni
Werner Eck:
kd?
me dá mais um tempinho
to puxando mais um novelo de lã aqui
Werner Eck:
👍🏻
Werner Eck:
Falow Juca, eu to saindo agora.
Tue 2017-11-07, 17:05
Werner Eck:
Mas mais tarde eu devo voltar aqui. Só não sei te precisar o horário. Penso q esteja de volta até umas 22/23h
Werner Eck:
👍🏻

Werner Eck:
Estou a caminho d casa. Chegando eu vejo a foto com mais zoom.



Esses fios sao jumpers
Da pra tirar
Pra separar a fonte do resto do circuito.
Tue 2017-11-07, 22:10
Werner Eck:
Só não entendo ainda o motivo de haver esses jumpers aí. Preciso examinar as fotos mais detalhadamente.
Essa é exatamente a fronteira entre a area digital e a regiao do circuito da fonte de alimentação
Werner Eck:
Ok
Werner Eck:
cara, com a foto do quadro tem tanto reflexo de fundo q não dá pra ver... parece a maioria ser flip-flops com algumas portas lógicas (and, not) e o q tem bem à direita do quadro tá ilegível...
Werner Eck:
o bom desses jumpers é poder desconectar pra medir as tensões das fontes
exatamente!
eles estão lá pra isso mesmo, eu acho
Werner Eck:
vc conseguiu descobrir o q tem na outra ponta do teclado?
não
Werner Eck:
não vai ligado ao barramento de dados?
Tue 2017-11-07, 22:10
fiquei caçando algum sinal que chegasse no barramento de endereços da CPU
ou no barramento de dados
mas nao achei nada
Werner Eck:
tem q ser ligado lá...
é... mas é um circuito complicadinho
Werner Eck:
só se ele serializa os dados por flip flops... mas tem q chegar no processador
deve estar um pouco mais longe o ponto onde finalmente alcança a CPU
Werner Eck:
não tem como não chegar na cpu
Werner Eck:
blz isso a gente pode olhar numa próxima visita
ok
Tue 2017-11-07, 22:10
Werner Eck:
eu posso levar meu osciloscópio de bolso
Werner Eck:
se eu for
ok, a gente pode ir semana que vem
Werner Eck:
e a conversa lá, rolou?
rolou sim
foi legal
vamos começar a frequentar o espaço
pra continuar inspecionando as máquinas, escrevendo emuladores e possivelmente restaurando alguns equipamentos
tive a impressão de que o professor Fernando gostou bastante de ver o emulador funcionando
vamos tentar organizar a bagunça da sala onde ficam os equipamentos que ainda não estão na exposição aberta ao público de modo a conseguir abrir um pouco de espaço e botar lá uma mesa com alguns instrumentos úteis para restauração de computadores
Tue 2017-11-07, 23:11
acho que é promissor
eles estão também usando um software livre para catalogar o acervo
mas parece que isso ainda está incompleto
Werner Eck:
me dá só uns dois minutos por favor...
uma coisa legal é que esse software livre oferece não apenas um painel de controle privado para administração, mas também gera uma cara pública para "museus". Oferece uma opção de hospedar um website com a descrição do acervo
cheguei a comentar com o professor que seria legal tentar hospedar nessas páginas emuladores de algumas das máquinas do acervo, quando possível.
Existe uma tecnologia chamada emscripten que permite que um código C/C++ seja compilado para javascript, capaz de rodar uma aplicação dentro de uma página web. O Internet Archive, por exemplo, usa isso para compilar o MAME e hospedar o "Internet Arcade"
https://archive.org/details/internetarcade
Internet Arcade : Free Software : Download & Streaming : Internet Archive

The Internet Arcade is a web-based library of arcade (coin-operated) video games from the 1970s through to the 1990s, emulated in JSMAME, part of the JSMESS software package. Containing hundreds of games ranging through many different genres and styles, the Arcade provides research, comparison,...
Werner Eck:
esse conversor de C/C++ para js parece ser louco... funciona? Eu cheguei a ver o seu patinho feio no js
sim, funciona ;-)
Tue 2017-11-07, 23:11
todos esses jogos de arcade que tem no Internet Archive são jogáveis no browser
Werner Eck:
eu conhecia esse site
e são na realidade os drivers de emulação das placas dessas arcades no MAME compilados pra javascript usando o emscripten
Werner Eck:
não conhecia sobre LLVM
Werner Eck:
o código js q ele gera é legivel?
não
Werner Eck:
deve sair como um jQ minified né?
ele usa o javascript como "bytecode" para a compilação
é
isso mesmo
Tue 2017-11-07, 23:11
Werner Eck:
fica meio pesado pros arcades, mas pra máquinas como as q estamos emulando, deve rodar legal.
Werner Eck:
o bacana do js é q podendo ser incorporado a páginas web, eu consigo estilizar a página como eu quiser
Werner Eck:
posso fazer cada máquina emulada ter um layout único, por exemplo, o pf pode ter todo o painel frontal q vc fez em svg ficar funcional e interativo. Isso seria legal.
Werner Eck:
Dá para fazer um negócio bem bacana.
:-)
É... Nao sei como ele faz com o render do svg
Werner Eck:
Não esquente. SVG se não me engano, pode ser renderizado na folha de estilos (CSS) - no último caso, acredito ser possível transformar em uma imagem png.
Teoricamente daria pra fazer isso sim. Mas não sei se o esquema automatizado é tão esperto assim
Werner Eck:
Eu tenho certa experiência como desenvolvedor web (front end e back end). Eu já vi alguns exemplos de SVG ser gerado em CSS preciso dar uma relembrada nisso, pois não é corriqueiro, mas acho provável q seja possível fazer.
O ideal seria o arquivo svg original ser enviado ao browser. Mas realmente duvido que o sistema tenha esse tipo de esperteza
Tue 2017-11-07, 23:11
Werner Eck:
https://www.w3schools.com/graphics/svg_intro.asp
SVG Tutorial

Well organized and easy to understand Web building tutorials with lots of examples of how to use HTML, CSS, JavaScript, SQL, PHP, and XML.
Ja brinquei bastante com SVG, por conta das minhas contribuicoes como desenvolvedor do Inkscape
Cheguei a implementar uns 2 capítulos da spec
Werner Eck:
hehehe então é o pai da matéria
;-)
Werner Eck:


Werner Eck:
😉
Werner Eck:
abrindo a imagem no inkscape vc consegue extrair todas as coordenadas e daí fica relativamente fácil exportá-la para uma página web.
Werner Eck:
https://www.w3schools.com/graphics/svg_path.asp
SVG Path

Well organized and easy to understand Web building tutorials with lots of examples of how to use HTML, CSS, JavaScript, SQL, PHP, and XML.
Werner Eck:
não tem terror - as regras para SVG inclusive já foram incorporadas ao W3C.
Tue 2017-11-07, 23:11
Werner Eck:


Chovendo no molhado ;-)
Werner Eck:
?
Só tô dizendo que eu já conheço todas essas coisas.
to indo dormir
até
Happy Hacking!
https://forum.fiozera.com.br/t/terminais-seriais-da-scopus-modelos-sagitta-150-e-sagitta-180/154
Terminais seriais da Scopus - modelos Sagitta 150 e Sagitta 180

Por conta da minha postagem recente aqui sobre o computador CP-500 da Prológica, fui convidado pela professora Tereza Cristina Melo de Brito Carvalho a visitar o Acervo Histórico de Tecnologia de Informação que foi montado recentemente na Poli-USP. [imagem] Na minha primeira visita, além de conhecer a exposição em si, que tem vários itens bem interessantes, tive a oportunidade de também ver os materiais do acervo não exposto. E alí o que mais me chamou a atenção foi um par de terminais seria...
amanhã vai ter um post novo no Fiozeira 😊
Tô preparando aqui
Thu 2017-11-09, 05:05
aguardem
(vocês já conhecem o papo todo, é claro)
Mas é sempre bom consolidar as idéias num post bem formatadinho
boa "noite"
e Happy Hacking!
Werner Eck:
👍🏻
:-)
Ismael Luceno:
tenho uma PC antiga aqui que não conserva os dados no RTC após de desligar... mas a bateria está funcionando :/
Ismael Luceno:
e consigo ler a memoria dele, então não é corrupção...
Alexandre Villares:
https://twitter.com/qrs/status/928828799168536576
Trammell Hudson ⚙

MoMA's "Art and Design in the Computer Age, 1959–1989" exhibition features a CM-2 with random and pleasing blinky LEDs.
Fri 2017-11-10, 19:07
;-)
Ismael Luceno:
opa, achei uma placa 3com com um CPU ARM :D
Ismael Luceno:
placa de rede
Ismael Luceno:

legal. Não sei dizer quais são os tipos de CPU tipicamente usados em placas de rede
Ismael Luceno:
não estou achando documentação
Ismael Luceno:
tenho bastante lixo como esse aqui
Vinícius joined with an invite link
Vinícius:
Mais um membro !
Valeeeeu Roadsec.
Werner Eck:
Bem vindo!
Sat 2017-11-11, 15:03
Vinícius:
Obrigado.
Danilo Michelucci joined with an invite link
Danilo Michelucci left
Alexandre Villares:

Werner Eck:
@villares não me esqueci da sua promessa... 😏
Alexandre Villares:
Eu lembro de ter dito a frase: "me cobrem isso que eu vou esquecer"
Werner Eck:
Kkk
Alexandre Villares:
Qual foi a promessa mesmo?
Werner Eck:
Vc já se esqueceu do q se trata?
Werner Eck:
😂
Sun 2017-11-12, 15:03
Alexandre Villares:
Kkkk
Alexandre Villares:
Procurar um livro de assembly?
Alexandre Villares:
Não lembro
Werner Eck:
Kkkkk, não. É sobre o "docudrama" da batalha entre a Sinclair e a Acorn, da BBC
Alexandre Villares:
Ah! Legal!
Alexandre Villares:
Preciso olhar nos backups
Werner Eck:
Vc podia postar no fiozera
Alexandre Villares:
Se eu encontrar vamos passar no Garoa e damos um jeito de compartilhar.
Werner Eck:

Isso isso isso !!! :-D
Mon 2017-11-13, 01:01
Werner Eck:


wow
Werner Eck:
😁 o negócio era punk. Imagina fazer os sprites da SFA2 assim...
SFA2 ?
o que é isso?
Werner Eck:
Street Fighter Alpha 2
Werner Eck:
😁
ah
eu tenho essa placa
Werner Eck:
Eu sei
Mon 2017-11-13, 01:01
Werner Eck:
Li o seu post lá no fiozera
http://mamedev.emulab.it/fsanches/2016/03/07/recovering-a-dead-cps2-board-street-fighter-zero-2-brazil/
Werner Eck:
Falando justamente a respeito de sprites
Werner Eck:
Isso
Werner Eck:
Digo, post no Mamedev
Esse é um post pré-fiozera
Werner Eck:
👍
Werner Eck:
Como vc conseguiu botar a mão numa placa dessas?
Werner Eck:
Comprou no ML?? 😁
não, acharam no lixo numa central de reciclagem de eletrônicos em Brasilia e me deram de presente
Mon 2017-11-13, 01:01
Werner Eck:
Pqp...
hehe
Werner Eck:
Vou começar a fazer dumpster diving aqui
tem realmente muita coisa boa indo pro lixo
Werner Eck:
Ta na hora de voltarmos ao old school hacking e sair invadindo centrais d reciclagem... Oh-oh, alerta d post politicamente incorreto!
Werner Eck:
Os geração mimimi devem sair da sala!
Werner Eck:
😜
hoje eu estava lendo novamente o livro sobre a história do LSD e do PCS.
Werner Eck:
Eu li parte dele ontem
E ao ver menções aos computadores G-10, G-11 e Cobra 530, lembrei que preciso ir conversar com o professor Stephan Kovacs
Mon 2017-11-13, 02:02
E lembrei também essa semana que vi em algum lugar descrições do instruction set do G-10 em algumas das teses relacionadas ao Patinho Feio
Werner Eck:
Já vi q alguém andou pensando em emulação d novo...
...
na bibliografia da tese "Procedimentos microprogramados num Minicomputador" de Edit Grassiani (1975) tem isso:

Werner Eck:
O trabalho arqueológico tem início...
Olha que divertidas essas referências bibliográficas:


Werner Eck:
Gostaria de ler essas obras. Imagina o conteúdo!
Mon 2017-11-13, 02:02

Werner Eck:
Micro programação nos anos 70


Werner Eck:
Emulação direta de estrutiras de controle
Um ambiente para pesquisa de micro programação e emulação
Werner Eck:
Leitura interessante hein?
Werner Eck:
São referências antigas, seria possível ainda conseguí-las?
talvez
agora a cereja do bolo:

Mon 2017-11-13, 02:02
Werner Eck:
Tá. Já tem o disassembler praticamente prontinho aí.
Werner Eck:
😁
preciso ir dormir agora
Werner Eck:
MAME here we go... Rss
Werner Eck:
É né? Durma se com um barulho desses agora...
se quiser se divertir, tudo isso aí e muito mais está nesse PDF: https://archive.org/details/ProcedimentosMicroprogramadosNumMinicomputador
Procedimentos Microprogramados num Minicomputador : Edit Grassiani : Free Download & Streaming : Internet Archive

## 1975: EDIT GRASSIANI. Procedimentos Microprogramados num Minicomputador * Dissertação de Mestrado - EPUSP, 1975. * Escaneado de exemplar da Biblioteca...
Werner Eck:
Amanhã vou abrir isso no desktop.
Werner Eck:
Fui
👍

Mon 2017-11-13, 02:02
Happy Hacking!
Forwarded message from Felipe "Juca" Sanches:

https://forum.fiozera.com.br/t/arqueologia-digital-resgate-historico-dos-computadores-pioneiros-do-brasil/156
Arqueologia Digital: Resgate histórico dos computadores pioneiros do Brasil

Ano passado, a convite de Anderson Ramos, CTO da FlipSide, ajudei a montar uma pequena exposição de computadores antigos durante o evento Mind The Sec aqui em São Paulo. A experiência foi divertida e parece ter tido uma boa repercussão com o público do evento. E, em função das minhas pesquisas sobre a história do computador Patinho Feio, da USP, recebi o convite de não apenas participar novamente de uma mini-expo de retrocomputação, mas dessa vez também apresentar uma palestra sobre computador...
Forwarded message from Bruno Nazareth:


Forwarded message from Bruno Nazareth:


Forwarded message from Bruno Nazareth:

@fsanches no Roadsec

Werner Eck:
@fsanches, qdo vc tiver um tempo livre, seria interessante se vc conseguisse escanear as páginas daquele seu livro da USP onde o G-10 é citado, para dar um contexto (mais informações, fotos, etc) - pois na web só achei um breve parágrafo e uma minúscula foto: https://pcs.usp.br/departamento/historia/
Werner Eck:
As referências 22 a 24 seriam de extrema utilidade, vou tentar achar caso já existam no web archive.
Werner Eck:
Parece que ainda não; só encontrei duas obras listadas fazendo referência a ele: @felipe_correa_da_silva_sanches?and[]=subject%3A"G10"'>https://archive.org/details/@felipe_correa_da_silva_sanches?and[]=subject%3A"G10"
Werner Eck:
O MAME está compilando!! Hurra!! Eita poha agora vai.
Mon 2017-11-13, 18:06
Werner Eck:
Quatro dias rachando a cabeça semana passada e nada dele querer passar da fase "pre-compile emu.h"
Werner Eck:
Hoje comecei do zero - deletei o conteúdo da pasta c:\MinGW e fiz tudo de novo.
Werner Eck:
rolou de boa.
Werner Eck:
Mas eles arrumaram a página lá. Tá com só um .exe pra baixar e instalar.
As ROMs do CP500 fui eu que extraí da placa que tenho em mãos e cataloguei no MAME.
As ROMs desse site aí devem ser dumps que outras pessoas fizeram de outras placas
isso significa que talvez seja o caso de cadastrar essas ROMs aí no MAME também
mas antes de fazer isso, é bom verificar se não se trata de ROMs gambiarradas
por que tem outros emuladores que fazem bobagens como, por exemplo, concatenar múltiplas ROMs num arquivo só
Mon 2017-11-13, 19:07
Werner Eck:
entendi
e isso o MAME não faz. O MAME sempre documenta o que de fato há no hardware
Werner Eck:
Especialmente em ROMs de arcade
se tem 3 chips de EPROM, vai ter 3 arquivos de ROM, por exemplo
Werner Eck:
certo
outro problema é que há dumps ruins circulando pela internet
por exemplo quando o pessoal faz o dump usando um programa rodando no próprio dispositivo
aí existe o risco de determinados endereços retornarem valores diferentes do que estava de fato na ROM, por conta de interferência de dispositivos de hardware mapeados naquele endereço específico
Werner Eck:
eu já fiz algo assim quando precisei fazer o dump da ROM da minha calculadora
Werner Eck:
Pra rodar em um emulador q eu tinha no PC
Mon 2017-11-13, 19:07
e o MAME documenta o conteúdo exato das ROMs, mesmo que esse conteúdo esteja mascarado em alguns endereços
então o método preferido para se efetuar um dump é removendo mesmo o chip de EPROM da placa pra ler o dado real, e não o que está visível em runtime
e tem um comentário desses no código fonte do driver do trs80
então parece que há um caso desses de hardware interferindo no dump feito por software
E aí, qual seu próximo passo agora que tem o MAME compilado dos fontes ?
Werner Eck:
Pensando em tocar o puteiro no G-10
hahaha
Werner Eck:
Pra ver logo se eu tenho isso no sangue ou não
boa sorte
parece um projeto fascinante
Mon 2017-11-13, 19:07
e, sinceramente, meio hardcore
Werner Eck:
Vou me basear no trabalho q vc fez no PF e talvez olhar alguma coisa no ITA-II
Werner Eck:
pra entender a estrutura e ir fazendo
já que é uma máquina programável no nível de micro-código
então me parece que a emulação "certa" seria com emulação das micro-instruções
Werner Eck:
Se eu conseguir vencer essa eu acho q terei conseguido diminuir o gap entre vc e eu no tocante a emulação
hehe
acho demais vocÊ topar esse desafio
se enroscar, me avisa
Werner Eck:
Ou vc acha q fazer isso nesse nível é demais da conta? Pera, melhor não me falar nada
Mon 2017-11-13, 19:07
que eu dou uma força
Werner Eck:
Aquela história do sapo subindo no poste
Werner Eck:
beleza
se precisar de ajuda, grita aê
Werner Eck:
Toca ler a tese da Dr. Edit
Werner Eck:
Pra dar um contexto
mas eu acho que vai demorar um pouco até vocÊ começar a escrever código
por que tem uma tese inteira pra ler primeiro hahaha
Werner Eck:
vamos ver...
mas esse é o espírito!
Mon 2017-11-13, 19:07
Tô gostando de ver :-)
Werner Eck:
tem q começar de algum lugar
Tem uma coisa que é interessante aí. O framework do MAME é desenhado para emulação e disasm em nível de instrução. Emular em nível de micro-instrução me parece o caminho mais preciso. Mas também me parece tornar muito mais confusa a inspeção de código no debugger interativo, pois "esconde" o nível de abstração da camada acima (a camada do código assembly) ao mostrar o step-by-step do micro-código.
Seria muito interessante tentar construir um framwork para emulação e debugging de micro-código no MAME. De modo que o debugger pudesse ainda preservar a interface de depuração passo-a-passo no nível de instruções também
teríamos então 2 níveis de abstração para o debugging
2 janelas de debugger distintas, talvez (uma pra debugging em micro-código e outra para debugging em nível de instrução)
o mais fácil agora é você simplesmente emular em nível de micro-código
mas mais pra frente vai fazer falta poder depurar códigos em nível de instrução também
Werner Eck:
Penso em fazer isso por etapas
Werner Eck:
Uma vez vencida a primeira, daí o entendimento ganho possa me dar condições de passarmos pra essa segunda abstração
Mon 2017-11-13, 19:07
além disso, há uma possível confusão nisso que diz respeito à mistura de carga de "roms" de microcódigo e "roms" de código. Supostamente um sistema pode ter dumps de diversas versões de sua memória de controle (que é onde ficam armazenadas as descrições da máquina escritas em micro-instruções). E então as várias ROMs de boot da máquina poderiam ser combinadas com as várias ROMs de micro-código. E que eu saiba o MAME não tem uma forma simples de fazer essa troca e combinação de multiplos ROMsets em uma só máquina.
normalmente o que há é um conjunto de ROMs de diversas versões de BIOS da mesma máquina (selecionaveis no menu de usuário) e então diversos programas que as pessoas podem carregar a partir de mídias como imagens de disquete, imagens de fita cassete, etc
então essa seleção de mlutiplas versões de bios existe. Mas não existe forma de ter seleção dupla (que seria útil para escolher tanto a versão do micro-código quanto a versão do boot da bios)
faz sentido isso que eu falei?
Werner Eck:
Pelo que eu atualmente entendo a respeito de microcódigo, seria código escrito em devices do tipo PAL ou FPGA, definindo um hardware com a ajuda de micro instruções
Werner Eck:
Se isso estiver correto no que diz respeito ao G-10, penso que já vi algo parecido em vários drivers de máquinas arcade no MAME
Werner Eck:
arquivos .zip contendo o conteúdo de PALs junto com ROMs é normal, eu já vi. Só não sei se estamos nos referindo às mesmas coisas.
Werner Eck:
Por isso acho que preciso me inteirar melhor lendo a tese da Edit.
meu entendimento é diferente
micro-código é quase como um assembly do assembly
Mon 2017-11-13, 19:07
Werner Eck:
Acho que boiei
é uma forma de escrever "programinhas" que descrevem o algorítmo de cada uma das instruções do assembly de uma CPU
Werner Eck:
é o código q define o algoritmo a ser executado por um opcode, por exemplo?
então vc tem micro-instruções que vocÊ usa pra escrever um micro-programa que define o comportamente de uma certa instrução
isso mesmo
é tipo uma CPU dentro da CPU
Werner Eck:
Se um opcode diz algo como, "LDA, <valor>" são as instruções que fazem a CPU carregar o acumulador com esse dado?
é uma forma de programaticamente determinar o sequenciamento de sinais de controle internos da CPU
o Patinho Feio não tem micro-código
Werner Eck:
Isso é território ainda inexplorado pra mim
Mon 2017-11-13, 19:07
Werner Eck:
O máximo q eu já desci, foi para o assembler, com opcodes.
por que o sequenciamento de sinais da unidade de controle do Patinho Feio é feito por meio de funções booleanas implementadas direto em portas lógicas.
Por isso que dizemos que é uma unidade de controle "hardwired"
Werner Eck:
q vc abstraiu
isso
Werner Eck:
Podemos dizer q é o mesmo caso da CPU do zezinho?
sim
Werner Eck:
já q a UC dele tbm é feita com portas logicas implementadas a transistor
já o G-10 tem uma CPU micro-programada
isso
Mon 2017-11-13, 19:07
do zezinho, sim
Werner Eck:
Eu tbm gostaria de entender isso, será q uma daquelas 3 referencias da tese da Edit tem essa informação do hardware do G-10?
o G-10 tem uma memória de controle onde ficam armazenados os algoritmos de micro-instruções
Werner Eck:
Tem o projeto de mestrado do Wilson Ruggiero q eu peguei pra ler tbm
Werner Eck:
Eu não sei dizer ainda, se esse projeto tem algo a ver com o G-10 pra ser totalmente sincero com vc
acho que essa tese aqui ajuda também: https://archive.org/details/ProjetoDeUmProcessadorMicroprogramado
Projeto de um processador microprogramado : Wilson Vicente Ruggiero : Free Download & Streaming : Internet Archive

## 1975: WILSON VICENTE RUGGIERO. Projeto de um processador microprogramado. * Dissertação (Mestrado em Engenharia) EPUSP, 1975. * Digitalizado a partir de...
Werner Eck:
eu peguei já
ah, isso isso !!!
Werner Eck:
peguei hj mais cedo
Werner Eck:
Isso é o projeto do G-10?
Mon 2017-11-13, 19:07
não sei. Mas deve ser
Werner Eck:
Eu tbm não.. kkk
é da mesma época
só pode ser
Werner Eck:
Comecei a ler meio desatento
bom... boa leitura aí. Eu preciso focar no trampo aqui. Volto mais tarde
Werner Eck:
Blz, depois falamos. Toca o puteiro daí q eu toco a zona daqui
:-P
não é exatamente o meu vocabulário predileto, mas acho que peguei o espírito da coisa hahaha
Werner Eck:
rss
Mon 2017-11-13, 20:08
Werner Eck:
Pensa em abstração de micro-código
Werner Eck:
Depois me fala se vc já chegou a fazer o commit do driver do Sagitta?
fiz o pull request
mas teve feedback pedindo alteração em algumas coisas
e eu ainda não fiz as alterações
Werner Eck:
ummm
o Cuavas tá esperando eu acertar isso
Werner Eck:
Eu queria compilar, daí fiz um pull do seu remote mas não vi
https://github.com/mamedev/mame/pull/2776
new non-working driver: Scopus Sagitta 150/180 serial terminal by felipesanches · Pull Request #2776 · mamedev/mame

mame - MAME
eu acho que você pode fazer:
Mon 2017-11-13, 20:08
git fetch fsanches
git checkout fsanches/sagitta180
e compilar
Werner Eck:
já fiz. o nome do driver é esse mesmo, sagitta180?
sagitta180 é o nome do driver e também é o nome do branch
Werner Eck:
ok
já o código fonte fica no scopus.cpp
Werner Eck:
então vou tentar compilar com esse target
src/mame/drivers/scopus.cpp
Werner Eck:
aah, acho q foi por isso, eu não vi
Mon 2017-11-13, 20:08
Werner Eck:
estava de olho em algo como sagitta
Werner Eck:
tá lá sim
Werner Eck:
blz
eu optei por fazer um driver inteiro pros terminais da scopus, então não botei o nome do modelo no arquivo CPP
Werner Eck:
sem problemas, isso foi bom pois eu estou me acostumando com essa estrutura toda
mas talvez faça sentido renomear depois quando o conjunto de emuladores da Scopus for maior e tiver formas melhor de nomear as categorias de máquianas emuladas
por exemplo, a scopus tem clone de PC-XT
Werner Eck:
👍🏻
Werner Eck:
vdd
então o XT da Scopus entraria provavelmente nos drivers de XT que o MAME já tem
Mon 2017-11-13, 20:08
Werner Eck:
são maquinas distintas
a não ser que seja MUITO diferente
Werner Eck:
faz sentido
(e tem um XT da Scopus lá no acervo histórico da USP :-D)
Esse hobby é uma desgraça. Quanto mais a gente avança, mais a gente afunda
tem mais máquina do que gente pra emular as máquinas...
Werner Eck:
kkk
Werner Eck:
é coisa de programação.
Werner Eck:
Não só emulação
Werner Eck:
estou compilando pro sagitta.
Mon 2017-11-13, 20:08
Werner Eck:
só queria ver ele acender aqui
legal
podia dar uma investigada no teclado talvez
que é o misterio da vez...
Werner Eck:
certo
Werner Eck:
o mapeamento do teclado do cp500 tbm não foi feito, ou foi?
Werner Eck:
pq eu percebi diferenças nas teclas
Werner Eck:
ou isso é usado do driver trs80?
ah
bem observado
Mon 2017-11-13, 20:08
pode ser que o teclado do cp500 seja mesmo diferente
não sei dizer
se for, é necessário mapear as diferenças e declarar no driver
Werner Eck:
pq seria legal (só não sei se correto), se ele mapeasse as teclas do teclado guest
Werner Eck:
ah tá, entendi
Werner Eck:
pow, isso seria uma coisa boa pra um padawan fazer, não?
e tem uma zica maior no driver do cp500 (aliás nos dos trs80 model 3 e derivados em geral) que é a falta de suporte ao formado de imagem de disco JV3 ou DMK
sim, seria
só não sei como você faria
com base em fotos ?
Mon 2017-11-13, 20:08
Werner Eck:
nem eu, rss
Werner Eck:
eu diria com base no q está agora
Werner Eck:
tipo, eu anotando as teclas q eu pressiono e o q sai na tela
Werner Eck:
daí criando uma espécie de mapa
é... é um metodo empírico
tem chances de dar certo
Werner Eck:
e finalmente olhando uma foto de um teclado completo e ver se tem td
mas não é garantido que será uma descrição fiel do layout
uma foto pode ajudar sim
Werner Eck:
daí passando ao remapeamento pra que as teclas físicas do host reflitam
Mon 2017-11-13, 20:08
a certeza só teremos inspecionando as trilhas do teclado talvez
mas combinar análise empírica com uma foto do teclado é bom o suficiente
Werner Eck:
vou olhar os fontes do driver e localizar onde e como isso está sendo feito primeiramente
outra coisa legal é ver as ROMs existentes circulando pela web e categoriza-las
(1) lixo
(2) bad dump
(3) rom de outras versões domesmo hardware do cp500
Werner Eck:
poutz mas daí seria um trabalhão, visitar todos os sites...
(4) rom de variantes do hardware do cp500
como por exemplo o cp500/M80
Mon 2017-11-13, 20:08
Werner Eck:
esse tem lá naquele site q eu mencionei
Werner Eck:
nunca tinha ouvido falar
eu não sei qual é a diferença
seria legal tentar carregar a ROM dele no MAME e ver o que acontece
Werner Eck:
e pra fazer isso teria q mudar o q no driver?
só deus sabe (eu diria se eu não fosse ateu)
Werner Eck:
pra ele carregar a rom q eu quiser q ele carregue?
ah!
Werner Eck:
em um mesmo driver
isso é só questão de editar os nomes das ROMs lá no driver
Mon 2017-11-13, 20:08
e rodar apontando prum diretório com as roms diferentes
talvez editar os tamanhos dos arquivos também (se for diferente)
Werner Eck:
curiosidade, teria como fazer uma espécie de opção ou submenu, que vc escolhesse a variante baseado na ROM?
e, se for algo útil de adicionar no MAME, aí vale a pena declarar uma nova seção de declaração de ROMs com o ROMset alterativo
sim
tem duas formas
se o hardware é diferente, vocÊ declara um nome diferente de driver, declara como derivado, adiciona as funções com código de emulação da diferença do hardware e o resto é herdado do "driver pai".
Werner Eck:
tipo, o cp500m80 seria um child do cp500...
se o hardware for idêntico e a única diferença for, por exemplo, uma versão diferente da bios, aí dá pra usar uma macro que declara alternativas de bios
isso!
Mon 2017-11-13, 20:08
Werner Eck:
lembro vagamente de vc ter me mostrado isso
Mas uma outra versão de bootrom pro mesmo equipamento seria declarado diferente
veja o exemplo do driver replicator.cpp
eu que escrevi
Werner Eck:
deixa eu abrir
tem lá o uso da macro de múltiplas versões de bootrom para um mesmo hardware
Werner Eck:
ah ta vc corrigiu
Werner Eck:
rsss
src/mame/drivers/replicator.cpp
Werner Eck:
perae deixa eu localizar ele
Mon 2017-11-13, 20:08
Werner Eck:
é, então
Werner Eck:


Seria essa parte aqui, né?
Werner Eck:
esse replicator é aquela impressora 3D da makerbot?
sim
sim
(divertido, né?)
Mas é um driver pela metade
o problema é que a emulação da CPU é incompleta
e o problema é meio cabeludo de resolver
emular os timers do microcontrolador AVR8
Mon 2017-11-13, 20:08
etc
eu tentei
e me confundi
e larguei pela metade
Werner Eck:
o bicho ficou cabeludo demais?
Werner Eck:
o sagitta emulou aqui
o driver boota e mostra texto no display de cristal líquido
Werner Eck:
só q sem perceber entrada do teclado
mas não toca a música
o input de teclado está descrito no driver mas não funciona
Mon 2017-11-13, 20:08
mas acho que não funciona por conta dos timers e não por estar errado o mapeamento do teclado
acho que tá certa a emulação do teclado da impressora 3d (é um key pad)
mas realmente a emulação dos timers tá toda zoada e aí o driver não funciona
Werner Eck:
a questão dos timers vc está falando da replicator?
por que o firmware usa os timers do avr8 para fazer bitbang no speaker e tocar música
e também para controlar o timing dos stepper motors
sim
replicator
Werner Eck:
difícil controlar isso sabendo q cada máquina tem um clock diferente
se algum dia eu ajustar a questão dos timers, acho que é um driver legal para experimentar a idéia de modelos 3D se movendo em função de comandos do firmware
Mon 2017-11-13, 20:08
Werner Eck:
ou existe algum artifício no MAME q já facilita isso?
o MAME tem algumas formas de lidar com timers
tem sim
eu é que não manjo muito
mas sei que tem jeito de fazer sim
é que eu preciso estudar mais
Werner Eck:


Esporadicamente, ao carregar o driver cp500 aparece isso ao invés da tela de boot...
Werner Eck:
Não é sempre. Não parece haver um padrão.
Werner Eck:
umm... eu acho q já tenho um palpite de qual macro eu preciso fazer uma sobrecarga pro CP500...
Werner Eck:


Mon 2017-11-13, 22:10
yup!
será que é por conta do estado inicial do flipflop ?
Werner Eck:
é... talvez seja uma possibilidade. Eu vi onde vc declara ele, mas não pesquisei onde ele é setado.
Werner Eck:

não.
é um método
procure o nome dele no código
vc vai achar a implementação
Werner Eck:
to chegando lá
Werner Eck:
tem 3 ocorrências de cp500_a11_flipflop_toggle nos fontes
Mon 2017-11-13, 23:11
Werner Eck:


Aqui
Werner Eck:
deve ser no mame\machine
não
é no drivers/trs80.cpp
Werner Eck:
no cpp não tem implementação do "cp500_a11_flipflop_toggle"
Werner Eck:
não em mame\drivers
Werner Eck:


em mame\machine\trs80.cpp
duh
vc tem razão
Werner Eck:


E aqui posso assumir q sempre seta ele com zero a cada início?
Mon 2017-11-13, 23:11
pois é
é isso mesmo
Werner Eck:
pq na linha de baixo ele chama o reset pro trs80m4?
então não sei qual é o problema
pra fazer tudo o que o construtor originalmente fazia
Werner Eck:
não deveria haver alguma coisa igual, só q passando 'cp500'?
como eu sobrecarreguei o construtor, eu preciso chamar o construtor original depois que eu faço a minha coisinha extra
Werner Eck:
isso q eu pensei. Vc sobrecarregou ele imagino q com uma assinatura diferente no método?
só pra me assegurar, eu troqueo essa linha pra flipflop=1 e compilei
quando rodo dá tela preta
Mon 2017-11-13, 23:11
então acho que o problema é outro
Werner Eck:
vc rodou mais de uma vez?
botei flipflop=1 só pra tentar induzir o mesmo problema
aqui eu rodo mil vezes e sempre funciona
Werner Eck:
tendi
vou ficar offline agora
Werner Eck:
eu pensei o seguinte, vc chama o método do flip flop, e a cada chamada ele reseta o estado dele certo?
té mais
Werner Eck:
ok
Werner Eck:
blz
Mon 2017-11-13, 23:11
ah
só uma dica
Werner Eck:
diga
o cuavas me disse que esse driver do trs80 tá uma extrema gambiarra
Werner Eck:
ummm
e que alguém precisa fazer um refactoring geral. Re-escrever do zero
por que tem muita gambiarra
Werner Eck:
uiaiui
Werner Eck:
aiuiai
acho que por que ele foi escrito numa época em que o MAME não tinha determinados recursos
Mon 2017-11-13, 23:11
e hoje em dia dá pra escrever de forma mais didática
enfim... não é o melhor exemplo de código pra aprender emulação
vou dormir. té mais!
Werner Eck:
alguma coisa dá pra tirar dele. Té mais
E Happy Hacking !!!
Werner Eck:
répi réquingui
(prepare-se pra ir na USP na 4a feira)
Werner Eck:
opa!
3, 2, 1, fui!
Werner Eck:
inté
Mon 2017-11-13, 23:11
Werner Eck:
Outro brinquedin: https://youtu.be/KAivGLHJzJM
Assembly and Review - PE6502 Hobby Computer

Support this channel on Patreon https://www.patreon.com/8BitGuy1 Visit my website for cool gear: http://www.the8bitguy.com For more information on the PE6502...
Y K joined with an invite link
Y K:
Já sei que vou gostar do grupo quando tem vídeo do 8-bit Guy como última mensagem.
Y K:
Boa tarde a todos.
Olá, Y K
Qual é o seu nome?
Y K:
Yuri
Por favor se apresente ao grupo contando um pouco sobre você, seus interesses, e como você vê sua participação em atividades de preservação histórica de computadores e outros dispositivos eletrônicos
Y K:
Yuri, advogado, cursando Engenharia Microeletrônica na Fatec, montando uma RepRap 3D quase concluindo, sei bastante coisa, trabalho com TI, quero um microscópio igual ao usado nesse vídeo (https://www.youtube.com/watch?v=-8nLuNJvvMY) até 2020, quero ajudar a indústria High-Tech do Brasil e criar um ecossistema e uma supply-chain PT-BR-HUE
What knockoff Amazon and eBay chargers do to your $1200 Macbook Pro

✖ TOOLS SUGGESTED: ● Soldering Iron: http://amzn.to/2cKkMyO ● Preferred tip: Fine: http://amzn.to/2d5MgPn Flat: http://amzn.to/2xgrx6a GPU wicking: http://am...
o que é uma "supply-chain PT-BR-HUE" ??!!? :-P
Tue 2017-11-14, 18:06
Y K:
Gente que produz os componentes
Y K:
Pra gente não comprar componentes da Ásia na hora de montar
Y K:
Criar um sistema brasileiro que cria e produz peças que não são produto final, mas parte de um produto final a ser montado.
Y K:
Algo relevante para nossa independência no setor.
(explicando: eu só achei engraçado / esquisito o "HUE")
Y K:
Ah, o HUE é conseguir fazer sem perder a alma no processo.
Y K:
E qual é a do grupo? Tem encontros reais?
Douglas Esteves joined with an invite link
Olá, Douglas! Eu te conheço, mas talvez o resto do pessoal aqui não. Então gostqaria de pedir o que peço a todos que entram no grupo. Por favor se apresente, diga um pouco do que você faz, seus interesses, etc... E também como você acha que pode colaborar com os esforços de preservação da história da computação.
Alguns aqui se conhecem pessoalmente lá do Garoa Hacker Clube. E já rolou ao menos uma sessão de programação de emuladores no Garoa que foi combinada por aqui.
Tue 2017-11-14, 19:07
E a descrição geral do grupo está nessa mensagem :-)
Werner Eck:


Cara, eu tive esses livros...
Werner Eck:
q louco achar pra baixar...
o glifo do "O" em "JOGOS" no primeiro livro da esquerda está grande demais
Gostei do O cortado na capa do meio. Remete ao zero cortado ironicamente usado para diferenciar um zero de uma letra O. E muito usado em fontes boas para programação, já que a troca de uma letra por um número é catastrófica em um código-fonte.
Werner Eck:
😂 vdd. O olho d quem é especialista em fontes não falhs
Werner Eck:

Download .pdf file
Werner Eck:

Download .pdf file
Werner Eck:
@fsanches outro dia lembrei d falar pra vc desses 2 livros q eu tenho, originais. Não tenho scans deles. Comprei na adolescência. Mas acabei esquecendo.
Werner Eck:
[Letron] Esquema Z-80.pdf
Tue 2017-11-14, 19:07
Werner Eck:

Download .pdf file
Werner Eck:
O livro do Z-80 vem com essa folha avulsa, com o esquema da "máquina", rss. 😁
pelo nome eu achei que fosse o "Construa seu próprio microcomputador Z80" do Steve Ciarcia
https://datassette.org/livros/diversos/construa-seu-proprio-microcomputador-z80
Douglas Esteves:
Bom eu sou o Douglas Esteves conheci o grupo na apresentação do Juca no ROADSEC, achei interessante e entrei para ler e aprender mais da historia, sou membro do Laboratório Hacker de Campinas (LHC), acho bem interessantes os materiais apresentados, Acho que consigo ajudar com um pouco com pesquisas, por estar perto da Unicamp (caso tenha algo por lá).
Werner Eck:
Não esse é a versão tupiniquim. Esse do Ciarcia eu tenho uma cópia xerox
by the way... https://github.com/mamedev/mame/blob/master/src/mame/drivers/zapcomputer.cpp
mamedev/mame

mame - MAME
momento "Aaaahhhh muleke !!!!"
Werner Eck:
Precisa ver a forma como ele sugere a montagem - uma placa de madeira, com os componentes soquetados e os soquetes colados na placa... toda a fiação em wire wrap soldado por baixo. Ele chama o projeto de "Micro-Galena"
afff