MODERNIZATION OF THE GAME "BLACK RAVEN-1" 512K EXPANSION (#7FFD) (C) 1998 MAX ------------------------------------------ Oh, how many wonderful discoveries we have Prepared by Slavik Mednonogov... almost like Pushkin So, as you would expect, "Black Raven" turned out to be a bestseller at the fair software market for the Spectrum platform. The hit of the season is I was. I won't be lying if I say that this is the best thing that has been done so far but on our platform in the strategy genre. But as you play, you start little by little. get angry over minor shortcomings, under- lock and glitches. Everyone who reached third level and being immediately killed by the enemy, was forced to reboot entire program to repeat or changethread of tactics and strategy of combat. When two disk drives still all right, but with one he's just a hanger... Having started to change disks, I spat on copyrights and other conventions, began to tinker with the program frame from the inside. Imagine my surprise when I saw completely free access to algorithms. A thought crossed my mind: is it really is it all that simple or did the author decide that there are three Is two scratches on the disc enough? How wrong I was! Easily find what you need places in the program, made a correction, then launched and... after 5-10 seconds everything died - lo... Great defense, nothing to say. Just cool, that's all. But I’m not writing all this for tell you how it is and what. Not at all. The purpose of this article is to familiarize yourself with my refining the game so that the needles don’t tear at nothing from nowhere, but having additional private memory via STANDARD port #7FFD, we could safely enjoy the beauty amiable combat operations in real life time. In short,if you don't have more RAM 128K via the above port, then you can you wish you didn’t read. CRITICAL RETREAT. Gentlemen programmers! Until when do you you will write programs with 128K in mind memory? Twelve years have passed since that moment how this standard was invented and seven years, as brought to its logical continuation niya in the form of 512K. Do you even have a stake on your head? be quiet, it doesn't matter. We're tired of these excuses help, like sorry, brothers, I don’t have enough memory melts for this, for this... Now only lazy, poor and greedy do not expand RAM storage. So who do we look up to, guys?.. Let's finish with the introduction and move on to the most interesting thing, namely assembler. I want to immediately disappoint lovers of hala- wow something to fuck: there is no technology here to remove protection. This modification will work ONLY on the original version and no pirate glucodromes here duh! It will also not be possible to plow infinites without a detailed and COMPLETE study of the method protection. So buy exclusively original! Talents such as Mednonogov, MANDATORY must be paid. So, with the permission of the author, we make a copy first disc from track 2 to track 128 incl. carefully. You can not fool your head and experiment with the original. But for this should have a stable operating system and program"Catalogue Master" (see ZX-Format #5). This program make a duplicate of the zero track at 160 track in case the revision process will not suit you and you will want everything restored update. Then ONLY the zero track is formatted run according to the standardiS-DOS,and then load zi "ALASM",or whatever you have, and type the following: ;28.02.98 This little thing is needed so that our neck- devr write to disk number one. ORG #6000 LD HL,#6200 LD DE,#0000 LDVS,#0106 CALL 15635 RET Now let's go! SM EQL #4000 ORG #6200 DI
LD A,0Here you can allow a little ad lib with the start of the game, if you install the system #79D8 - level number. I point it out many times to numerous requests from players. It will work it, if you select "New" in the start menu game"for no matter who. If it becomes unbearable to fight, in short, stuck somewhere, then you can “transcend” this level (or view them all).JR LEVEL As befits hackers, we sign it. DEFM "Cracked bу MAX." DEFM "Version for Spectrum 128" DEFM "/256/512 (port #7FFD)." LEVEL LD (#79D8+SM),A LD A,7 CALL PAGE Let's check the presence of the extension using #7FFD. LD HL,#С000 LD DE,#5707 LD A,(HL) EX AF,AF`
LD (HL),ЕLD A,D CALL PAGE
LD (HL),DLD A,Е CALL PAGE LD A,(HL) СР Е ЕХ AF,AF` LD (HL),A ЕХ AF,AF`
JR NZ,LNPROTТыhappy owner of additional pages. In the service menu, replace the word "Finish" to "Repeat". The other one won't fit. LD HL,MOD LD DE,#FD0B LD BC,MOD1-MOD LDIR LD HL,MOD1
LD DE,#FD5ЧLD С,9 PLSH HL LDIR POP HL LD DE,#FC5C![]()
LD C,6 LD A, C LDIR CALL PAGEHere we substitute the transfer procedure the entire game on additional pages. By- why all? There is no desire to fuck with parsing- kami what, how and where changes during the game ry, so we’ll save it with all the giblets. LD HL,SAVE LD DE,#FABE LD BC,MOD-SAVE LDIR LD A,#55 CALL PAGELD HL,PAGE_55 LD DE,#С000 LD ВС,1000 LDIR А здесь замолчу, что делаю. Кто шибко умный, сам поймет. LNPROT XOR A CALL PAGE LD HL,LLE0CF LD DE,#E0CF LD ВС,END-BEG LDIR LD HL,POKED LD (#6Е9F+SM),HL LD A,#18 LD (#Е160),A LD A,#С9 LD (#D639),A LD HL,#0000 LD (#6D31+SM),HL LD L,#3Е
LD (#7715+SM),HLLD A,#18 LD (#40D0+SM),A Перерасчет КС. Не скажу, как их считать надо, т.к. две недели их все выискивал. Да и не только в этом дело. Нет желания авто- ру свинью подсовывать - раз, нет желания давать возможность идиотам делать инфиниты - два, есть желание дождаться "Черный Во- рон-2" - три. Хватит аргументов? Так что привожу готовыеcontrol codes. EU- Naturally, if you change anything without me, then nothing will work. LD HL,#FЧAF LD (HL),#AA LD HL,#7650+SM LD (HL),#81 LD HL,#400С+SM LD (HL),#5A LD HL,#4045+SM LD (HL),#41 LD HL,#4043+SM LD (HL),#06 LD HL,#4002+SM LD (HL),#D7 LD A,#04![]()
CALL PAGE LD HL,#FFOO LD (HL),#96 LD A,#07 CALL PAGE LD HL,#FFFE LD (HL),#DD LD HL,#DB00 LD (HL),#С4 LD HL,#FE00PLSH HL LD A,#06 PAGE LD ВС,#7FFD![]()
OR #18 OLT (C),A NOP RET Next come the bells and whistles for back and forth re- flipping pages and stuff like that. Bor color dera changes to control the operation of the program we. All listing features are fair for assembler "ALASM". ; For page 6 SAVE DISP #FABE LD SP,#403E LD HL,#A11СPLSH HL![]()
LD HL,#4331 ![]()
Programmers - The hacker club: Modernization of the game "Black Raven-1" for 512k expansion (#7FFD).
CALL DRC0
CALL #432A
CALL DR80
LD A,#50
CALL #4337
CALL DRC0
CALL #432A
CALL #432D
CALL DR80
LD A,#51
CALL #4337
CALL DRC0
LD A,3
CALL #4337
CALL DR80
LD A,#53
CALL #4337
CALL DRC0
CALL #4326
CALL DR80
LD A,#54
CALL #4337
CALL DRC0
CALL #4331
CALL DR80
LD A,#56
CALL #4337
CALL DRC0
CALL #4335
CALL DR80
LD A,#57
CALL #4337
CALL DRC0
LD A,#52
CALL #4337
CALL DR80
LD A,#55
CALL #4337
LD HL,#7651
LD DE,#DB00
LD ВС,2479
LDIR
LD Н,#40
LD С,80
LDIR
LD HL,#4100
LD DE,#4101
LD ВС,255
LD (HL),#40
LD A,Е
OLT (#FE),A
LD A,#55
JP #4337
MOD1 DEFB #1B,#3E,#32,#42,#3E,#40
DEFB #38,#42,#4A
The author did not avoid the shortcomings of many programs.
measures of our "mouse" era. Meaning
setup connection/disconnection Kempston
mice. When loading a delayed game and when
with the mouse turned on very often it turns out that
that the screen is "running away". This happens due to
big difference between previous and current
general values of mouse ports. Here is this one
glitch fixed. Details about the system we-
shi look in the instructions for writing a driver
ra in the magazineZX-Format.
LD HL,#70A0
LD (#77СЕ),HL
LD A,(#79В2)
OR A
JR Z,LE0CF1
LD HL,#77D0
LD ВС,#FBDF
IN A,(С)
LD (HL),A INC HL
LD В,#FF
IN A,(С)
LD (HL),A
LE0CF1 ЕХ AF,AF`
RET С
CALL #бAбD
CALL #40Е8
CALL #6С89
RET
POKED PLSH HL
LD HL,#7A6B
ЕХ (SP),HL
LD A,(#79D7)
ORA
LD A,(#79D8)
JR Z,POKED1
СР #08
JR POKED2
POKED1 СР 13
POKED2 RET NZ
LD (#7A6E),A
RET
ENT
END
А это сам драйвер переброса страниц, ко-
торый я перебрасываю с доп. страницы на
таблицу вектора прерываний, запускаю, а
затем ликвидирую. Больше некуда приткнуть.

LD В,#10
AY1 PLSH ВС
LD A,В
DEC A
LD ВС,#FFFD
OLT (С),A
LD В,#BF
СР 7
LD A,0
JRNZ,AY2
CPL
AY2 OLT (С),A
РОР ВС
DJNZ AY1
LD HL,#79В1
LD ВС,#0404
AYЗ LD A,(HL)
PLSH AF
INC HL
DJNZ AYЗ
ЕХХ
LD HL,#DB00
LDDE,#7651
LD ВС,2479
LDIR
LD D,#40
LD С,80
LDIR
ЕХХ
LD В,С
AYЧ DEC HL
РОР AF
LD (HL),A
DJNZ AYЧ
LD SP,#403Е
LD HL,#A11С
PLSH HL
LD HL,DRIVE1
LD DE,#4100
LD ВС,255
PLSH DE
LDIR
LD A,4
OLT (#FE),A
RET
DRIVE1
DISP #4100
LD A,#50
CALL #4337 CALL DR_80
CALL #432A
CALL DR_С0
LD A,#51
CALL #4337
CALL DR_80
CALL #432D
CALL DR_С0
LD A,#53
CALL #4337
CALL DR_80
LD A,3
CALL #4337
CALL DR_С0
LD A,#54
CALL #4337
CALL DR_80
CALL #4326
CALL DR_С0
LD A,#56
CALL #4337
CALL DR_80
CALL #4331
CALL DR_С0
CALL #FA8С
LD A,#57
CALL #4337
CALL DR_80
CALL #4335
CALL DR_С0
LD A,#52
CALL #4337
CALL DR_80
CALL #4331
LD HL,#4100
LD DE,#4101
LDВС,255
LD (HL),#40
LD A,Е
OLT (#FE),A
CALL #4331
XOR A
LD (#79D8),A
JP #4368
DR_80 LD HL,#С000
LD DE,#8000
DR_801 LD ВС,#4000
LDIR
RET
DR_С0 LD HL,#8000
ORG #6000
Let's sum up the results of the day: 128 kilos
on byte machines everything remains unchanged
niy, and on the expansion 256/512K in the service
menu instead of "End game" will appear
"Repeat the game."After confirmation
actions everything will return to its original position -
tion, i.e. to the start menu of four
points. Mouse and music settings
are saved. You can start again, you can
overload the deferred state, without re-
seta return to basic. And most importantly, no
need to reboot from disk one! Yes,
and more. Owners of bullshit drives,
non-residents and simply not attentive may
seal the second disk to avoid damage
some virus unknown to me
program orrandom system glitch.
After finishing work on the revision, I
signals began to arrive that with disk
During operations the game freezes. The reason is trivial:
The author wanted the best, but it turned out
as always. Author of disk interface
(Mednonogov?) decided to make a semi-turbo-
der, that's why I didn't do the positioning when
every failure to read a sector. Imagine
that of the five sectors on the track at least
three is read the second/third time. What
what happens if you don't do the above?
That's right, the drive motor will stop,
because it is only promoted by the position team
tioning.
All's well that ends well. For-
ends my lampoon on the topic of foreign
a lot of interference in the game. Remaining
connect the resulting modification. Paste
one copy of the disk and run the procedure for
write to disk from assembler using the RLN command.
Then go toSTSif loaded, and co-
mandaSS+L consider the system sector with the origin
disc ginala one. For the illiterate: in the window
reading a sector in STS, indicate track 0, sec-
torus 8, length 1, address #8000. Then hell
Resu #8006 type the following:
LDHL,#6200
LD DE,#0001
LD B,#01
CALL #60В3
JP #6200
This is the loading of our finalization
ki. At address #82СС replace CALL #FE00 with
JP #5D2В. Now insert a copy of disk 1 and
command SS+S in the same way STS do
shipment of the modernized sector. Para-
sector recording meters are similar to boot
nym. Now you can seal all the cracks on
disks and run "Black Raven".
I completed the entire game on this modification and
Therefore, I give a 100% guarantee of work
the ability of the program. If I try
There is a bummer somewhere, look for problems and yourself.
Owners of computers with extensions other than
port #7FFD for similar modifications of the
contact the author of the program directly
Slavke framesTsvetmetkopytkin.
Finally, to avoid misunderstandings
I will describe the original discs with the game. At least
at least in Donetsk they sell exactly these and
I have every reason to believe that this is
everywhere like this. So both disks must be
tailor's origin, have branded
stickers from Mednonogov. There is only one disk
The watering can contains the name of the author, company and keys
launch. There are mirror images of kata-
remotes. Disc two has a serial number (y
me 11742), image of a horned kung with
sword and shield, as well as the inscription “do not seal-
wai" with an arrow pointing to the slot
write protection. Also on disk two should
be physically protected from copying
in the form of three scratches in the area of 2/10 tracks with
top side. If all of the above
Yes, you can sleep peacefully: the author is yours
received money and has an incentive to work yes-
for our pleasure.










Share your thoughts about the article