VERSÃO EM PORTUGUÊS

Sonic the Hedgehog
Hacking Guide (US version)

Using a hexadecimal editor is possible to modify the game, publishing it byte to byte. Knowing where it is each instruction and altering it correctly you can personalize the game. You can draw other character in the place of Sonic but this is not easy since it gets that if fact point to point.. To alter the name of the levels in the level select menu and in I title it of the levels. But to program the game it is necessary that he is in the binary format, it is not very difficult to convert the game for binary, you can use a conversion program or emulative Genecyst that it gets the option DUMP ROM, that makes the conversion.

LEVEL SELECT MENU

The Level Select Menu of Sonic 1 uses a format of plane text of 26 characterses for line. all the lines can be typed texts of up to 26 characterses besides the lines that show only STAGE 2 and 3. THE first space begins in the letter G of the word GREEN HILL and the last space finishes in I number it 1 of STAGE 1, the first space begins where it finishes the space of the first line and like this until the end of the screen of level select. see the list of the levels and the respective addresses below in the editor hexadecimal. Obs: In the editor you will see addresses for example in hexadecimal in the following format 000035B9. But in the page you will see that same address represented by 3B59. 
LEVEL

ADDRESS

GREEN HILL  ZONE             STAGE 1

35A2 to 35B9

STAGE 2

35BA to 35D1

STAGE 3

35D2 to 35E9

LABYRINTH  ZONE             STAGE 1

35EA to 3601

STAGE 2

3602 to 3619

STAGE 3

361A to 3631

MARBLE ZONE                     STAGE 1

3632 to 3649

STAGE 2

364A to 3661

STAGE 3

3662 to 3679

STAR LIGHT ZONE              STAGE 1

367A to 3691

STAGE 2

3692 to 36A9

STAGE 3

36AA to 36C1

SPRING YARD ZONE           STAGE 1

36C2 to 36D9

STAGE 2

36DA to 36F1

STAGE 3

36F2 to 3709

SCRAP BRAIN ZONE           STAGE 1

370A to 3721

STAGE 2

3722 to 3739

STAGE 3

373A to 3751

FINAL ZONE 

3752 to 3769
SPECIAL STAGE 376A to 3781
SOUND TEST 3782 to 3799

The name of the levels uses a group of characterses NO-ASCII. It is necessary to know the equivalence of the letters to modify the name. Observe the table below and modify the names. Run the game and go to the level select menu and see the names that you placed.
00 = 0 01 = 1 02 = 2 03 = 3 04 = 4
05 = 5 06 = 6 07 = 7 08 = 8 09 = 9
0A = $ 0B = - 0C = = 0D = <- 0E = <-
0F = Y 10 = Z 11 = A 12 = B 13 = C
14 = D 15 = E 16 = F 17 = G 18 = H
19 = I 1A = J 1B = K 1C = L 1D = M
1E = N 1F = O 20 = P 21 = Q 22 = R
23 = S 24 = T 25 = U 26 = V 27 = W
28 = X FF =        

Title Cards

You can also alter Title Cards. But unlike the menu of selection of phases it exists restrictions with relationship to the number of characterses that it can place. There is also something interesting in Title Cards Fonts the letters don't exist J-Q-V-W-X, that is to say words that use these letters cannot be used. Title Cards modification is not also very simple because you will have to specify them it distances of the letters so that these they are not put upon. But it doesn't despair it views the table of characterses used in Title Cards below and soon soon after an explanation of as to modify the texts without problems.

TABLE WITH THE FONTS OF THE TITLE CARDS

05-00-00 = A 05-00-22 = K 05-00-46 = U
05-00-04 = B 05-00-26 = L 05-00-4A = Y
05-00-09 = C 05-00-2A = M 05-00-4E = Z
05-00-0C = D 05-00-2E = N 00-00-52 = .
05-00-10 = E 05-00-32 = O 0C-00-53 = act
05-00-14 = F 05-00-36 = P 02-00-57 = 1
05-00-18 = G 05-00-3A = R 06-00-5A = 2
05-00-1C = H 05-00-3E = S 06-00-60 = 3
01-00-20 = I 05-00-42 = T 00-00-56=( blank )

    Now sees as the programming of the names of the levels works. Observe the image of the editor hexadecimal below. The editor hexadecimal used was Hexpose, you can use any editor of its preference, I use this editor because you can create a file source for him, that is to say instead of him to show it the values in standard ASCII he will show it the text based on the supplied font. Observe the illustration below:

For you to understand as it works I highlighted some instructions with differentiated colors, notice that joining the letters, that are highlighted on the right side of the program you set up the name of the levels. Now see as it works the instructions. Each letter in the screen uses 5 bytes to be shown it Observes: F8-05-00-3A-CA. The 1st. byte (F8) it indicates the vertical position (YY) of the letter in the screen, this byte won't usually be necessary to modify. Of the 2nd. at the 4th. byte (05-00-3A) they are the bytes that indicate that letter should be shown in the screen in the case it would be the letter " R ". THE 5th. byte (CA) it indicates the horizontal position (XX) in the screen, this is one of the most important bytes because it is him who determines the spaces of the letters and in case it is not placed the letters correctly they will be put upon, but this is not very difficult, since the space entity a letter and another is of 10h (it observes below in the illustration the byte that follows the numbers in yellow and notice that increase of 10h in 10h) this measured it is the same used in the composed words, but as every rule it gets exception for 1st. letter that be typed after the letter " I " uses a smaller space that is to say 8h. you can use the standard space 10h, but in the hour in that the text be exhibited you will see that the letter that the " I " happens will be far. Pay a lot of attention in the 5 bytes in the moment in that is publishing the name of a level that they say the letter " I " because if you don't increase the space among the letters, these will be put upon. The only restrictions are: 1st. The limit of letters for phases is it I number of letters of the current phase, 2nd. you cannot write words that use the letters " J ", Q ", V ", W ", X ", because these letters don't exist in the font of the Title Cards . See the location of each text and make its alterations. 

TEXT

ADDRESS
GREEN HILL C9FE to CA2B
LABYRINTH CA2C to CA59
MARBLE CA5A to CA79
STAR LIGHT CA7A to CAA7
SPRING YARD CAA8 to CADA
SCRAP BRAIN CADB to CB0E
FINAL CB8B to CBA3
ZONE CB0F to CB24
SONIC HAS PASSED CBEA to CC31
CHAOS EMERALD CCAD to CCE8
SPECIAL STAGE CD6C to CDA7
SONIC GOT THEM ALL CDA8 to CDF3

SEE THE NAME BELOW OF SOME LEVELS THAT I MODIFIED

The level to the side is modified SCRAP BRAIN.
The level to the side is modified SPRING YARD
Obs: In the byte of caractere spacing the left song of the screen is 80h and I sing right it is 7Fh. That is to say a possible text can be written with space of 80h, 90h, A0h, B0h, C0h, D0h, E0h, F0h, 00h, 10h, 20h, 30h, 40h, 50h, 60h, 70h. This would be the spaces that you would place in the letters case he wanted to begin of the I begin of the screen  
   

 

Configuration of exhibition of the  Title Cards.

This area of the game says to the game as it should be exhibited the titles of initialization of the game, that is to say position in the screen through where to enter or to leave. Each level uses 16 bytes for configuration of the Title Cards. As example I the bytes that configure the text of the phase Green Hill that is will diffuse: 00000120FEFC013C0414015402140154. Now I understand what those bytes mean. the first 4 bytes, that is to say, 00-00-01-20 are of the text of the level, in the example GREEN HILL, of the 5th. at the 8th. bytes, that is to say, FE-FC-01-3C are the bytes of the text ZONE, of the 9th. at the 12th. byte, that is to say, 04-14-01-54 are the bytes of " ACT x " (x is it I number of the level), and last, that is to say, 02-14-01-54 are the bytes of the plan of fund blue of the titles (That inclined oval ball that appears behind the text " ACT x "). Tends the information above we can still separate the bytes in groups of two, All the groups they will have the same effect. The group of the name of the phase that is 00-00-01-20 will diffuse, the first 2 bytes, that is to say, 00-00 indicate the position of entrance of the text in the screen, the last two bytes, that is to say, 01-20 indicate the horizontal position of the text in the screen, in these bytes he generally increases of 10h in 10h, This configuration is worth for the whole group of bytes of the level that is to say the first and the second group of 2 bytes will always make the same effect of the explained above. See the editor's illustration and soon I lower the list of the levels and its corresponding address.

LEVEL

ADDRESS

GREEN HILL

C448 to C457

LABYRINTH C458 to C467
MARBLE C468 to C477
STAR LIGHT C478 to C487
SPRING YARD C488 to C497
SCRAP BRAIN C498 to C4A7
FINAL C4A8 to C4B7

Enable the sentence " PRESS START BUTTON " in the screen title. For that with an editor hexadecimal changes the byte of 02 for 00. In agreement with its version of the game the bytes are in local different, See the possible locations below . 

VERSION ADDRESS
AMERICAN 17271
JAPANESE 17A1D

Done this run the game and see to appear the message "PRESS START BUTTON"

See the message PRESS START BUTTON in the screen title

CREDITS AND INITIAL SCREEN

This part is very interesting because you can publish all the credits of the game. Besides the initial  screen "SONIC TEAM PRESENTS".

TEXT ADDRESS

SONIC TEAM STAFF

172F8 to 1733E

GAME PLAN  CAROL YAS 1733F to 1738F 
PROGRAM YU 2 17390 to 173C2
CHARACTER DESIGN BIGISLAND 173C3 to 1743B
DESIGN JINYA PHENIX RIE 1743C to 174A0
SOUND PRODUCE MASATO NAKAMURA 174A1 to 17523
SOUND PROGRAM JIMITA MACKY 17524 to 17597
SPECIAL TANKS FUJIO MINEGISHI PAPA 17598 to 17633
PRESENTED BY SEGA 17634 to 1767F
TRY AGAIN 17680 to 176A8

SONIC TEAM PRESENTS

176A9 to 176FE

See the font of the credits 

(absent letters: Q, V, W, X, Z)

05-00-04 = A 05-00-3A = H 05-00-12 = P
05-00-48 = B 01-00-46 = I 05-00-22 = R
05-00-1E = C 05-00-4C = J 05-00-2E = S
05-00-42 = D 05-00-58 = K 05-00-3E = T
05-00-54 = D 05-00-16 = L 05-00-32 = U
05-00-0E = E 09-00-08 = M 00-00-2A = Y
05-00-5C = F 05-00-1A = N 0C-00-36 = 2
05-00-00 = G 05-00-26 = O  

The exhibition configuration is similar to it of the title cards. former: 11-E8-05-00-3E-B4 
where the first byte indicates the number of characterses they be she exhibited in the screen. The second byte indicates the vertical position in the screen. Of the third at the fifth are properly the letters said. The last indicates the horizontal position in the screen, it is this byte that defines the spacing between a letter and other .

MUSIC Of THE LEVELS

You can also choose the music to be played in the levels. The format is of just a byte for level and it is very simple. To place another music of its preference, play the sounds in the sound test, write down the number of the music and place in the byte that represents the chosen level . See below in the table the location of the selection of music. Also observe that for the correct operation will be necessary to alter the bytes in the three addresses listed below. The levels listed with (----) they Use only the striped addresses and they don't need of more than one or two changes to work. The level Labirinth and Scrap Brain 3 needs the alteration in the 3 addresses listed below for they work correctly.

Level Music Address 1 Address 2 Address 3

GREEN HILL

81 379A 12CC8 ------
LABIRINTH 82 379B 12CC9 14099

 MARBLE

83 379C 12CCA ------
STAR LIGHT 84 379D 12CCB ------

SPRING YARD

85 379E 12CCC ------

SCRAP BRAIN

86 379F 12CCD 140A5
FINAL  8D 3780 ------- ------
SPECIAL STAGE 89 46CD ------- ------

 

TO RETURN THE PAGE INITIAL CLICK HERE