-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
e5d0858
commit fd3bb8c
Showing
59 changed files
with
1,995 additions
and
0 deletions.
There are no files selected for viewing
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
Copyright Infringement PMD-85 version | ||
====================================== | ||
|
||
Here's the PMD-85 version of the game. | ||
Sadly it's not as good as i wanted it to be, in part because | ||
the ZX1 decompressor was extremely slow on this machine so i had to resort | ||
to reducing the frame's size. | ||
|
||
This version takes advantage of ColorAce if you have it on your machine | ||
however it will work in B&W too. | ||
|
||
This was a mostly straight forward machine. | ||
I was confused at first until i looked at the memory map on MAME then it was mostly straight forward. | ||
I encountered Intel 8080 specific issues especially since it's still not fully supported | ||
so i had to import my own copies of ZX1 and ZX0. |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
SECTION data_user | ||
|
||
PUBLIC _bakura_data | ||
PUBLIC _title_data | ||
PUBLIC _frame1_data | ||
PUBLIC _frame2_data | ||
PUBLIC _frame3_data | ||
PUBLIC _frame4_data | ||
|
||
_bakura_data: | ||
INCBIN "BAKURA.ZX0" | ||
_title_data: | ||
INCBIN "TITLE.ZX0" | ||
|
||
|
||
_frame1_data: | ||
INCBIN "FRAME1C.BIN" | ||
_frame2_data: | ||
INCBIN "FRAME2C.BIN" | ||
_frame3_data: | ||
INCBIN "FRAME3C.BIN" | ||
_frame4_data: | ||
INCBIN "FRAME4C.BIN" | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,75 @@ | ||
PUBLIC _dzx0_decompress | ||
|
||
_dzx0_decompress: | ||
lxi h,0FFFFh | ||
push h | ||
inx h | ||
mvi a,080h | ||
dzx0_literals: | ||
call dzx0_elias | ||
call dzx0_ldir | ||
jc dzx0_new_offset | ||
call dzx0_elias | ||
dzx0_copy: | ||
xchg | ||
xthl | ||
push h | ||
dad b | ||
xchg | ||
call dzx0_ldir | ||
xchg | ||
pop h | ||
xthl | ||
xchg | ||
jnc dzx0_literals | ||
dzx0_new_offset: | ||
call dzx0_elias | ||
|
||
mov h,a | ||
pop psw | ||
xra a | ||
sub l | ||
rz | ||
push h | ||
rar\ mov h,a | ||
ldax d | ||
rar\ mov l,a | ||
inx d | ||
|
||
xthl | ||
mov a,h | ||
lxi h,1 | ||
cnc dzx0_elias_backtrack | ||
|
||
inx h | ||
jmp dzx0_copy | ||
dzx0_elias: | ||
inr l | ||
dzx0_elias_loop: | ||
add a | ||
jnz dzx0_elias_skip | ||
ldax d | ||
inx d | ||
ral | ||
dzx0_elias_skip: | ||
rc | ||
dzx0_elias_backtrack: | ||
dad h | ||
add a | ||
jnc dzx0_elias_loop | ||
jmp dzx0_elias | ||
|
||
dzx0_ldir: | ||
push psw | ||
dzx0_ldir1: | ||
ldax d | ||
stax b | ||
inx d | ||
inx b | ||
dcx h | ||
mov a,h | ||
ora l | ||
jnz dzx0_ldir1 | ||
pop psw | ||
add a | ||
ret |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,118 @@ | ||
; ----------------------------------------------------------------------------- | ||
; ZX1 8080 decoder by Ivan Gorodetsky | ||
; Based on ZX1 z80 decoder by Einar Saukas | ||
; Compile with The Telemark Assembler (TASM) 3.2 | ||
; v1 (2021-02-16) - 131 bytes forward / 135 bytes backward | ||
; v2 (2021-02-17) - 129 bytes forward / 133 bytes backward | ||
; v3 (2021-02-22) - 124 bytes forward / 128 bytes backward | ||
; v4 (2021-02-25) - 124 bytes forward / 128 bytes backward (faster version) | ||
; v5 (2021-02-25) - 128 bytes forward / 132 bytes backward (+4 bytes, bug fix) | ||
; ----------------------------------------------------------------------------- | ||
; Parameters (forward): | ||
; DE: source address (compressed data) | ||
; BC: destination address (decompressing) | ||
; | ||
; Parameters (backward): | ||
; DE: last source address (compressed data) | ||
; BC: last destination address (decompressing) | ||
; ----------------------------------------------------------------------------- | ||
|
||
PUBLIC _dzx1_decompress | ||
|
||
_dzx1_decompress: | ||
lxi h,0FFFFh | ||
shld Offset | ||
mvi a,080h | ||
cdzx1s_literals: | ||
call cdzx1s_elias | ||
push psw | ||
dcx h | ||
inr l | ||
cdzx1s_ldir1: | ||
ldax d | ||
stax b | ||
inx d | ||
inx b | ||
dcr l | ||
jnz cdzx1s_ldir1 | ||
xra a | ||
ora h | ||
jz $+7 | ||
dcr h | ||
jmp cdzx1s_ldir1 | ||
pop psw | ||
add a | ||
jc cdzx1s_new_offset | ||
call cdzx1s_elias | ||
cdzx1s_copy: | ||
push d | ||
xchg | ||
lhld Offset | ||
dad b | ||
push psw | ||
dcx d | ||
inr e | ||
cdzx1s_ldir2: | ||
mov a,m | ||
stax b | ||
inx h | ||
inx b | ||
dcr e | ||
jnz cdzx1s_ldir2 | ||
xra a | ||
ora d | ||
jz $+7 | ||
dcr d | ||
jmp cdzx1s_ldir2 | ||
pop psw | ||
xchg | ||
pop d | ||
add a | ||
jnc cdzx1s_literals | ||
cdzx1s_new_offset: | ||
dcr h | ||
push psw | ||
ldax d | ||
inx d | ||
rar | ||
mov l,a | ||
jnc cdzx1s_msb_skip | ||
ldax d | ||
inx d | ||
rar | ||
inr a | ||
jz cdzx1s_exit | ||
mov h,a | ||
mov a,l | ||
ral | ||
mov l,a | ||
cdzx1s_msb_skip: | ||
pop psw | ||
shld Offset | ||
call cdzx1s_elias | ||
inx h | ||
jmp cdzx1s_copy | ||
cdzx1s_elias: | ||
lxi h,1 | ||
cdzx1s_elias_loop: | ||
add a | ||
rnc | ||
jnz cdzx1s_elias_skip | ||
ldax d | ||
inx d | ||
ral | ||
rnc | ||
cdzx1s_elias_skip: | ||
dad h | ||
add a | ||
jnc cdzx1s_elias_loop | ||
inr l | ||
jmp cdzx1s_elias_loop | ||
cdzx1s_exit: | ||
pop psw | ||
ret | ||
|
||
Offset: | ||
defw 0 | ||
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,135 @@ | ||
; ----------------------------------------------------------------------------- | ||
; ZX5v2 8080 decoder by Ivan Gorodetsky | ||
; Based on ZX5 z80 decoder by Einar Saukas | ||
; v1 (2021-10-05) - 150 bytes code + 5 bytes variables | ||
; v2 (2022-05-07) - 147 bytes code + 4 bytes variables | ||
; ----------------------------------------------------------------------------- | ||
; Parameters (forward): | ||
; HL: source address (compressed data) | ||
; BC: destination address (decompressing) | ||
; | ||
; Parameters (backward): | ||
; HL: last source address (compressed data) | ||
; BC: last destination address (decompressing) | ||
; ----------------------------------------------------------------------------- | ||
|
||
;#define BACKWARD | ||
|
||
|
||
PUBLIC _dzx5 | ||
GLOBAL _dzx5 | ||
|
||
_dzx5: | ||
lxi d,0FFFFh | ||
push d | ||
inx d | ||
mvi a,080h | ||
dzx5_literals: | ||
call dzx5_elias | ||
call ldir | ||
jc dzx5_other_offset | ||
dzx5_last_offset: | ||
call dzx5_elias | ||
dzx5_copy: | ||
xthl | ||
push h | ||
dad b | ||
call ldir | ||
pop h | ||
xthl | ||
jnc dzx5_literals | ||
dzx5_other_offset: | ||
add a | ||
jnz dzx5_other_offset_skip | ||
mov a,m | ||
inx h | ||
ral | ||
dzx5_other_offset_skip: | ||
jnc dzx5_prev_offset | ||
dzx5_new_offset: | ||
xthl | ||
push h | ||
lhld dzx5_offset2 | ||
shld dzx5_offset3 | ||
pop h | ||
shld dzx5_offset2 | ||
mov h,a | ||
add a | ||
xthl | ||
mvi e,0FEh | ||
call dzx5_elias_loop | ||
inr e | ||
jz dzx5_elias_exit | ||
mov d,e | ||
mov e,m | ||
inx h | ||
xchg | ||
xthl | ||
dcr h | ||
xchg | ||
lxi d,1 | ||
cp dzx5_elias_backtrack | ||
inx d | ||
jmp dzx5_copy | ||
dzx5_prev_offset: | ||
add a | ||
xthl | ||
push h | ||
xchg | ||
xthl | ||
push h | ||
lhld dzx5_offset3 | ||
xchg | ||
lhld dzx5_offset2 | ||
jnc dzx5_second_offset | ||
xchg | ||
dzx5_second_offset: | ||
xthl | ||
shld dzx5_offset2 | ||
xchg | ||
shld dzx5_offset3 | ||
pop h | ||
xthl | ||
xchg | ||
pop h | ||
xthl | ||
jmp dzx5_last_offset | ||
|
||
dzx5_elias: | ||
inr e | ||
dzx5_elias_loop: | ||
add a | ||
jnz dzx5_elias_skip | ||
mov a,m | ||
inx h | ||
ral | ||
dzx5_elias_skip: | ||
rc | ||
dzx5_elias_backtrack: | ||
xchg\ dad h\ xchg | ||
add a | ||
jnc dzx5_elias_loop | ||
jmp dzx5_elias | ||
ldir: | ||
push psw | ||
ldir_loop: | ||
mov a,m | ||
stax b | ||
inx h | ||
inx b | ||
dcx d | ||
mov a,d | ||
ora e | ||
jnz ldir_loop | ||
dzx5_elias_exit: | ||
pop psw | ||
add a | ||
ret | ||
|
||
dzx5_offset2: | ||
defw 0 | ||
dzx5_offset3: | ||
defw 0 | ||
|
||
.end |
Binary file not shown.
Oops, something went wrong.