Page 9 of 17

Re: Fist of the North Star (JP) / Hokuto no Ken

Posted: Fri Nov 20, 2020 10:57 am
by slivercr
Testing.

So far so good, it entered attract mode without problems. Will play it throughout the day and report back.

Thanks for the hard work!

Re: Fist of the North Star (JP) / Hokuto no Ken

Posted: Fri Nov 20, 2020 11:09 am
by megavolt85
I hope now it will work, in any case, my freezes are gone
if everything goes well, I will try to put these fixes into Blue Dolphin

Re: Fist of the North Star (JP) / Hokuto no Ken

Posted: Fri Nov 20, 2020 11:20 am
by dxen1
megavolt85 wrote:I hope now it will work, in any case, my freezes are gone
if everything goes well, I will try to put these fixes into Blue Dolphin
Are these ram alloc hacks? Also great work as always

Re: Fist of the North Star (JP) / Hokuto no Ken

Posted: Fri Nov 20, 2020 11:25 am
by yzb
megavolt85 wrote:I hope now it will work, in any case, my freezes are gone
if everything goes well, I will try to put these fixes into Blue Dolphin


The main code is changed, maybe I will also follow to modify mine :mrgreen:

Re: Fist of the North Star (JP) / Hokuto no Ken

Posted: Fri Nov 20, 2020 11:37 am
by slivercr
megavolt85 wrote:I hope now it will work, in any case, my freezes are gone
if everything goes well, I will try to put these fixes into Blue Dolphin
Maybe you should link the fix in the first post (or update the download folder)? Just to get people testing the newest version and not the old one.

Excited to see if this also works for Dolphin Blue!

Re: Fist of the North Star (JP) / Hokuto no Ken

Posted: Fri Nov 20, 2020 11:43 am
by megavolt85
yzb wrote:The main code is changed, maybe I will also follow to modify mine :mrgreen:
added function DMA_abort, look DMA_abort_real

Code: Select all

read_dir_record: ! 8c16c3ec
	tst		r6,r6
	bt		.ret_dir
	mov		r6,r7
	mov		r5,r6
	
	mov		#0,r5
	shll2	r7
	shll2	r7
	shll2	r7
	
	shll2	r6
	shll2	r6
	shll2	r6
	bra		DmaRead
	nop
.ret_dir:
	rts
	mov		#0,r0


DmaRead:
	sts.l	pr, @-r15
	mov.l	r8, @-r15
	mov.l	r9, @-r15
	add		#-0x14,r15
	mov		r4,r9
	mov.l	r5,@(12,r15)
	mov.l	r6,@(0,r15)
	mov.l	r7,@(4,r15)
	mov.l	r7,@(16,r15)
	mov.l	.bioscall, r8
	mov		#-1,r0
	
	mov.l	.dmaenabled, r2
	mov.l	@r2,r3
	tst		r3,r3
	bf		.ret
	mov.l	@(4,r2),r3
	tst		r3,r3
	bf		.ret	
	
	mov.l	.prepbuf, r0
	jsr		@r0
	mov		r7,r5
	
	mov.l	@(4,r15),r1
	mov.l	.readlen,r0
	mov.l	r1,@r0
	shlr8	r1
	shlr2	r1
	shlr	r1
	add		#1,r1
	
	mov.l	r1,@(4,r15)
	
	mov.l	.baselba,r4
	mov.l	@(12,r15),r0
	tst		r0,r0
	bt		.skip2
	add		#1,r4
.skip2:
	mov.l	@r15,r1
	
	shlr8	r1
	shlr2	r1
	shlr	r1
	add		r4,r1
	mov.l	r1,@r15
	
	mov		#28,r4
	mov		r15, r5
	mov.l	@r8,r0
	jsr		@r0
	mov		#0,r7
	
	mov.l	r0, @(0x2c,r8)
	
	bra		.next_dr
	nop


.org 0x7e
	.word	0xFF0F
	
.next_dr:	
	
	mov.l	.readlen,r1
	mov		#1,r2
	mov.l	r2,@r1
	
.wait_cmd:
	mov.l	@r8,r0
	jsr		@r0
	mov		#2,r7
	
	mov.l	@(0x2c,r8),r4
	mov		r15, r5
	mov.l	@r8,r0
	jsr		@r0
	mov		#1,r7
	
	cmp/eq	#3,r0
	bf		.wait_cmd
	
	mov.l	@(0x2c,r8),r4
	mov		r15, r5
	mov.l	r9,@r5
	mov.l	@(16,r15),r2
	mov.l	r2,@(4,r15)
	bra		.next_dr2
	mov.l	@r8,r0
	
	.org 0xa8
DmaRead_real:	! 8c16c494	
	bra		DmaRead
	nop
	
.next_dr2:
	jsr		@r0
	mov		#6,r7
	
.ret_suc:	
	mov		#0,r0
.ret:
	add		#0x14,r15
	mov.l	@r15+,r9
	mov.l	@r15+,r8
	lds.l	@r15+,pr
	rts
	nop
	
DMA_abort:
	mov.l	.bioscall,r8
	mov.l	@r8,r8
	jsr		@r8
	mov		#3,r7
	
	mov		#0x18,r4
	mov		#0, r5
	jsr		@r8
	mov		#0,r7
	
	mov.l	r0,@(0x10,r15)
	tst		r0,r0
	bt		.dma_abort_ret
	
.loop:
	jsr		@r8
	mov		#2,r7
	
	mov.l	@(0x10,r15),r4
	mov		r15,r5
	jsr		@r8
	mov		#1,r7
	
	cmp/eq	#0,r0
	bf		.loop
.dma_abort_ret:
	mov.l	.dmaenabled,r1
	mov		#0,r0
	mov.l	r0,@r1
	
	add		 #0x14,r15
	lds.l	@r15+, pr
	mov.l	@r15+, r9
	rts
	mov.l	@r15+, r8
	
	.align 2
.dmaenabled:
	.long	0x8c1f87d8
.baselba:
	.long	45450
.bioscall:
	.long	0x8c0000c0
.prepbuf:
	.long	0x8c16892e
.readlen:
	.long	0x8c182838
	
	.org 0x158
DMA_abort_real:
	mov.l	r8, @-r15
	mov.l	r9, @-r15
	sts.l	pr, @-r15
	bra		DMA_abort
	add		#-0x14,r15
image in first post updated

Re: Fist of the North Star (JP) / Hokuto no Ken

Posted: Fri Nov 20, 2020 11:56 am
by yzb
megavolt85 wrote:
yzb wrote:The main code is changed, maybe I will also follow to modify mine :mrgreen:
added function DMA_abort, look DMA_abort_real

image in first post updated




Thanks, add this code in the next game
Hope the previously released games will not freeze :mrgreen:

Re: Fist of the North Star (JP) / Hokuto no Ken

Posted: Fri Nov 20, 2020 12:09 pm
by slivercr
megavolt85 wrote:
added function DMA_abort, look DMA_abort_real

image in first post updated
Do you think this could also be used for kofxi / ngbc?

Re: Fist of the North Star (JP) / Hokuto no Ken

Posted: Fri Nov 20, 2020 12:25 pm
by pentarou
megavolt85 wrote:I hope now it will work, in any case, my freezes are gone
if everything goes well, I will try to put these fixes into Blue Dolphin
gdemu clone With the latest fix test. The game works fine on 3 stages, but has the same problem since stage 4 when I do the super move (as I mentioned before), freeze and repeating the character's voice

Re: Fist of the North Star (JP) / Hokuto no Ken

Posted: Fri Nov 20, 2020 12:35 pm
by dxen1
pentarou wrote:
megavolt85 wrote:I hope now it will work, in any case, my freezes are gone
if everything goes well, I will try to put these fixes into Blue Dolphin
gdemu clone With the latest fix test. The game works fine on 3 stages, but has the same problem since stage 4 when I do the super move (as I mentioned before), freeze and repeating the character's voice
try to make a save state in demul if you can, when to execute and show the bug. the performance/bugs should be the exact same as the ones on real hardware to make it easy to fix.