Echo #05
31 августа 1998

Tips Hacker - The technique of adapting programs to the system of copyright TR-DOS (hacking technique ZX-Format 8, Mortal Kombat).

<b>Tips Hacker</b> - The technique of adapting programs to the system of copyright
 TR-DOS (hacking technique ZX-Format 8, Mortal Kombat).
  The technique of adaptation of author's programs

           under a system of TR-DOS.

(C) Delta / Power Hackerz Group.


   This paper game is intended for all of hackers working on 
SPECTRUM'e. I also advise professionals, would not gaditsya 
similar articles t.k.ya also recently not respected when I was 
"taught" in various publications, but here I will discuss the 
adaptation programs, and who knows, maybe some

information will be new to you, the more I
hacker with experience and time to experience the many
pitfalls of this case.

   Let the reader does not think that I'm a pirate
No, it is erroneous informatsiya.Pirat
the man who steals from manufacturers to the same pirate is 
usually not even hacker, but an ordinary user. To the pirates, 
even More and more, if a decent

prog is not on the TR-DOS, and in some perverted form. Burglary
such a program, once a pirate kills two
rabbits: with a copy of which he can
distribute, as well as he understands that not
All users are able to use non-standard format copiers, the more 
that 80% of them complete crap. 

   Well, I expressed a little "sore", it's time to start and to 
the theory. I'll share with you the method of hacking and 
translation TR-DOS disk popular game MORTAL KOMBAT

and computer magazine ZX-FORMAT # 8. Time
hacking MORTAL-1. 5 days, and during break
ZX-FORMAT'a 4-5 hours.


   If you doubt my professionalism, we can and spisochek big 
programs cause I Vloman: 


   DOUBLE XINOX - From there I removed the protection,
set TR-DOS LOADER, as well as some
podkorektiroval KEMPSTON.


   THE SUNDREED-She was already "perelopachena" ARS'om of 
FATALiTY, resulting in it did not work on any Brest

machines. Only later earned with a terrible squeak in TR-DOS 
5.043. I'm stuck there # 3D13, though prishlo a little digging,

since there spoiling the system variables.


   ZX-FORMAT # 06 - Corporate drive brought
IMPERIO with ENLIGHT'a 97. I broke it and
adapted by TR-DOS 5. 043. Posted copyist as the saying goes 
"for himself, gave one ... and said something to him he does 
not apply, the day his whole yuzal Minsk and shouted that he 
was buggy. Note: By about glyuchnosti copyist contact

Gog (ICE / PHD).


   TECHNODROM-branded version appeared in
me from the author (by agreement). She had an entire disk, and 
had a defense (though ARS'MAST'ovskuyu). Revised became

take about 600 sectors (with all maps
and shipments) Shipping all in memory of the 128th
(48K mode is also used), and also
I was furnished the author's bug:) Personally, I
This game in Brest does not apply,
because as has been compromised for the sake of purely sporting 
interest. 


   MORTAL KOMBAT-Long time users
Brest controllers tormented because they could not pogeymatsya 
this a good game, not helped, even firmware TR-DOS v5.043. Had 
her "rape", she was transferred to the TR-DOS disk All 
transactions through # 3D13. Added mode fast loading menu 
fighters, rather handy thing. Works on any computer 
configuration, even on an emulator pisyushnom check:) The 
hardest part was adapt to the test.



   ZX-FORMAT # 8 - More recently, he appeared here in Brest, I 
turned it on TR-DOS disk, naturally all through # 3D13



   All these works are large, I do not have
here a lot of programs in which I pomenyalya not too many 
bytes, of just do a tremendous amount, even Hard to remember.


   Perhaps begin ...


        The method of data conversion.

   Previously, I believed that the translation of games in 
TR-DOS system required a lot of time and effort, as well as an 
incredible number of disks. But there is a better way:) No 
reason to sit on a program to translate all files in a standard 
TR-DOS format, and after that they stick together. If a small

game, for example TECHNODROM, all packed information (except 
cards) Freely "intermeddle" at 128K, then naturally this way 
fit. And if you have 50 articles and 20 music files? With them 
you'll dig at least a month, then you hardly pull into the 
following Krakow. Here's the method of conversion, I now 
describe. 

-----------------------------------------

   1. First you need to copy the discs, in TR-DOS.


   2. Find all feeders, and put in
They move to its own procedure.


   3. To understand the format of the disc.


   4. Leave converter and LOADER.

-----------------------------------------

   And now me more about all the options.


   Just copy the program, you must
just write your copier. I
writing copyist took about 10-15
minutes. It is worth noting that, for each bend
need to write a copyist, since such a MORTAL'e sector 
nachinayutsya with # F4 (Really) but then in a compromised 
version, of that number of consuming # F4, and each sector 
there is 512 bytes. In ZF # 8 quite another story, there are 
sectors with nachinayutsya # 6F through # 73, and the length of 
the sector is 1024 bytes.


   You probably scared so large sector? After all, 
theoretically, in comparison with the TR-DOS'om wins 1024 * 5 = 
5120/256 = 20, 20-16 = 4 sector of the track (due to small gaps 
dinny fields). You can estimate that the disk will be winning 4 
* 160 = 640/16 = 40 tracks! But The authors are human beings 
too, because they stick together its bend in the TR-DOS'e => On 
the drive, even a place should remain free. In MORTAL'e I

drew attention to it, but in FORMATE'e
had (because of the application), the whole format
(Intruha + article + all the application) is not even
falls short of the full disk, there are about 200 free sectors 
naprashivaetsya question: what the actual authors of their 
application did not score? 


   By the way here's the best procedure

       read / write (# 3D13)


   Programming is very simple:

 LOAD LD (23796), DE

        XOR A

        LD (23758), A

        LD IX, 7797

        PUSH IX

        JP 15663

 SAVE LD (23796), DE

        LD A, 255

        LD (23758), A

        LD IX, 7797

        PUSH IX

        JP 15663


   As you can see nothing complicated. Address
7797 is the address of the standard procedure for reading / 
writing, but without a team. This command (CALL xxxx) and 
spoils the entire mess, ie rides head drive back / a forward

on the track, sometimes knocking his head on the edge
track, and sometimes spoils diski.Imenno due
it we could not operate at the level of non-standard discs, 
TR-DOS Procedure 5, 6.But after removing it all OKTR-DOS you 
more do not know, amen. Everything was smooth, gently, in 
principle, such a rate the same as a conventional TR-DOS'a, but 
an opportunity to read at normal speed nonstandard sector, and 
this opens up We quite simply a great opportunity. Besides-I 
90% sure that MORTAL, SUNDRED, DB XINOX, TECHNODROM, ZX # 8 
will work on skorpovskih screws, as well as brestkih

controllers Version 5.04, 5,043.

   But this method of loading is one
"But." He does not want to work in the case
if prog actively yuzaet system variables. Have to be subverted.

            And here is the output:


        DI

        PUSH IX, IY

        PUSH HL, DE, BC

        LD IY, 23610

        LD HL, # 5C00

        LD DE, XXXX

        LD BC, 512

        LDIR

        LD HL, 10072; these variables

        EXX; need for

        LD A, # FF; of TR-DOS

        LD HL, # C9F1; after reading /

        LD (23796), HL; record

        LD (IY), A; TR-DOS to

        LD (23752), A; thoroughly

                           ; Trash.

        POP BC, DE, HL

        CALL LOAD

        POP IY, IX

        LD DE, # 5C00

        LD HL, XXXX

        LD BC, 512

        LDIR

        RET


   XXXX-this is the free memory in your computer,
it is usually not difficult to find, especially when
computer reads the disk, for example
screen. So did Kopein / NHG in UFOv2.0 and
JAGURA / PHG in UFOv2.10, when adapted
it under # 3D13. Him and I used in game
HUNDRED, there also used Region
variables.

   This method is also different yuzali Skorobogatova, 
Vasilyeva and other vulgar "Restorers" 90 years, because as a 
game These craftsmen were pohereno heap. Now

in such a perverted and head can unscrew.

   Anyway, I'm a little distracted.


   2. Once we have copied the prog
for TR-DOS disk, you need to find and alter
all downloaders. Just in the loader, put in JP # 5F00 (24320), 
usually this place before the stack, and there write the 
converter and LOADER. I will give my full procedure:



        ORG # 5F00

        PUSH IY; remember registers

        PUSH IX; for all sorts of fire

        LD IY, # 5C3A; these values

        LD A, # C9; need to fix

        LD (# 5CC2), A

        EXX

        PUSH HL

        LD HL, # 2758, also need

        EXX
LDER PUSH BC

        PUSH HL

        CALL RASS; call converter

        POP HL

        POP BC

L1 LD (# 5CF4), DE

        LD A, B; multiply by four

        ADD A, A; because length of the sector
        ADD A, A; RA 1024 bytes.

        LD B, A

        CALL LOAD; download

        LD DE, (# 5CF4)

        XOR A; recover

        EXX; crap

        POP HL; value

        EXX

        POP IX

        POP IY

        RET
RASS DEC D; in format to the first
                  ; Horns not yuzaet

        LD L, D; multiply road

        LD H, 0 to 20.

        ADD HL, HL

        ADD HL, HL

        PUSH HL

        ADD HL, HL

        ADD HL, HL

        POP BC

        ADD HL, BC

        LD B, H

        LD C, L

        LD A, E

        ADD A, A; multiply the sector on

        ADD A, A; 4 because in ZF sector

        LD C, A; occupies 1024 bytes

        LD B, 0

        ADD HL, BC; add the old

        PUSH HL; value

        LD A, L

        AND% 11110000

        LD L, A

        OR A; divide it all by 16

        RR H; without a trace.

        RR L

        RR H

        RR L

        RR H

        RR L

        RR H

        RR L

        LD D, L

        ADD HL, HL; multiplied by 16

        ADD HL, HL

        ADD HL, HL

        ADD HL, HL

        LD B, H

        LD C, L

        POP HL

        OR A

        SBC HL, BC; find balance

        LD E, L

        RET; in the original DE-

                      ; Value
LOAD XOR A
DISK LD (# 5CCE), A

        LD IX, 7797

        PUSH IX

        JP # 3D2F


   This procedure is certainly not juzat I
it led to what-have you written similar to his case. I is 
calculated by its formula, you calculate on their own.

Not even the main compactness, although in some cases it is 
absolutely necessary, there were even some cases that one byte 
is not enough:)


   The procedure can of course be reduced by
order, but for my case, it is suitable
100%. In MORTAL'e things were worse, there
I have two free bytes left (thanks to # 3D13). If it was my 
LOADER, then he held, would be a lot of memory. By the way

LOADER MORTAL'a in the old version was incorrect, hindering 
disk drives 5313, 5311 and etc.



    3. How to understand format the disk.

   There are several ways. You can for example using the 
procedure of reading the track (I have it somewhere already 
described) can be considered field blanks, and then sort out 
the data that are located there. 

   You can break the prog you want to translate, where the 
order of sector and their length is exactly.


   You can STS5.1, STS6.2 read on
sector (with 255 to 16) if nothing schityvaetsya have to use two
top ways.


    4. Leave converter and LOADER.

   Well this is you can already write, since that
the information I gave you, it is
enough for a professional burglary. Naturally requires a little 
more brains, and 99% perspiration. Since in this case there is 
mass sensitive situations with which you deal one-on-one, and I 
already will not close, something would be in a difficult moment

to give you a strong helping hand ...


   If you have any problems with the perception of the text, or 
you decide tell me something, please.



         My phone is in Brest:
8 + (0162) 41-09-12 DELTA / PHG a.k.a.Oleg.



    P.S. Who says that there are no good

    pirated versions:)


    P.P.S. What would all IMP'y hanged himself:)


    P.P.P.S. All those who runs into Hakke
    ditch - _LEYMERY_.







Other articles:

Entry - Belarussian news from the Spectrum.

Review warez'a - Overview of new products ON: The mirror, Nenther Earth +, The Mission, Fisherman, Puzzle, The Last Courier, Operation, RR, Wizard of Oz, Sexmine Sniper, Fox Hunter, Lady in Love, Aany Tank, CLV-Copier v1.0, STS v6.2, Digital Studio Record, ZASM v3.10, Sample Studio.

Review warez'a - Overview of software released in Brest in 96-97g: Compress Copy, New Copy, Real Copy, Echo 1-3, Tehcnodrom, Sprites Generator, Text Print, Text Format, Impulse 1, Code Disassembler, Cyber Dream, Password Protect Files, Installator Stealth Boot, Real Commander, Heavy on the Magic.

Razborochka - Description of the game Operation, RR

Razborochka - The format of shipment in the game Bard'S Tale.

Razborochka - A few tips on passing game Mirror (MIRROR).

Interview - An interview with the author of a series of demos "Monsters" - Inkognito Soft.

Game Project - War in Space - a new strategy game.

Programming - Driver memory.

Programming - Double permit ZX-Spectrum.

Tips Hacker - The technique of adapting programs to the system of copyright TR-DOS (hacking technique ZX-Format 8, Mortal Kombat).

Text Editors - The problems of text software on Speccy.

Iron - 122 colors on the Spectrum: FLASH generator colors for your PC "byte".

Iron - Programmable parallel interface KR580VV55A.

Technodrom-2 - The history of the game Technodrom'a.

Multiplayer - Turn-based Multiplayer with Spectrum characters.

Letters - Spektrumisty in the Mogilev region as mammoths died out.

Advertising - Advertisements and announcements ...


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

Similar articles:
Inferno - Managing zhunalom.
Obmen experience - The use of channels in the programs. Using sub-ROMs.
B.B.S. News - The work B.B.S. 'ca.

В этот день...   1 May