Autor
| MSX-O-Mizer v1.4
|
hitchhikr msx friend Mensajes: 9 | Publicado: Mayo 08 2008, 14:50   |
|
|
wolf_
 msx legend Mensajes: 4713 | Publicado: Mayo 08 2008, 15:31   |
Good idea, just like the 1chipMSX updates thread, a continuous development thread would be the best if you expect updates every few days.. kinda like SymbOS as well.
|
|
Metalbrain msx friend Mensajes: 15 | Publicado: Mayo 08 2008, 18:14   |
; 396 bytes which must be aligned on 8 bits boundary
If I understood the changes you've made, the new buffer size isn't really 396, but 256+104 = 360, and you can cut back that number to 256+72= 328 if you replace the +52 by +36 and +104 by +72. |
|
hitchhikr msx friend Mensajes: 9 | Publicado: Mayo 08 2008, 18:35   |
Absolutely, i forgot to modify that.
|
|
ARTRAG msx master Mensajes: 1686 | Publicado: Mayo 09 2008, 00:34   |
Well, it works even in this way, and gives me 111 spare bytes for the 2K competition
to be invested in
1) MC bullets
2) collisions of bullets with robots
3) robot explosion
4) game goal management
 |
|
hitchhikr msx friend Mensajes: 9 | Publicado: Mayo 09 2008, 12:20   |
v1.5 released:
- 2 bytes removed from the executable files (1 byte from the generic depackers).
So this game can now be packed into 2048 bytes which makes it a real 2k game  .
|
|
hitchhikr msx friend Mensajes: 9 | Publicado: Mayo 09 2008, 16:12   |
v1.5b:
- Fixed a bug which could occur under certain circumstances during depacking.
|
|
hitchhikr msx friend Mensajes: 9 | Publicado: Mayo 10 2008, 16:16   |
v1.5d:
- Added a depacker for ROM based software.
- The packer will display a warning if the source and destination addresses would overlap
during the decrunching process (it may work fine nevertheless).
|
|
ARTRAG msx master Mensajes: 1686 | Publicado: Mayo 11 2008, 08:19   |
Great!! It will be usefull also for masxdev!!
Why the other code was'nt good for the rom?
I see tha the offsettable is also defined as EQU at 0E000h+328
What should be passed in BC exactly?
|
|
hitchhikr msx friend Mensajes: 9 | Publicado: Mayo 11 2008, 11:09   |
The input datas are modified by the depacker.
The offset table have to be passed in bc, i fixed the archive.
|
|
hitchhikr msx friend Mensajes: 9 | Publicado: Mayo 12 2008, 19:57   |
v1.5f released, i noticed a nasty bug with the first byte which wasn't pre-calculated right in some cases.
|
|
ARTRAG msx master Mensajes: 1686 | Publicado: Agosto 27 2008, 01:32   |
Hi hitchhikr
I'm trying to use the ROM version of the packer, (the file is datas_depacker_rom.asm), but i think that something is wrong
The file is actually unpacked but i get some ram corruption elsewhere, outside the areas I have allocated....
Some hint ?
PS
If I correctly understand, when you say that mom_map_bits_rom has to be aligned on 8 bits boundary, you mean at an address multiple of 256. I have mom_map_bits_rom at D600
|
|
ARTRAG msx master Mensajes: 1686 | Publicado: Agosto 27 2008, 01:33   |
Just to be clearer, the unpacker i use is:
; -------------------------------------------------------
; MSX-O-Mizer v1.5f datas depacker *ROM based version*
; Improved from Metalbrain's z80 version.
; -------------------------------------------------------
; source in hl
; dest in de
;
; ; 328 bytes which must be aligned on 8 bits boundary
; mom_map_bits_rom = 0xe000
; ; 26 bytes located in ram
; mom_offset_table = 0xe000 + 328
mom_depack_rom: push de
ld bc, mom_offset_table
push bc
ld e,c
ld d,b
ld bc,26
ldir
push hl
pop af
pop hl
push af
ld iy, mom_map_bits_rom + 0xf0
ld b, 52
mom_init_bits_rom:
db 0xFD,0x7D ;LD A,IYL
and 15
jr nz, mom_node_rom
ld de, 1
mom_node_rom: rrd
ld (iy), a
ld (iy + 36), e
ld (iy + 72), d
db 0xFD,0x2C ;INC IYL
inc a
push hl
ld hl, 0
scf
mom_set_bit_rom: adc hl, hl
dec a
jr nz, mom_set_bit_rom
add hl, de
ex de, hl
pop hl
bit 0, b
jr z, mom_wait_step_rom
inc hl
mom_wait_step_rom: djnz mom_init_bits_rom
pop hl
ld a, (hl)
inc hl
db 0xDD,0x67 ;LD IXH,A
pop de
mom_lit_copy_rom: ldi
mom_main_loop_rom: call mom_get_bit_rom
jr c, mom_lit_copy_rom
ld c, -17
mom_get_index_rom: call mom_get_bit_rom
inc c
jr nc, mom_get_index_rom
ld a, c
ret z
push de
call mom_get_pair_rom
push bc
jr nz, mom_out_range_rom
ld de, 0x0220
dec c
jr z, mom_go_for_it_rom
ld de, 0x0410
dec c
jr z, mom_go_for_it_rom
mom_out_range_rom: ld de, 0x0400
mom_go_for_it_rom: pop af
ex af, af'
call mom_get_bits_rom
add a, e
call mom_get_pair_rom
pop de
push hl
ld h, d
ld l, e
sbc hl, bc
ex af, af'
push af
pop bc
ldir
pop hl
jr mom_main_loop_rom
mom_get_pair_rom:
db 0xFD,0x6F ;LD IYL,A
ld d, (iy)
call mom_get_bits_rom
add a,(iy + 36)
ld c, a
ld a, b
adc a,(iy + 72)
ld b, a
ret
mom_get_bits_rom: ld bc, 0
mom_getting_bits_rom:
dec d
ld a, c
ret m
call mom_get_bit_rom
rl c
rl b
jr mom_getting_bits_rom
mom_get_bit_rom:
db 0xDD,0x7C ;LD A,IXH
add a,a
jr nz, mom_byte_done_rom
ld a, (hl)
inc hl
rla
mom_byte_done_rom:
db 0xDD,0x67 ;LD IXH,A
ret
|
|
ARTRAG msx master Mensajes: 1686 | Publicado: Agosto 27 2008, 02:06   |
pps
I compress with
C:\HT-Z80\msxdev08\Mizer\MSX-O-Mizer.exe -r temp.bin temp.miz
|
|
hitchhikr msx friend Mensajes: 9 | Publicado: Septiembre 04 2008, 16:16   |
Where is this mem corruption occuring exactly ? Did you try with mom_map_bits_rom at $e000 ?
|
|
|
|
|