O que é uma ROM de SNES e o que tem DENTRO? (Para programadores e curiosos)

Поділитися
Вставка
  • Опубліковано 23 січ 2025

КОМЕНТАРІ • 181

  • @williamsknot
    @williamsknot Рік тому +47

    O vídeo é sobre ROM e ainda tem uma ótima aula sobre sistemas operacionais! Valeu pelo vídeo!

    •  Рік тому +3

      Valeu Willian...

  • @srchronotrigger
    @srchronotrigger Рік тому +15

    Excelente vídeo! eu sempre falo que para se tornar um verdadeiro programador é necessário ter ao menos a noção de como os dados são computados em baixo nível, pois essas abstrações das linguagens de alto nível nos colocam um mau costume de não saber o que está ocorrendo, pois quando digitamos printf(); a máquina não entende o que isso significa e por trás dessa mesma função há diversas outras instruções para chegar no resultado de imprimir na tela que por sua vez é um código em assembly e que por sua vez é um mnemônico para o binário, o Fábio Akita salvo engano disse que cada arquivo é apenas um monte de binário e que a informação é interpretada conforme olhamos para ela, se olharmos para aquele dado como texto vemos apenas linguagem de máquina no editor, se olharmos como imagem pode muito bem ser um .png, e isso fica muito claro no exemplo da rom, que ao abrirmos com um editor hexa é um amontoado de bytes, mas em um editor de sprites podemos encontrar imagens amontoadas. Mas em fim, aula preciosa para quem quer se aprofundar na arquitetura de computadores, também muito importante para os romhackers que traduzem ou editam jogos, gosto muito de manipular jogos antigos, espero um dia ser capaz de compreender assembly para arquiteturas como mips, 6502, entre outros usados por consoles antigos.

    • @faloaverdaderasga8773
      @faloaverdaderasga8773 Рік тому

      Kkkkkkkkkkkk tu e gay só pode

    • @srchronotrigger
      @srchronotrigger Рік тому

      ​@@faloaverdaderasga8773 Se eu até hoje nunca fui então continuarei sem ser, mas se tu tá interessado deve ser porque tá querendo uma leitada quente no teu rabo né kkkkkkkkkk

    • @Gabriel-qn6ls
      @Gabriel-qn6ls 8 місяців тому

      ​@@faloaverdaderasga8773????

  • @rogeriopst450
    @rogeriopst450 4 роки тому +6

    me encaixo na categ de curioso. programo, mas n tive a curiosidade p programar nesse nivel rs
    excelente video hein. n sabia da questao do mega drive e do snes comparado c os computadores tradicionais.
    foi bem esclarecedor td. c ref a ROM hacking tb.
    mandou bem demais.
    n preciso nem dizer q vou compartilhar, pq conteudos como os seus, o de Filipe Deschamps merecem ser exaltados.
    parabens. vlw

    •  4 роки тому +2

      Obrigado Rogerio. Agradeço pela força. Abraço.....

  • @sousa.88
    @sousa.88 Рік тому +2

    Cara, excelente vídeo. Uma verdadeira aula!
    Mas toda vez que vc fala "rum" e não "rom", dá uma tristeza.
    Fora isso, tá bem explicadinho!

    •  Рік тому

      Valeu Souza. Nem sei pq eu falei Rum nesse vídeo. Dói meu ouvido tb kkkk

  • @knaHabs
    @knaHabs Рік тому

    caracas....que video show...eu estava so navegando mais tive que ver este video aula...😄.valeu...+1 escrito

  • @brunosuperman
    @brunosuperman 11 місяців тому

    Esse vídeo me respondeu todas as perguntas que eu tinha sobre programação!

  • @marinsaugusto18
    @marinsaugusto18 10 днів тому

    Rapaz que aula top, obrigado demais !

  • @vpfaustino
    @vpfaustino 11 місяців тому

    Sempre uma excelente aula, muito didatica 👏

  • @marciohiperativo3278
    @marciohiperativo3278 Рік тому +6

    Ótimo conteúdo, uma verdadeira aula. Como não vi isso antes?

  • @wesleysilva3363
    @wesleysilva3363 Рік тому +1

    Nem sei como vim parar aqui kkk. Mas achei o vídeo sensacional.

    •  Рік тому

      Valeu Wesley...

  • @codigo_reverso
    @codigo_reverso Рік тому +10

    Ótimo conteúdo.
    Só pra pontuar, vc pode reproduzir esse conceito de arquivo binário "rom" em linguagens de programação mais alto nivel como as do .NET e Java, com as classes de Stream de ambos os casos.
    Tudo que voce precisa fazer é alocar um bloco X de bytes, daí dentro dele são criados N blocos menores.
    Estamos falando aqui no fim das contas de um grande Array onde sempre precisamos saber a posição inicial e final de um bloco pra ter acesso ao dado
    Se uma gravação for feita numa posição errada, pode facilmente corromper TODO o bloco raíz fazendo as leituras ficarem erradas e inutilizando a "imagem" por completa

  •  Рік тому +1

    Valeu! Muito obrigado!

    •  Рік тому +1

      Valeu André...

  • @diegohacke4462
    @diegohacke4462 Рік тому +1

    Que conteúdo bom!!! eu trabalho como programador de máquinas CNC, sempre tive curiosidade como funcionava a programação desses jogos antigos e esse video passou muita coisa boa de forma esclarecida!!! vou acompanhar mais esse canal abraços!!!

  • @TalesCembraneliDantas
    @TalesCembraneliDantas Рік тому +6

    SDS de quando eu estava estudando o 6502 do NES, assembly é bem legal, pena q na época eu não tinha ninguém interessado no assunto pra eu trocar ideia, cheguei a criar algumas coisas, mas só demos mesmo. Legal seria arrumar uns 2 ou 3 q tivessem interesse pra fazer junto alguma coisa

    •  Рік тому

      É difícil achar viu. Tenta criar um projeto no Github e tentar divulgar pra ver se alguém se interesse em mexer junto.

  • @ErivandoAndrade
    @ErivandoAndrade 4 роки тому +9

    Ótimo vídeo! Os outros vídeos fizeram com que eu pesquisasse sobre assembly, porque finalmente eu pude entender o básico do básico pra criar curiosidade. Sucesso!

    •  4 роки тому +4

      Nos próximos vídeos vou começar a entrar mais no assembly. Continua assistindo os próximos vídeos.

  • @georgeensina
    @georgeensina Рік тому +1

    Que vídeo legal, cara!

    •  Рік тому

      Valeu George...

  • @douglasalmeida6878
    @douglasalmeida6878 Рік тому +1

    Show 👏👏

    •  Рік тому +1

      Valeu Douglas...

  • @rafaelferreira8255
    @rafaelferreira8255 3 роки тому +1

    Sempre tive a curiosidade de saber, obrigado

    •  3 роки тому

      Valeu Rafael...

  • @programeaacao7110
    @programeaacao7110 4 роки тому +8

    Cara, parabéns! Ótimo vídeo!

    •  4 роки тому +2

      Olá, obrigado por assistir. Valeu...

  • @hyper-joy
    @hyper-joy 3 роки тому +2

    Muito bom contéudo, sempre quiz saber isso.

    •  3 роки тому

      Agradeço o apoio Hyper Joy. Abraço......

  • @edslti
    @edslti Рік тому

    Aulas e aulas! Parabéns

  • @NatanCanDraw
    @NatanCanDraw 4 роки тому +3

    Deu até um frio na espinha quando você falou do segmentation fault hahaha. Adorei a explicação.

    •  4 роки тому +2

      😄 É Natan, já sofri muito com esses Segmentation Faults. Já implementei muitos drivers, e com driver é pior pois se der pau tem que reiniciar a máquina. Já passei muita raiva 😄 Abraço.....

  • @rafadacunha9453
    @rafadacunha9453 2 роки тому +1

    Mas que aula top demais essa.

    •  2 роки тому

      Valeu Rafa...

  • @djunho
    @djunho 4 роки тому +2

    Muito bem explicado! Parabéns!

    •  4 роки тому +1

      Valeu Daniel, abraço...

  • @raphael4758
    @raphael4758 Рік тому

    Fala, man! Assistindo vídeo do Akita acabei caindo nesse vídeo do seu canal! Cara, que aula! Parabéns demais pela sua didática e pelo vídeo de qualidade! Com certeza vou maratonar seu canal!
    E tomara que um dia role um colab entre você e o Akita! Dois mestres da comp 😄
    Parabéns demais!

  • @EdisonStraitenberger
    @EdisonStraitenberger Рік тому

    Excelente

  • @buenof3r
    @buenof3r Рік тому

    Que conteúdo incrível, muito obrigado, aprendi mais no seu vídeo do que em 1 semestre na faculdade.😂

  • @souzamotasacul
    @souzamotasacul 4 роки тому +6

    Ótimo vídeo! 👏🏼👏🏼👏🏼

    •  4 роки тому +2

      Valeu Lukkas, abração.....

  • @fabioribeiro6548
    @fabioribeiro6548 Рік тому +1

    eu rindo 😅 depois que ele falou que não dava pra mudar o arquivo depois que coloca o arquivo no chip te amo "game genie🥰" video top parabéns

    •  Рік тому +1

      E aí Fábio. O Game Genie serve pra monitorar escritas e leituras para mudar os dados no barramento de dados em tempo real, permitindo um monte de modificações na execução do jogo. Valeu.....

  • @MarcusBecker
    @MarcusBecker 2 роки тому +1

    Voltei para rever o vídeo. Continua muito bom. Poderia falar um pouco sobre como é feito o disassembler de roms?

    •  2 роки тому +1

      No futuro quero fazer uma playlist fazendo um emulador e vou falar sobre isso.

    • @MarcusBecker
      @MarcusBecker 2 роки тому

      @ Aguardo ansiosamente!🤩

  • @EdvaldoLopesAraujo
    @EdvaldoLopesAraujo Рік тому +2

    Tecnologia de programação bem antiga. Assembler. Quem progamava nisto, era fera. Hoje, dificilmente teremos programadores habilitados para esta linguagem. A unica linguagem de prog que chega proximo a este nivel, é o C. Valeu por mostrar isto.

  • @joaovinicius8880
    @joaovinicius8880 4 роки тому +3

    Obrigado pelo conteúdo 😉

    •  4 роки тому +1

      Valeu João, abração...

  • @arturbc2
    @arturbc2 Рік тому +1

    Que assembly bonito. Quando mexi com assembly de PIC, era uma parada muito mais rudimentar. Os assemblers de "engines" de consoles antigos devem dar uma forcinha pra abstração e deixar menos impeditivo.
    Mas essa galera de devs empenhados sempre dão um jeito "ah, não tem sistema operacional... Não tem problema, vou fazer um cartucho que emula cartuchos a partir de arquivos ROM em um cartão microSD" e, "tadá", que se façam esses everdrive da vida. Alguns tem até um chupa-cabra embutido pra fazer o dump de cartuchos direto pro cartão SD.

    •  Рік тому +3

      Sim, os assembly desses consoles são bem legais, e o assembler Bass que eu uso tb é bem legal. Eu estou terminando uma extensão pro Vscode pra programação em Mega e Snes que tem syntax highlight, mostra os erros, etc. Já tenho uma versão pra Vim disponível no meu github.

    • @ALLANOSAN
      @ALLANOSAN Рік тому

      ​@opa isso me interessa muito

  • @MarcosAurelio-nm7ei
    @MarcosAurelio-nm7ei Рік тому +2

    Top demais o vídeo!!
    Chegou a falar mais detalhadamente sobre ponteiros? Tem tudo a ver com oq vc explicou.
    E tbm seria legal falar sobre a compactação, igual vc citou a strings para tradução e elas sempre estão compactadas e "perdidas" pelo código. Poderia falar da parte de extrai-las.
    Já fiz romhacking para tradução e usada muito essa noção de ponteiros e compactação.

    •  Рік тому +1

      E aí marcos eu tenho alguns vídeos sobre compressão e descompressão aqui no canal. Tem um bem longo onde fiz a engenharia reversa de um algoritmo de descompressão para extrair uns gráficos.

    • @MarcosAurelio-nm7ei
      @MarcosAurelio-nm7ei Рік тому

      @ eu achei o vídeo, legal.
      Vc poderia fazer agora com outros métodos tipo lz e seus derivados, são muito usados nos jogos e tbm falar como achar os dados onde se inicia os binários do gráfico ou dos textos na ROM.
      Acho que seria interessante.

  • @JoaoVictor-ir3yu
    @JoaoVictor-ir3yu 4 роки тому +2

    Cara, teu canal é muito show! Parabéns!

    •  4 роки тому

      Obrigado pelo elogio João Vitor. Abração....

  • @caio757
    @caio757 Рік тому

    cara o seu canal foi uma das melhores descobertas que tive no mundo de tech, pra mim tá nivel Akita

    • @nettoagostinho
      @nettoagostinho Рік тому

      akita não ensina nada, o douglas sim. Onde o Akita explica alguma coisa com esse video?

  • @mrblayke19
    @mrblayke19 Рік тому +2

    E pra traduzir uma ROM por exemplo ou modificar? Muito interessante isso, eu tava querendo saber como era agora apareceu seu vídeo do nada

    •  Рік тому +1

      Pra traduzir tem que usar os debuggers. Aqui nessa série já mostrei bastante os debuggers de Snes e Mega.

  • @birimba4466
    @birimba4466 Рік тому +1

    Ótimo conteúdo, sempre quis saber como são feitos modificações nesses arquivos ROM, como são feito as hackroms. Creio que esse seja o caminho.

    •  Рік тому

      Sim, continua assistindo a série. Abraço.....

  • @cass4649
    @cass4649 3 роки тому +3

    Excelente conteúdo, parabéns.
    Faz uma série depois sobre CPU e schedulers do SO 😀

    •  3 роки тому

      Olá, obrigado pela mensagem. Você diz schedulers tipo do Kernel do Linux? Eu tenho vontade de fazer uma série sobre implementação de drivers pra Linux, mas não sei quando.

    • @cass4649
      @cass4649 3 роки тому

      @ Drivers para linux também seria super legal. Schduele no nível kenel com hardware, como o kernel "configura" a CPU para obedecer o tempo determinado, como é feito a troca de contexto em si.

  • @rodrigao_gameplays
    @rodrigao_gameplays 2 роки тому +1

    Parabéns, conteúdo de qualidade

    •  2 роки тому

      Obrigado Rodrigo....

  • @arduinomaquinas
    @arduinomaquinas Рік тому

    Parabéns pelo vídeo amigo, inscrito no canal, @arduinomaquinas" agradece suas informações técnicas 😉👍👏👏👏👏👏👏

  • @CraneckScape
    @CraneckScape Рік тому +1

    Obrigsdo pela explicação

    •  Рік тому

      Valeu Carlos...

  • @thieresalcalde758
    @thieresalcalde758 4 роки тому +4

    curto pra caramba essa série to sempre acompanhando só queria saber quando vai partir pro assembly kkkk da vontade de botar a mão na massa

    •  4 роки тому +1

      Fala Thieres, tá chegando 😀

  • @isaiassantos2226
    @isaiassantos2226 4 роки тому +3

    Excelente vídeo 👏👏👏

    •  4 роки тому +2

      Valeu Isaias, obrigado por acompanhar.

  • @raniel0511
    @raniel0511 Рік тому

    Adorei cara, faz um de gameboy color tbm? Tem bastante coisa tbm, usam tanto C quanto Assembly e tem até uma IDE no code pra programar pra gameboy color.

  • @DespertoRP
    @DespertoRP Рік тому +1

    Muito interessante seu vídeo amigos bem informativo parabéns. Você poderia fazer um vídeo explicando sobre aqueles Chips de bolha, o funcionamento, igual esse vídeo seu.

    •  Рік тому +1

      E aí Paulo, boa sugestão. Vou deixar no backlog aqui. Valeu.....

    • @renatonascimento7885
      @renatonascimento7885 Рік тому +1

      O chip de bolha nada mais é do que um die sem o encapsulamento e terminais , pra reduzir custo . Muito utilizado nos cartuchos piratas

    • @DespertoRP
      @DespertoRP Рік тому

      @ obrigado amigo. Seria ótimo. Gostei muito do seu vídeo por que você explica pra até um leigo que não entende nada, entende bem. Continue assim e faça o vídeo. Parabéns.

    • @ThiagoPerroni
      @ThiagoPerroni Рік тому

      @@renatonascimento7885 Bela e cirúrgica resposta.

  • @Vulto166
    @Vulto166 Рік тому +1

    É um bom começo de engenharia reversa.

    •  Рік тому

      Valeu Tux....

  • @steevenavila
    @steevenavila Рік тому

    Muito bom o conteúdo do vídeo. Não sou da área, mas sou muito curioso no assunto. Desculpa meu preciosismo, mas quero contribuir com duas informações.
    1. A pronúncia é rom (não rum), mesmo em português.
    2. Os sufixos de unidades de medidas (kilos, mega, giga) não tem plural, o plural se dá pela unidade de medida (bytes, bits, metros).

  • @expeditovictor2119
    @expeditovictor2119 4 роки тому +2

    Show🤙🏼

    •  4 роки тому +2

      Valeu Expedito....

  • @cicerofernandes9796
    @cicerofernandes9796 Рік тому +2

    Show

    •  Рік тому

      Valeu Cícero...

  • @indiohellfox
    @indiohellfox Рік тому

    Muito massa o vídeo! Mas quando você mostra o dump da ROM em hexadecimal, você está mostrando a representação do código compilado pra aquele CPU específico. Mas em que linguagem esses jogos são programados? Imagino que o programador não programa direto ali em hexadecimal.

  • @SAMUELLHENRIQUE
    @SAMUELLHENRIQUE 3 роки тому +1

    Muito bom teu vídeo! Muito bom aprender assembly assim. Tecnicamente acha que seria possivel fazer um minisistema para um processador do SNES ou MEGA? Tambem achei muito massa o MenuetOS, um sistema todo feito em assembly pra x86.

    •  3 роки тому +1

      Olá Samuell, vc diz um sistema operacional? Até daria, mas o problema é a interface que é muito limitada pra expansões, então não faria muito sentido. Até o Nintendinho tem um console chamado Magic Computer que é tipo um sistema operacional com algumas aplicações básicas. Na verdade é uma rom pro nintendinho. Se tiver interesse dá um procurada. Agora, o processador do Mega Drive, o Motorola 68000, fui muito usado em computadores. A linha de computadores Amiga usa a família do 68000. Amiga foi um computador muito famoso nos anos 80 e 90. Até em jogos o Amiga tem muita coisa boa. Principalmente o jogo Enemy: Tempest of Violence, uma obra prima.

  • @mobalive4477
    @mobalive4477 3 роки тому +1

    Ta muito top.

    •  3 роки тому

      Obrigado Moba, valeu...

  • @EderCamargo
    @EderCamargo Рік тому +1

    No n64 eu tinha um adaptador pra rodar cartucho pirata, daqueles que se colocava o cartucho original junto com o pirata, acredito que era pra fazer o jump no CIC, o pirata era bem simples e nao tinha chip de Ram, so que quando eu usava o pirata junto com o original o pirata salvava, ficava salvo na ram do cartucho original?

    •  Рік тому

      Olá Eder, não conheço esse adaptador, mas pelo que vc está falando o adaptador tem dois conectores, um pro pirata e um pro original? Se sim, então internamente os fios dos barramentos devem estar conectados nos dois cartuchos, e deve ter alguma lógica que detecta se o endereço é na região de save e ativa os pinos de controle do original, caso contrário contrário apenas o pirata é ativado.

  • @lucardplays2182
    @lucardplays2182 Рік тому +1

    Conteúdo Top e didático Br top, nível da gringa!

    •  Рік тому

      Valeu Lucard...

  • @JorgeAugustoCorreaReis
    @JorgeAugustoCorreaReis Рік тому

    Show!!!

  • @ferbemas
    @ferbemas Рік тому +1

    Como um pendrive por exemplo consegue manter os dados salvos sem ter uma pilha?

  • @simonkanarazu83
    @simonkanarazu83 3 роки тому +1

    Duas perguntas, Da pra criar jogos de snes ainda hoje, os jogos de máster system também eram feitos em assembly ???

    •  3 роки тому

      Olá, sim, hoje em dia é mais fácil, pois já tem muita coisa pronta e ferramentas. Master System era assembly sim.

  • @bowserlv100
    @bowserlv100 2 роки тому +1

    Tecnicamente, devem sim haver arquivos e pastas em cartuchos de Snes e consoles semelhantes, o problema é que quase ninguém até hoje conseguiu organizar os dados para humanos verem com algum programa de leitura universal.
    Os unicos programas que poderiam mostrar a organização real das ROMs é o SDK aonde os jogos são criados. Agente somente ver arquivos dos jogos atuais porque todos os PCs e consoles modernos tem SISTEMA operacional, e são os mesmos aonde o programador cria os jogos, o que muda é a extensão de arquivos que precisa de plug-in específico pra abrir. Mas um OS é uma parte dos SDK.
    Se os SDK do Snes aparecerem algum dia, talvez possamos acessar os arquivos das ROMs sem recorrer a engenharia reversa ou leitores de hex.

    •  2 роки тому

      E aí, neste sentido que vc falou, sim, pois quando criamos um jogo de Snes temos muitos arquivos. Mas uma vez criada a Rom lá dentro é um mistura de coisas. É diferente de uma imagem de Cd por exemplo que é um container e dentro pode ter múltiplos arquivos que podem ser separados. O ponto do vídeo é explicar que um jogo de Snes não tem uma estrutura interna que pode ser definida certinha. Varia de jogo pra jogo e só debugando mesmo pra ir encontrando as coisas.

  • @valdineletrotecservicos5729

    gostei muito

  • @AMV12S
    @AMV12S Рік тому +1

    Esses consoles antigos tem sistema operacional porém o jogo é o próprio sistema, inclusive existe gente que já fez versões de Linux pra ser colocado em cartucho customizado e rodar no SNES. Os jogos antigos tinham uma API da Nintendo e seguiam um padrão, esse padrão era como se fosse um sistema operacional, e toda vez que você trocava de jogo era como se tivesse uma instalação diferente de Windows por jogo.
    E no caso os dados estão bagunçados no hexa porque assim como quando você compila um programa não fica aparecendo as bibliotecas, ele também foi compilado pra ser colocado no cartucho...Muito jogo de DOS também não é arquivo único?

    •  Рік тому

      E aí, eu nunca vi um port do kernel do Linux pra Snes. Já vi pra Nintendo 64. Acho difícil o Linux rodar em um Snes. E um jogo de Snes não acho que pode ser considerado um sistema operacional. Um jogo de Snes é uma aplicação bare metal que acessa diretamente os registradores do sistema mapeados em memória. Se você está chamando os registradores do sistema de Api, tudo bem, mas isso é diferente de uma Api de um sistema operacional. E um jogo de Snes é um binário praticamente sem estrutura interna. Já uma aplicação que roda em um sistema operacional, como o Windows, pode ser composta de um único executável (que tem bastante estrutura interna comparado com uma Rom de Snes), ou de múltiplos arquivos, que pode chegar a milhares dependendo da aplicação.

  • @itabiritomg
    @itabiritomg Рік тому +1

    Boa tarde. Excelente vídeo! muito interessante! Eu tenho uma dúvida: Se uma aplicação não consegue acessar a memória de outra aplicação, então, como é possível pegar um debugger com editor de RAM e mudar um valor dentro de outro programa que está rodando? Por exemplo: Tenho aqui um programa de um equipamento de laboratório caro e perderam o cd com o serial e a fábrica se recusa a vender outra cópia. Qual foi a solução? peguei o CheatEngine que é um debugger e mudei o assembly para pular a verificação do serial e o programa instalou normalmente. como o cheat engine consegue mudar o programa que está rodando, se um programa não enxerga o outro?

    •  Рік тому +1

      Pra isso o debugger usa a Api correta do sistema operacional e tem que ter as permissões corretas de administrador.

  • @MarcusBecker
    @MarcusBecker 3 роки тому +1

    Até ver esse vídeo eu achava que um exe era só um exe. Muito bom.

    •  3 роки тому

      Obrigado Marcus. Abraço.....

  • @PauloHenrique-hg7iw
    @PauloHenrique-hg7iw Рік тому +1

    7:30 o nome desse video e qual ?

    •  Рік тому +1

      Acho que é o vídeo 2 da série.

  • @RangelOblivion
    @RangelOblivion Рік тому +1

    No começo de minha "carreira" como tradutor de jogos eu já estraguei muitos arquivos ROM por sobrescrever dados ao invés de texto. Inclusive, vários anos depois perdi uma tradução de The Legend of Zelda Ocarina of Time por ter feito alguma besteira na hora modificar texturas e texto, o jogo trava numa cutscene já perto do final.

  • @jonatasdocarmo213
    @jonatasdocarmo213 4 роки тому +1

    Muito bom! Eu já venho estudando o assembly a um tempo mas ainda n pesquisei como desativar randomizacão de endereço de memória no Windows tu sabes como fazer isso professor?????

    •  4 роки тому

      Fala Jonatas. Já ouvi falar disso no Linux, mas não sei se tem como desativar isso. É uma questão de segurança importante. Toda vez que a aplicação roda o kernel joga pra um endereço diferente.

    • @jonatasdocarmo213
      @jonatasdocarmo213 4 роки тому

      @ 😄 eu pagaria $$$ pra aprender desativar essa randomizacão ou ter que pesquisar né 😄😄😄

  • @flaviojose9022
    @flaviojose9022 Рік тому +1

    Top...

    •  Рік тому

      Valeu Flavio...

  • @gregsantos4062
    @gregsantos4062 3 роки тому +1

    Olá Douglas!! Parabéns pelo seu vídeo e conteúdo!!
    Por favor, me tira uma dúvida: Estou tentando modificar algumas ROMS de certos jogos beat'em up (Final Fight 2 e 3), e as modificações consistem em fazer coisas como estender as barras de vida dos inimigos, aumentar o número de vidas e "nerfar" um pouco os personagens que a gente controla (pra deixar o jogo um pouquinho mais emocionante kkk). Como faço pra localizar estas informações no editor HEX e como faço para atribuir os valores que vão fazer essas "mágicas" na ROM?
    Desde já agradeço a atenção!!
    Mais uma vez, parabéns pelo trabalho e tutoriais!!

    •  3 роки тому +1

      Olá, editor hexa não tem muita a ver com isso. Vc precisa debugar o jogo para encontrar o que procura. É possível usar um editor hexa posteriormenta caso vc queira mudar bytes diretamente no arquivo, porém não é indicado. O indicado é usar um assembler (como o Bass) que vai fazer o patch no arquivo, o que te dá uma liberdade muito maior e vc não fica perdido editando bytes. Mais pra frente nesta série isso vai ficar claro, mas vai demorar um pouquinho. Abraço.....

  • @retrono_81
    @retrono_81 3 роки тому +3

    Super Nintendo sempre teve a arquitetura de seus hardware mais complexos e trabalhados.! Bom demais.! Amo esse console.!

    •  3 роки тому +1

      Valeu Retrono, o Snes é legal demais...

  • @narutosama-quiz2263
    @narutosama-quiz2263 2 роки тому +1

    Como faço pra ter uma rom licenciada pela nintendo,so basta eu ter o cartucho original e converter pra uma rom,ou tem que ter uma rom expecifica da nintendo

    •  2 роки тому

      Vc fala o arquivo da Rom do jogo disponibilizado pela própria Nintendo? Se for então eu nunca vi a Nintendo fazer isso. O máximo que vc vai conseguir é rodar os jogos antigos que ela disponibiliza para compra nas lojas virtuais dela.

  • @RoncatiAutom
    @RoncatiAutom Рік тому

    24:34 Sem sistema operacional o código ativa a eletrônica diretamente.

  • @johnalves6599
    @johnalves6599 2 роки тому +1

    Sempre quis saber como os jogos eram gravados no chip da fita

    •  2 роки тому

      Valeu John.....

  • @TheMaykids
    @TheMaykids 3 роки тому +1

    Tem algum livro que você recomenda para aprender o básico dessa parte mais "fisica"(arquitetura) dos consoles em geral? Abraço :)

    •  3 роки тому +2

      Olá Maycon, especificamente de consoles não tem. Se quiser aprender mais a fundo a parte de arquitetura, eu gosto muito do livro Computer Organization and Design: The Hardware/Software Interface, do Patterson. Também tem vários livros do Motorola 68000 que tem muito essa parte de arquitetura. Tem um vídeo aqui no canal onde eu faço uma engenharia reversa em um jogo de Mega Drive onde no começo do vídeo eu mostro vários livros que eu tenho sobre o tema. Dá uma procurada lá. Abraço.....

  • @zuff55
    @zuff55 3 роки тому +1

    Professor, é possível criar uma rom Word para Snes como se fosse um programa de PC?

    •  3 роки тому +1

      Olá Felipe, não entendi o "rom World". A pergunta é se dá pra transforma um jogo de Snes em um executável pra rodar no Pc? Se for então não tem como, pois uma rom de Snes nada tem a ver com um .exe que rodamos no Pc, pois é outro assembly e outros hardwares. Tem que ter um emulador pra rodar. O que daria pra fazer seria modificar um emulador aí pra já embutir a rom e virar tudo um .exe único, aí quando rodar já abriria o jogo. Mas não faz muito sentido fazer isso. Os emuladores já existem para que a gente já abra a Rom desejada. Abraço.....

  • @euclydesjosephpadrejosephp8328

    Pelo oque eu entendi o emulador só precisa apenas da rom (software) já o console necessita da parte física (hardware) certo ?

    •  Рік тому

      Olá, os emuladores tb precisam saber o que o cartuchos faz. É por isso que em alguns emuladores, como o Bsnes/Higan vc precisa de arquivos de manifesto pra indicar o que o cartucho faz. Outros emuladores que não tem manifesto, como o Snes9x, usam heurísticas pra tentar detectar como é o cartucho, olhando para o header, etc. No Nes por exemplo existem diversos tipos de mappers dentro do cartucho, então os emuladores tb precisam implementar isso pra conseguir rodar o jogo. Sem falar nos cartuchos com chips extras, que tb precisam ser emulados.

  • @bowserlv100
    @bowserlv100 2 роки тому +1

    Porque os endereços começam SEMPRE con 0x0000 etc.? Sabendo que Computadores só lêem 0 e 1...

    •  2 роки тому +2

      Olá, não entendi a pergunta. Os zeros à esquerda podem ser desconsiderados. Por exemplo um jogo de Snes pode ter jogo no endereço 0xc00000. Daria na mesma se vc falar 0x0000c00000. No editor hexa a seção de endereços geralmente tem o número de dígitos pra suportar o maior endereço do arquivo. Então se o maior endereço for 0xffffff, vai começar do 0x000000, mas esses zeros são apenas pros endereços ficar do mesmo tamanho. A partir do meio do arquivo já não é pra ter zeros na frente.

    • @eng.eletric.rafaelmarques4745
      @eng.eletric.rafaelmarques4745 Рік тому

      Na verdade os códigos poderiam ser identificados de qualquer forma poderíamos ter um código em vez de 0 e 1 poderia ser X e Y, e este 000 poderia ser XXX ou YYY ou qualquer outra notação por exemplo, mas como convenção foi identificado como zeros e uns pois eles identificam que um determinado local físico da memória ou referência eletrônica está fisicamente ligado ou desligado. Como cada endereço identificado representa um ponto físico na memória se temos por exemplo uma memória de 8 posições físicas então para representar essas 8 posições precisamos apenas de 3 bits iniciando em 000 até 111 nesse intervalo binário temos 8 representações que indicam as 8 posições físicas.
      Então esse início 000 representa que uma posição na memória física representa o local 0 e não necessariamente o número 0. Você está associando o 0 como valor numérico por isso acha estranho iniciar por 0 mas este endereço 0000 que ele mostrou indica que em alguma posição da memória esse endereço 0000 representa um endereço físico na memória

  • @canaldogaleto
    @canaldogaleto Рік тому +1

    só não concordei na parte que diz que não tendo
    pilha e deixando o cartucho no slot fica energizado e mantém o save...eu acho que não kkk

    •  Рік тому

      E aí Henrique. Não lembro de ter disso isso. A pilha é que deixa o chip de Sram energizado quando o cartucho está desconectado do console (ou conectado com o console desligado). A pilha tem 3,3V e quando está conectado e o console está ligado, os 5V do console desativam a pilha pois tem um diodo na frente da pilha. Quando o console desliga, os 5V desaparecem e os 3,3V da pilha entram na Sram, mantendo o chip ativo.

  • @randomuser9249
    @randomuser9249 Рік тому +1

    Pelo que eu entedi a rom do cartucho é como se ram e o hd é se fossem uma coisa só.

    •  Рік тому

      E aí, a Rom é como se fosse o HD. A Ram existe e é embutida dentro do console. O cartucho então é como se fosse um HD removível. Dá pra ter Ram de Save dentro do cartucho pra guardar os saves e tb pra realizar tarefas igual a Ram interna do sistema. Mas no geral a Sram dentro do cartucho é usado só pra save mesmo.

  • @drafedifa8870
    @drafedifa8870 3 роки тому +1

    É como no mundo real, não existe arquivos é tudo de forma aleatória, você faz o que quiser na ordem desejada.

    •  3 роки тому

      hehe Mais ou menos isso Jonathon. Abraço.....

  • @Htoon2008
    @Htoon2008 Рік тому +1

    Sdd de quando eu tinha problemas com Kernel e .DLL no Windows. ahahah

    •  Рік тому

      É, mexer com isso é um desafio legal :D Abraço.....

  • @rodrigues3681
    @rodrigues3681 2 роки тому +1

    Vc é formado em eletrônica ?

    •  2 роки тому

      Fiz engenharia de computação.

  • @mhackersoftware7224
    @mhackersoftware7224 Рік тому +1

    O vídeo é bastante interessante. Porém vários conceitos teóricos de Ciência da Computação estão aplicadas de forma equivocada

    •  Рік тому

      Olá, quais conceitos vc se refere?

  • @RamonFerreira
    @RamonFerreira Рік тому +1

    Eu pensava que a rom era tipo o cara pegar um leitor de cartucho do SNES, Mega Drive etc, conectar no computador e copiar os dados do cartucho kkkk pq a rom é uma cópia fiel do jogo.

    •  Рік тому +1

      Sim, os dados dentro do chip são extraídos com algum leitor, o que gera o arquivo da Rom que usamos nos emuladores.

  • @X303_OFC
    @X303_OFC Рік тому +1

    Kkkkk eu tô imaginando o trabalho sofrimento que os Roms Hack ou Rom mod fazendo do super Mario kkkkk

  • @papelhigienico1374
    @papelhigienico1374 Рік тому +1

    Achava que room era tipo de bebida

    •  Рік тому +1

      Rum é bebida kkk

  • @juninhochannel
    @juninhochannel 4 роки тому +2

    Rum? Com limão e mel fica ótimo! 😄

    •  4 роки тому +1

      Kkkkk Acostumei falar Rum e agora já era 😀 Valeu Sebastião......

  • @marcelosofth
    @marcelosofth Рік тому +3

    Amigo não se fala "RUM" e sim "RÓM", seria RUM se a palavra fosse "ROOM" 🕹️

    •  Рік тому +1

      Sim, tem hora que falo Rum sem querer. Abraço.....

    • @lucasferraz2104
      @lucasferraz2104 Рік тому

      Para de ser chato

    • @barbosafreitas5556
      @barbosafreitas5556 Рік тому

      Deu para entender que ele estava falando da memória do computador,mas sempre tem alguém que gosta de se aparecer e corrigir os outro!!!! Parabéns ao dono do canal!!! Super legal parabéns!!

  • @raphaelgmu1
    @raphaelgmu1 Рік тому

    E aquelas fitinhas piratas 🏴‍☠️ que parece que a carcacinha é pelada???

  • @lgameplay7451
    @lgameplay7451 Рік тому

    Sem querer ser chato e já sendo, a pronúncia é rom e não room. Um "O" som de O e "OO" som de u.

    • @aresende001
      @aresende001 6 місяців тому

      Vlw pela dica, gosto muito desses temas de Rum de vídio gueimi

  • @ALLANOSAN
    @ALLANOSAN Рік тому +1

    Na verdade não o chip de rom da para ser gravado sim eu mesmo ja peguei muito cartucho de jogo japones vagabundo e já regravei em cima outros jogo é sim eu tenho um gravdor de cartucho

    •  Рік тому

      E aí, isso só é possível se o cartucho tiver uma eprom ou algum tipo de flash, porém os cartuchos originais de Snes e Mega tem maskroms, das quais só é possível ler. Valeu.....

  • @RafaelBernardo
    @RafaelBernardo Рік тому

    Fale mais "Voltagem" não...

    •  Рік тому +1

      E aí Rafael, qual é o termo correto?

  • @germanwolfgames
    @germanwolfgames Рік тому +2

    aja miolo

    •  Рік тому +1

      Obrigado pela mensagem...

  • @brazilforreal1
    @brazilforreal1 Рік тому +2

    Rum é uma bebida , o nome é ROM, se pronuncia como se escreve, com "O" e não "u"

    •  Рік тому

      Sim, eu dei uma bugada no vídeo. Às vezes sai Rum.

  • @sonicblue9696
    @sonicblue9696 Рік тому +1

    Cartucho sai mais caro que um CD

  • @CarecaRetrogamer
    @CarecaRetrogamer Рік тому +1

    Opa!
    SHVC-A2LJ-0
    O game é "Bounty Sword", pro Super Famicom.
    SHVC-ACKJ-0
    O jogo é "Go go Ackman" pro Super Famicom
    Um abraço!

    • @papelhigienico1374
      @papelhigienico1374 Рік тому +1

      Snes rodaria - mas mega drove jamais rodaria pois tem pouca paleta de cores

    • @CarecaRetrogamer
      @CarecaRetrogamer Рік тому +1

      @@papelhigienico1374 Opa, tudo bem? Mas do que vc está falando, amigo?
      Eu apenas coloquei quais eram os games mostrados no vídeo, baseado na info do chip dos mesmos... Acho que vc errou e comentou no video errado! Mas tamo junto mesmo assim!

  • @charllissouza3678
    @charllissouza3678 7 місяців тому

    Legal !