ZX Power #04
09 января 2000

Likbez - RESTORATION OF GAME # 3. The final article.

<b>Likbez</b> - RESTORATION OF GAME # 3. The final article.
REHABILITATION PROGRAMS


             Part 3

(C) 1996-99, Alexander Desyatnichenko
__________________________________________


   Restoring the game regularly natykaeshsya to the sources, 
which is very difficult find the starting address - the program 
is bad readable, scattered pieces of the entire memory, mixed 
in with boxes, graphics, texts, etc. Now I will describe a 
method by which you can almost always find the beginning of the 
program. 

   To do this, run the STS and download it to your entire game 
- from 16,384 65535. If necessary, have to decompress all the 
blocks and put on a place that part of the program, which

should be placed in the addresses of 23,296 on
25000, do not forget just before this move a resident of the 
monitor to free space in the display area, approximately area 
20000. In other words, you must post game so that it was fully 
ready to launch the usual procedure of the registers. Now find 
this very procedure, it is always in the screen and begins: LD 
SP, (16384). Address may be different, but He is also sure to 
be within the screen, after that line go numerous POP, then the 
definition of IM 1/IM 2 and, finally, RET. 

   An example of such a procedure I cited earlier in this 
article. Install software counter to this initial line, and 
pressing SHIFT + Z, step by step, do this

procedure. What gives? First, "remember" the stack, then out of 
it will retrieve the values ​​of registers at the time of 
breaking games and you will be able to observe these values. 
Then look carefully at the cursor and determine which interrupt 
mode was installed at the time of burglary and, finally, most 
importantly - on the team you RET tumbled into the game code 
itself - just at the a place where it was stopped

click multifeysa! What more do you want?

   Moving from this point up the program, you will find in any 
of its beginning, the more than that now know, for example, 
were recorded anything in IY, where the default usually 23,610, 
does IM 2 and etc. Look again at the address where you

now set the stack and check for
Is there any addresses some interesting ...

   Now a few words about the games with loadable levels. So, if 
you tried to pass through STRIDER, then, of course,

stuck on the last (fifth) level. More
that - even with the downloaded Internet'a source has the same 
glitch. When you restore it turned out that one of the three 
blocks of this level was discharged the desired length, but ... 
the wrong address! Perhaps the mistake was allowed even the 
manufacturer, at least a working version of the game to me

does not fit. Download this unit in the game and
unloaded it, as expected, was all
put into place and, finally,
give the user the full version
games, including picture and music to 128K,
taken from an Internet source.

   By the way, efficiency levels can be
try to check immediately. For this
"Slips" game instead of the first level,
say, third or fifth. In most
number of cases will be, if not, then
have to deal with the internal system variables of the game and 
make the necessary changes in order to convince the game that 
it has what you need. Reviewing the way the whole program, we 
can now collect it in a bunch, immortalize, to write intro, 
etc. By the way, anyone interested, read the note to the SHADOW 
DANCER, where MAX IWAMOTO leads the whole epic of the work on

restoration of levels to screw up this toy.

   And there are games written in languages
High-level, which, if not strange,
also someone threw Magico. For example,
well known to you adventyura TELLYWISE,

 (Actually, in our opinion "TELLYWISE"
is not adventyuroy and television
manager, of course, if it is not any other game of the same 
name ... - Ed.) 

Made almost entirely in BASIC. Such games have to decompress, 
to load and unload the STS BASIC guise codes. Then rename the 
file extension, download this file, as in BASIC normal mode, 
and find the line to automatically run again to unload, as 
normal beysikovskuyu program.


   You, of course, well known and numerous games of SHOW 
BROTHERS (ATLANTIS SOFTWARE). This, for example, HEARTBROKEN, 
SUPERKID 1'2, IRON SOLDIER, SEA HAWK, CAVEMANIA, DOWN TOWN, 
KOSMOS, etc. They also were not made in assembly, and whether 
at some high-level language, followed by compilation, either 
through a membrane to create games. Moreover, the games are 
written in such a way, turning to the system variables and, if 
there is not something that was in the writing of these games, 
then in during the game, all sorts of bugs

type of dwelling on level ground, hovering in the air, bullets 
and more. 

   How do I restore these games? For this
need to find a game of unrecovered
mates, for example, SEA HAWK and take
her a piece of 23,552, 203. Then this piece
povstavlyat all these games,
ukompressirovav it together with the whole game
or making LDIR to this place. Unfortunately, many of these 
games have already been lost. 

   User to see glitches, thinks
game spoiled and erases it. Once upon a time I had the game 
INTERALIA 1990 from SHOW BROTHERS, and now I'm looking for it to

recover and I can not find anywhere.

   Often the cause of inoperability
programs on different types of computers can be and the 
computer itself. For example, many game companies HEWSON 
(ELIMINATOR, EXOLON, CYBERNOID, BATTLE VALEY, etc.) to 
determine the amount of memory to obrashayutsya ROM, having in 
mind that for 48K and 128K of ROM used different, but by 
checking the contents of some single-cell ROM, this check will 
return erroneous result, unless the ROM stitched

outside the box. Here is an example of the game BATTLE
VALLEY:


           45269 LD A, (14446)

           45272 CP # FF

           45274 JR NZ, 45281

           45276 LD A, # 01

           45278 LD (61297), A

           45281 ...


   As you can see, checked cell 14446, and
if you have a non-standard ROM, the game will go only in the 
mode of 128K. In this case should be corrected in the text

programs to be inspected at ROM and
any cell of the system variables
For example, 23388. In this cell, as we know, # 00 when 48K and 
# 10, if you have a 128K (If you are, of course, did not change 
this value shift memory pages of BASIC or, say, placing it 
unpacker). 

   Approximately the same reason prevents a 128K
play music for AY programs ACTION
FIGHTER and LITTLE PUFF. An interesting effect
observed in the "Leningrad" at startup
Games SERGEANT SEYMOUR ROBOTCOP - game menu appears, made bungle
font. Zaterev a couple of "left" OUT'ov at the beginning of the 
program, you can make it decent work on any machine.


   Chastenko faced with
polling the keyboard, when, after IN A, (C)
there is a check by not setting the bits, and check on the 
specific value type CP # nn. Naturally, on the company's 
problems with a wheelbarrow This will not, but our avoidance of

battery can get anything you want,
because together with the necessary bit can
toggle and a couple of "little other". Naturally, the game in 
this case or would not respond to keyboard as ABU SIMBEL 
PROFANATION, or perform any action you like, but not then what 
you need. Alteration of such a survey on the keyboard bit at a 
time type checking BIT n, A solves all problems.


   And now let me make one small recommendation, it does not 
concern how many threads recovery, many topics

modernization of games. Is not it true, it is sometimes 
annoying when the good and not very old toys, all the 
inscriptions (including the main menu) displays the usual, 
ROM-shnym font. Comes to mind is the idea that

Is it so difficult to use if
not a single font, but at least thicken
one in the ROM, because it is so simple and requires only two 
extra bytes in subroutine print. Mezhdu second and third row 
standard 


                LD B, 8

                LD A, (HL)

                LD (DE), A

                INC HL

you just need to insert the RRA and the OR (HL). So
way for one time with the restoration of
can improve the design and if the game is, of course, would 
make such a box, and does not carry the inscription, for 
example, by RST # 10.


   And the last time. Beginning with the first
rooms and even print media rose
question of the so-called port # FF, thanks to which most 
machines were not working DUET, SHORT CIRCUIT, RENEGADE and 
etc., as a general ARCANOID sat dully revive it offered only by

technical revision of the computer. Intrigued, I dug into this 
very ARCANOID and found the following point:



               LOOP DI

               IN BC, # 28FF

               IN A, (C)

               INC A

               JR Z, LOOP


   Replacing it is the case for the fragment


               LD BC, 2580

               LOOP DEC BC

               LD A, B

               OR C

               JR NZ, LOOP

not only managed to run the game, but also to regulate flight 
speed of the ball, changing the initial value in register Sun 
decelerating cycle. 

   There were many versions of why it was
should be done in the Spectrum this same port
# FF and some of it good. Bulk
reasoning boiled down to this port
was needed in order to better synchronize the movement of 
objects on the screen accordance with the progress of the ray 
picture tube. AND Now, recently, found in the same internet'e 
curious document that the port # FF was designed to protect 
computers from the manufacturer themselves pirated fakes. 
Sinclair Research sent to the address major manufacturers of 
software, in the above privacy OCEAN and IMAGINE, a secret 
request use port # FF in its programs,

as well as all necessary information about the
port. In 1996, the year when the computer started to officially 
produce and others firms, there were problems with the old 
software, which used port # FF. Firms IMAGINE OCEAN and 
apologized (!) users to new machines and released remixes of 
their old games, but without the use of this ill-fated Port. So 
there were games ARCANOID 128K, SHORT CIRCUIT 128K, etc. 

   On this pleasant note, I, perhaps, to finish this article, I 
hope you have found here at least something interesting and 
useful for themselves. If so - then the supplied objective is 
achieved, and I'll be happy to write for you are many items of 
this style. Gratefully accept any feedback and criticism at all 
of what I'll laden pages ZX-Power, please email the publisher. 
__________________________________________ 




Other articles:

Authors - The authors of the journal and editorial contacts.

Entry - Welcome and opening remarks.

Entry - Describes the features of the shell.

Entry - Content.

Game room - GLADIATOR. Analysis fightingovoy interesting game.

Game room - BARD-S TALE. Sequel to "storm" classic RPG.

Game room - SUPAPLEX. Presentation of the Kharkov boulder dash-eobraznoy game.

Game room - SNAKE Presentation written in Kharkov nondeterministic games.

Game room - SNAKE-HELP1. Tips for playing Snake.

Game room - SNAKE-HELP2. Principles of the game and the story of creation.

Game room - SOLDIERS. The story of the author that he created a strategic game.

Game room - The Ship. Information about the new strategic project.

Game room - BRAIN PRESSURE. A story about a new puzzle game.

Game room - PSEVDOSHASHKI. Another logical game.

Interview - Interview with the creators of the acclaimed game Mirror Group ART WORK.

Interview - An Interview with DEMIURGE ASH.

Interview - An Interview with MIDISOFT / EM.

Interview - An interview with ENERGY MINDS.

Interview - X-PROmotion. XPJ story about a trip to Donetsk.

Interview - SSG-99. The story took place in Sevastopol on the Party

Interview - An interview with a group of Feodosia - X-THEME.

Likbez - RESTORATION OF GAME # 3. The final article.

Likbez - algorithms for fast 3D-graphics № 2. Additions and comments.

Likbez - CHEATS & POKES. The last two parts of the cycle.

Room with laughter - ABM system administrators. A selection of jokes.

Room with laughter - HOW TO MAKE A JOURNAL. Tips 'experts'

Room with laughter - HAMLET # 1. The first part of the new version of the immortal tragedy.

Room with laughter - WHITE PENGUIN. Antinovella on a well-known game.

melomania - Music lovers # 2. The second issue of the music category.

melomania - Album Review. Review of heavy-metal CD for the 98/99 years.

melomania - VOODOO (Russian) Translation of the album King Diamond-98.

melomania - VOODOO (English) The original text of the album.

Review - NOVE? .. Arguments on the subject of fresh software, a list of new games.

Review - Review of recent electronic journals for the ZX Spectrum.

Review - GAMES. Familiarity with the latest gaming software: Kozel, hunting moles, White Eagle, Leprikon, 1912 a secret book, King, CHIF, Raven Black - new missions.

Around the World - Intel: the skeptics wrong again?

Around the World - New cars Silicon Graphics: PC or workstation?

Around the World - News from the MacWorld Expo.

Miscellaneous - OUR beggary. Essay on Chekhov.

Miscellaneous - ROLE PLAYING GAMES. The history of role-playing games.

Miscellaneous - CHAMPIONSHIP snakes. New competition.

Miscellaneous - AGAIN AY. An article about the correction of sounding music. coprocessor.

Miscellaneous - ADVERTISING.

Miscellaneous - COMPETITION.

Desktop - DIGITAL SOUND EDITOR. The presentation of digital audio editor.

Desktop - NEOS. The story about the new operating system for the Spectrum.

Desktop - INTERMINAL. The new terminal program.

Teverna - the first installment, devoted to the game program: the concept of the game "Tavern."

Mail - Letters from readers.


Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Similar articles:
Assembler - Circles on the water: The algorithms simulate the effect of a well-known on other platforms, called "ripples."
Topic - A Conversation with Justinas'a SerzhSoft'om of Shadrinsk and Firex'om / Mayhem from Tula proizoschedshaya on Chaos Construction 2000.
military enlistment office - how to avoid conscription.

В этот день...   30 April