General info for: Bloody Paws [#ID: 595]
Release Date:
1990
Original Publisher:
Contributors:
Availability:
Available
Message Language:
Spanish
Machine Type:
ZX-Spectrum 48K/128K
Maximum Players:
1
Features:
Other platforms:
Known Errors:
Bugfix provided by Flavio M. Matsumoto:
  • Bloody Paws has a bug that causes the 'snow' effect in the screen. When IM 2 is activated with I register in the range 64-127 ($40-$7F), ULA is confused and shows noises in the screen. This bug does not affect machine code execution and game can be played normally, but this effect is visually very annoying.

    The program disassembly reveals forbidden value 93 ($5D) assigned to I register:

    24000   LD SP, 24000
    24003 DI
    24004 LD A, $5D
    24006 LD I, A
    24008 IM 2
    24010 XOR A


    The value of assembly instruction operand at 24004 must be replaced by any value greater than $7F. The chosen value was $FB because the RAM in the $FB00-$FC00 range was empty. The instruction at 24004 was altered to:

    24004   LD A, $FB


    In IM 2, the most significant byte (MSB) of the interrupt vector is the value of I register and the least significant byte (LSB) is read from data bus. Due to push-up resistors present in the data bus, the LSB is usually 255 ($FF), but it can return any other values because noise can be left by some device (mainly ULA). Programmer of Bloody Paws erroneously assumed that LSB will always be 255, but this is wrong! The proper way to handle interrupts would be making an interrupt vector table in the RAM, containing all possible values of LSB. Moreover, the interrupt routine address must be symmetrical because LSB can assume even or odd value.

    To prepare interrupt vector table, the RAM located at $FB00-$FC00 range was chosen because it was empty. Address $FAFA was also empty and was chosen to hold the interrupt routine that consists only by 'JP $FEF6' instruction ($FEF6 is the beginning of program's real interrupt routine).

Modified "BUGFIX" file provided by Flavio M. Matsumoto.

Bloody Paws image, screenshot or loading screen
Bloody Paws image, screenshot or loading screen
User Score
Score:
4
Total votes:
1


Stats:
  4:  
  100% (1)

Main File Downloads

Spectrum Computing acknowledges the rights of copyright holders. If you would like your software removed from our preservation archive and made unavailable for download (or have any queries) please contact [email protected].

G.LL. Software S.A. (Spain)
1990
BloodyPaws.tap.zip
Spanish
G.LL. Software S.A. (Spain)
1990
BloodyPaws.tzx.zip
Spanish
G.LL. Software S.A. (Spain)
1990
BloodyPaws(BUGFIX).tzx.zip
Spanish

Icons provided by Flaticon
RZX Archive


Releases
1990
Authors/Contributors
Page: 36 (PDF) (VIEW)
Article Type: Review - Nuevo