News: 11 March 2016 - Forum Rules
Current Moderators - DarkSol, KingMike, MathOnNapkins, Azkadellia, Danke

Author Topic: SMB title screen hacking  (Read 3948 times)

marc26rpg7

  • Newbie
  • *
  • Posts: 2
    • View Profile
SMB title screen hacking
« on: June 21, 2014, 06:10:03 pm »
I'm creating a ROM hack for the original SMB and I want to change the title screen I've used  SMB Title Editor but i don't understand how to save it as the word are a bunch of gibberish and the English read me is not much help. Could someone please help me with this?
( ͡° ͜ʖ ͡°)

sics

  • Sr. Member
  • ****
  • Posts: 431
  • Contact me!
    • View Profile
    • Deviantart: Terwilf
Re: SMB title screen hacking
« Reply #1 on: June 24, 2014, 03:28:41 am »
Si no puedes guardar es porque excediste el limite de datos para crear tu pantalla de títulos. Pequeña guiá.

1º El menú de acciones, ahí encontraras seis botones, los cuales son;
 1- Limpiar
 2- Visor hexadecimal
 3- Abrir
 4- Guardar
 5- paletas
 6- Abrir (?)

2º Funciones de segundo clic selección, cuenta con dos opciones;
 1- Borrar: Cuando pinchas un sector dibujado con el segundo clic lo borra.
 2- Clonar: Cuando pinchas un sector dibujado con el segundo clic copia dicho objeto (puedes pegarlo con el primer clic)

3º Grupo de Paletas utilizada: defines que grupo de paletas utilizaras en tu pantalla de titulo (son cuatro grupos, los cuales cada uno cuentan con 4 paletas diferente)

4º Área de selección pinchando cualquier cosa que veas aquí la puedes trasladar a la pantalla.

5º La pantalla (aunque es muy obvio) esta es tu "área de trabajo".


1º5 Paletas. cuando presiones el botón numero 5 podrás ver que el área 5 se cuadricula como en la segunda imagen, estos valores representan una paleta "-1" "0" "1" "2" "3" excepto "-1" que representa la ausencia de la misma (osea se carga con la paleta del nivel) quiere decir que se visualiza los colores que ya tiene asignado el sector. Para seleccionar paleta presiona segundo clic sobre cualquier parte del área de trabajo, al presionar el segundo clic veras que cambia un numero en un botón ese numero representa el numero de paleta seleccionada, cuando hagas tu selección pincha con el primer clic dentro del área de trabajo el sector que desees pintar y cambiara de paleta instantáneamente.

1º5 Para volver al modo normal presiona el botón que esta sobre el botón que cambia de numero.


4º2 Guardar: Cuando pones un gráfico en pantalla o cuando eliges una paleta estas ocupando espacio de la rom, para trabajar el programa te dejara cargar todos lo gráficos y paletas que desees, pero no puedes guardar más información de la que puede almacenar la rom.

4º2 Para guardar primero tienes que presionar el "Visor hexadecimal" botón numero dos, esto abrirá un cartel donde veras dos botones, debes presionar el primero, si cuando abres el "visor hexadecimal" aparece un cartel que te pide que lo aceptes quiere decir que excediste el espacio máximo para la escritura de la rom (Deberás borrar cosas sino no podrás guardar) cuando hallas hecho esto correctamente podrás guardar en la rom.

June 24, 2014, 03:41:32 am - (Auto Merged - Double Posts are not allowed before 7 days.)
Disculpa no se hablar ingles lo mas importante (traducción automatizada)

4 º 2 Save: When you put a graphic on the screen or when you choose a palette you are taking up space in the rom to work the program let you load all the graphics and palettes you want, but you can not save more data than it can store the rom.

4 º 2 To save you must first press the "Viewer hexadecimal" number two button, this will open a poster really two buttons, you must press the first, if when you open the "hex viewer" a sign that asks you to accept means appears that have exceeded the maximum space for writing rom (please delete things but you can not save) when you find yourself done correctly can save the rom.

Descargar: Las aplicaciones conocidas y otras no tanto de smb Hack

Descargar: YYCHR Ingles incrustado por mi
« Last Edit: November 18, 2014, 11:40:53 am by sics »
twitter | deviantart | Better a small finished project than a thousand giant ideas stuck in your system.

marc26rpg7

  • Newbie
  • *
  • Posts: 2
    • View Profile
Re: SMB title screen hacking
« Reply #2 on: June 24, 2014, 04:09:47 pm »
 yo no era capaz de salvar excede el límite de, gracias  :)
( ͡° ͜ʖ ͡°)

sics

  • Sr. Member
  • ****
  • Posts: 431
  • Contact me!
    • View Profile
    • Deviantart: Terwilf
Re: SMB title screen hacking
« Reply #3 on: June 25, 2014, 11:34:21 am »
It's not there is not much information on my application I was the same.
twitter | deviantart | Better a small finished project than a thousand giant ideas stuck in your system.

Dr. Floppy

  • Restricted Access
  • Hero Member
  • *
  • Posts: 970
  • Make America GREAT Again!
    • View Profile
    • BaddestHacks.net
Re: SMB title screen hacking
« Reply #4 on: July 04, 2014, 05:45:23 pm »
I'm creating a ROM hack for the original SMB and I want to change the title screen I've used  SMB Title Editor but i don't understand how to save it as the word are a bunch of gibberish and the English read me is not much help. Could someone please help me with this?

The bad news is that you're probably better off doing this via hex editor. The good news is that this isn't anywhere near as difficult as it seems, and your revised title screen is more than likely do-able!

One of the weird things about the SMB1 title screen is that the original programmers stored the data in CHR-ROM. This is why altering the #[EC-FF] background tiles results in a warped title screen! The compressed data strings begin at $9ED0 (in headered-ROM). SMB1 uses a mild compression format very common to NES games, wherein horizontal strings of BG tiles are assigned by virtue of identifying the target address (2 bytes), a control byte identifying how many tiles are to be written, then the ID's of the respective BG tiles themselves.

[Target Address hi-byte]-[Target Address lo-byte]-[Control Byte]:  [tile ID#] [tile ID#] [etc.]

For example, the string at $9EF4 assigns the top-portion of the word "SUPER":

Code: [Select]
20-A6-0A: D0-D1-D8-D8-DE-D1-D0-DA-DE-D1
Again, the place where the tile-string is to begin is given by the first two bytes, 20-A6. The control byte #0A tells us that it will be a horizontal string of ten bytes. Finally, the ten bytes in question are defined.

The control byte can also be modulated to create x iterations of a single tile, draw tiles in vertical strips, and/or both. If you're familiar with bitwise logic, setting d6 results in repeating tiles, and setting d7 switches the write mode from horizontal to vertical. If bitwise logic is unfamiliar, simply add $40 to the regular control byte to get repetition, add $80 to get vertical-draw, or $C0 to get both. Examples:

20-00-4A: 26 = Writes a horizontal string of ten #26-tiles, starting in the upper-left corner.
20-00-83: 15-18-15 = Writes "LOL" vertically, starting in the upper-left corner.
20-00-CA: 26 = Writes a vertical string of ten #26-tiles, starting in the upper left corner.

Oh, before I forget, here's an image identifying the PPU addresses of each line:



w7n

  • Jr. Member
  • **
  • Posts: 91
    • View Profile
Re: SMB title screen hacking
« Reply #5 on: July 06, 2014, 04:59:49 am »
RHDN down for a day huh...

Oh, before I forget, here's an image identifying the PPU addresses of each line:
Damn, although I do know about the PPU address scructure, I'd better save this image.

The bad news is that you're probably better off doing this via hex editor.
Unfortunately, the other thing about SMB title screen data storage is the palettes(attributes) of the tiles. Tile attr data starts at PPU 23xx. It's not really easy to explain tile attr data, plus it's HARD TO EDIT without a map of the screen. So I still suggest using the SMB Title Editor.

Anyway, about hex editing: the data starts at ROM $9ED0. And don't forget that such strings end with 00.

Dr. Floppy

  • Restricted Access
  • Hero Member
  • *
  • Posts: 970
  • Make America GREAT Again!
    • View Profile
    • BaddestHacks.net
Re: SMB title screen hacking
« Reply #6 on: July 07, 2014, 08:55:54 pm »
Unfortunately, the other thing about SMB title screen data storage is the palettes(attributes) of the tiles. Tile attr data starts at PPU 23xx. It's not really easy to explain tile attr data, plus it's HARD TO EDIT without a map of the screen.



As for the intrabyte/bitwise breakdown: