ZX Review #11-12
26 ноября 1997

Forum - Unprotect Microprotector'a.

<b>Forum</b> - Unprotect Microprotector'a.
    Removing MICROPROTECTOR'a


   I'm sure many met
with this protection. In recent years, 'MP' has acquired 
extraordinary popularity among the firms that sell SOFT'om for 
the Spectrum. 

   We have accumulated a decent
number of disks that are protected
with 'MP' (we are talking about
7.0). As further
tolerate such did not want (you can not make a backup copy, you 
can not restore a disk, You can not run an emulator ...), had 
to study this issue. Thus, for beginning - the essence of 
protection. 


   MICROPROTECTOR put to
any track CD: 0-th,
160-th or the last file on the disk and allows you to protect 
BASIC-files (or all by choice) from being copied. 
MICROPROTECTOR works on the principle IBMovskih DIR-virus: it 
changes the initial track and sector beysikprogrammy (as well 
as its length) at their own. The first sector to be protected

BASIC CORF. These program options are also encoded and written 
to the selected track. There is also itself 'MP'. Constants are 
recorded in the coding gap between sectors on the same track.


   Ie under the names of protected
programs hiding mikroprotektor.

   Thus, working on
the principle of secondary loader'a,
'MP' is loaded instead of the program, a read command reads a 
constant track ksorok, Download this BASIC, rasksorivaet it and 
run. 

   Next unsuspecting program starts
as usual.

   Copying a disc
standard tools of any good does not.

   The same results when trying to
Recovery can not read the disk, if it exists 'MP': constants 
are destroyed and irrevocably lost drive. 

   An emulator 'MP' is reset - no UKV Spectrum Debugger,
nor Z80TRDOS can not read track team read the track ...

   But not all that bad. There is a wonderful program
to copy such discs - copyist 'McDONALD-2'.
(BTW, anyone knows it
authors??)

   For a copy of the disc
just copy it in any potrekovaya copiers, and
then a separate copy track
with 'MP' with 'McDONALD'a.

   There is another way -
remove the protection. This can be easily
done under the 'STS'om: download
BASIC through MERGE, trassiruete
code from the address 23884, until you see the following 
sequence: 140.


        PUSH IX

        NOP

        NOP

        NOP

        NOP

        EI

        JP # 3D2F
2
then write (memorize)
8 bytes from address 23781 (these are real data about the 
program) and writes one sector to address 23867 (early BASIC) 
to those sector and track addresses that are listed in 
23787/23788. 

   Everything! It only remains for
disk-doctor in the file header
(The one with which we actually
and removes protection) instead of being there 8 (7, excluding
file type - it is always BASIC)
bytes (total length of BASIC, the length of
without variables, volume in sectors, the initial track and 
sector) indicate previously recorded.


   After all of this on a disk
will be absolutely normal
program, which freely copied not only in potrekovaya,
but also in per file mode.

   Thus, we have removed the protection from multiple disk 
drives. But when his turn came to drive on which was about 40 
system programs that are protected MICROPROTECTOR'om ...


   In short, we write
small program, which
she does it all.

   In the process of its testing
somehow seamlessly transferred all
protected discs and went missing from the incentive to do a 
small procedure, serious program (as was conceived before) to 
remove 'MP'.


   That the program did not
disappeared without cause, we decided to
send it to the ZX-REVIEW.

   Here is its text:
140.

        ORG 48000
;*****************************
; ANTIMICROPROTECTOR
;*****************************
; Written by Max from 'CYBERAX SOFTWARE'
3; on 15.08.97, Kemerovo.
;
START LD (STK), SP; saved stack.

        LD HL, (23613)

        LD E, (HL)

        INC HL

        LD D, (HL)

        LD (OBR +1), DE; also retained.
MAIN LD SP, (STK); the main loop.
CUR_NAM LD HL, NAMES

               ; In HL - the current file name.

        LD A, (HL)

        INC A

        JP Z, END; if the names are gone.

        LD DE, 23773

        LD BC, 8

        LDIR; throws in the title.

        LD (CUR_NAM +1), HL

        LD A, "B"

        LD (DE), A
;----------------------------------------; HERE CAN BE DONE 
SIGNAL ; To insert a source disk

;----------------------------------------
        LD C, 10

        CALL # 3D13; looking for this file.

        LD A, C

        CP 255

        JP Z, END

        LD (NUM +1), A

        XOR A

        LD (23824), A

        LD (23801), A

        LD C, 14

        CALL # 3D13; read the BASIC.

        LD HL, 23912

        LD DE, # DE00

        LD BC, 768

        LDIR; throw microprotector there

             , Where it should work.

        DI

        CALL DECODE

        DEFW # DE00

        DEFB 21

        CALL DECODE

        DEFW # DE15

        DEFB 24

        CALL DECODE

        DEFW # DE2D

        DEFB 30

        CALL DECODE

        DEFW 57171

        DEFB 38

        CALL DECODE

        DEFW 57405

        DEFB 30
; All five ksorok passed!
CONT10 LD SP, TABLE

        LD A, 4
CLEAR POP DE

        POP HL

        AND A

        SBC HL, DE

        LD B, H

        LD C, L

        LD H, D

        LD L, E

        INC DE

        LD (HL), 0

        LDIR

        DEC A

        JP NZ, CLEAR
; Well here, removed the trash ...

        LD SP, (STK)

        LD HL, 23814

        LD (57219), HL

        LD HL, 57501

        LD (HL), 195; set point

        INC HL; stop.

        LD DE, CONT

        LD (HL), E

        INC HL

        LD (HL), D

        JP 56900; run it all.
CONT IM 1

        EI
;----------------------------------------; HERE you can insert 
a Changes the disc ;---------------------------------------- 
NUM LD A, 0 

        LD C, 9

        CALL # 3D13; modify the title.

        LD DE, (23787)

        LD BC, # 0106

        LD HL, 23867

        CALL # 3D13; write rasksorenny

          And the first sector BASIC place.

        JP MAIN; the beginning.

END LD SP, (STK)

        LD HL, (23613)
OBR LD DE, 0

        LD (HL), E

        INC HL

        LD (HL), D

        RST 8

        DEFB 255

DECODE POP HL; most important podprog
        LD E, (HL); Ramm: engaged

        INC HL; passage ksorok.

        LD D, (HL)

        INC HL

        LD C, (HL)

        INC HL

        PUSH HL

        LD B, 0

        EX DE, HL

        PUSH HL

        PUSH BC

        DEC C

        DEC C

        LD DE, XORKA

        LDIR

        EX DE, HL

        LD (HL), 195

        INC HL

        LD DE, POINT1

        LD (HL), E

        INC HL

        LD (HL), D

        LD A, (REG)

        LD R, A

        JP XORKA
POINT1 POP BC

        POP HL

        LD DE, XORKA

        LDIR

        EX DE, HL

        LD (HL), 195

        INC HL

        LD DE, POINT2

        LD (HL), E

        INC HL

        LD (HL), D

        LD A, (REG)

        LD R, A

        JP XORKA
POINT2 LD A, R

        RLCA

        SUB 8

        RRCA

        LD (REG), A

        RET

NAMES DEFM "GAME1"; here are

        DEFM "GAME2"; names unsealed

        DEFM "GAME3"; BASIC files.

        DEFB 255; end mark.

REG DEFB 0; all sorts of variables ...
STK DEFW 0

TABLE DEFW 56832,56906

        DEFW 57171,57208

        DEFW 57406,57434

        DEFW 57511,57546

XORKA DEFB 0; ksorki moved here.
2

   Now the owner's manual.

   1) Assembliruete this program you with the right name (what 
name you want, you find out more).


   2) gives CLEAR 47999.

   3) Insert a secure disk.

   4) RANDOMIZE USR 48000.

   Starts fidgeting on the disk drive heads, blinking border, 
appears a bit of garbage in screen. Stay cool

and wait until the end of this process.

   After this protection is removed.

   True, he 'MP' on the disk all
will remain, but it is absolutely
harmless.

   Now the details. You may have noticed in Listing comments 
relating to the disc is changed. Here's the thing: the program 
records the removal of the patch to the same disc, and if it 
suddenly messed up - for example, mikroprotektor another 
version (I am, however, these are not met, but ...) or you

pointed out the name of an insecure program, or something else, 
the drive may be corrupted.


   So either copy the disc
McDONALD'om snimatel and run on it or organize
requests to change the disk (in this
case before launching ANTI_MP
need to copy potrekovaya
Secure the drive to another, and
This insert another disc to
demands of the program).

   There is a third way in which
I used: take the risk, and all
operation of "cutting" to hold one disc (until failure
was not yet ...)

   Now the most important thing: how do you know that the disk 
is mikroprotektor rather than anything else. 

   Firstly, when you start BASIC, head drive, or going
160-th track, or at the end
disk, or remains on the 0-th (it
depends on the track, which was established 'MP').

   Secondly, the drive at the same time
while spinning at a track (mikroprotektor reads the track). 
There is a characteristic blinking white border color and 
clicks. 

   The third - an attempt to start
copy of the program on another drive
resets.

   And finally, the most important
sign - the length of the BASIC file is 762 bytes, ie
3-m sector. I can still recommend a look at diskdoktorom 
initial track a suspicious file. If it is 0-th or 160 th, this 
is yet another confirmation. 

   True, it may happen that
protection is hidden in the free area of ​​the disk, but I have 
such options had not yet occurred. 

   That's all. Maybe living creature of the readers will take 
REVIEW and make ANTIMP more serious program - we are only

welcome.







Other articles:

Authoring - S. Zonov, A. Larchenko. On the controller SMUC (HDD IBM and peripherals).

Computer novella - Warriors Stars (the game Shadowfire).

New Programs - Overview of Digital Studio v1.12, Digital Studio Compiler v1.01

New Programs - Xas Review editor-assembler 128K (v5.05).

New Programs - Review of Musical Instrument v3.01 editor

New Programs - Overview of programs and FASTzasm @-zasm.

New Programs - Overview of No Kempston.

professional approach - Algorithms for the construction and transmission of labyrinths.

laugh for no reason ... - Proceedings of the humor magazine SpectrofUn.

Expert Tips - Game FEUD.

Expert Tips - Game Killed Until Dead.

Expert Tips - Game War in Middle Earth.

Forum - Conversion of Spectrum color images at IBM. Conversion of B / W images from IBM's ZX Spectrum.

Forum - On the Russification of game programs.

Forum - The program detector emulator.

Forum - A procedure with colored stripes on the curb. " Noise Reduction FDD.

Forum - The transfer numbers in decimal form. Procedure - scanner password.

Forum - Unprotect Microprotector'a.

Forum - Emulators, which we choose: 'UKV Spectrum Debugger', 'Z80TRDOS'.

reader-reader - Driver input in serial mode and direct access from the files of TR-DOS.

Studies - Graphic effect "Plasma 2.

Studies - Graphic effect "Plasma 2.

Studies - Graphic effect "plasma".

Studies - Useful tips. Rapid transfer of your screen.

Studies - remake of the procedures in 1993.

Studies - The effect of "flame".


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

Similar articles:
ZX-Net - A list of the owners of modems in Minsk, Bobruisk, Brest.

В этот день...   21 November