Neo-Geo Fans  
Précédent   Neo-Geo Fans > LE FORUM > .: CREATION
S'inscrire FAQ Membres Calendrier Recherche Messages du jour Marquer les forums comme lus

Réponse
 
Outils de la discussion Modes d'affichage
Vieux 16/02/2010, 10h03   #166
kamui-san
 
Avatar de kamui-san
 
Date d'inscription: avril 2007
Localisation: Lyon
Messages: 693
L'idéal pour débuter serait de faire un "essai" de jeu de style bubble et bobble avec des tableaux, un (petit) moteur physique et des affichages de sprites et de zik.

Le summum serai de pouvoir faire les tests d'affichanges de sprite simultanés et ainsi découvrir le réel potentiel de la console et des bibliothèques miss à disposition par la neodev team.

PS -> Pour ma part, j'ai installé l'environnement de compilation GCC sur mon mac et m'attaquerai plus prochainement à différents essais d'adaptation des .bat (beuhhhh) de neodev vers une version plus "unix/linux".
kamui-san est déconnecté   Réponse avec citation
Vieux 16/02/2010, 10h34   #167
ftek
Autiste confus
 
Avatar de ftek
 
Date d'inscription: février 2010
Localisation: Findus city
Messages: 321
Le potentiel vidéo de la console n'est plus vraiment à découvrir, 380 sprites assemblables max, 320x224 en couleurs 16bits. Ce qui en met plein les yeux c'est l'animation et la capacité du moteur à faire bouger tout ça sans ramer à mon avis.
Un puzzle bobble c'est clair qu'il doit y avoir moyen d'en faire un en C sans trop se faire mal.
Le truc bien au moins avec le dev sur les consoles paumées, c'est que même si l'un va écrire sous linux et l'autre sous windows, on a pas à se taper les problèmes de plateformes ou de compatibilité avec les librairies à moitié finies.

(Pour la musique de l'intro, j'ai passé la nuit à chercher dans le driver de lbowling... j'ai trouvé que la config des instruments mais pas la partition Dodo)
__________________

Dernière modification par ftek 16/02/2010 à 10h43.
ftek est déconnecté   Réponse avec citation
Vieux 16/02/2010, 13h28   #168
CeL
 
Avatar de CeL
 
Date d'inscription: avril 2007
Localisation: Guyancourt
Messages: 945
pour ceux que ca intéresse :

COURS D'ASM 68000

j'attaque le 2eme chapitre, ça ira mieux bientôt....j'espère

EDIT : Punaise ça me hérisse le poil !!
__________________

Dernière modification par CeL 16/02/2010 à 15h08.
CeL est déconnecté   Réponse avec citation
Vieux 16/02/2010, 15h49   #169
CeL
 
Avatar de CeL
 
Date d'inscription: avril 2007
Localisation: Guyancourt
Messages: 945
je ne vois pas d'autre solution que de zapper l'intro, ou carrément de la recoder dans le main().

quand je compile le P1 je perds le le logo neogeo
quand je rajoute la zic, je perds la zic d'intro
quand je rajoute les sprites, je perds le max 330
Ca aurait été tellement plus facile si le boot était sur la console

Ou alors si qqun est capable de greffer le logo "NEO-GEO" à une adresse définie d'un p1 que je fournirais...

Sinon pour désactiver le bootscreen:
fteck, saurais-tu modifier le code suivant pour conditionner le lancement de l'intro ?

Code:
	* ++====================================================================++
	* || common_crt0_cart.s - C Run Time Startup Code for Neo Geo Cartridge	||
	* ++--------------------------------------------------------------------++
	* || $Id: common_crt0_cart.s,v 1.5 2001/07/13 14:46:31 fma Exp $		||
	* ++--------------------------------------------------------------------++
	* || This is the startup code needed by programs compiled with GCC		||
	* ++--------------------------------------------------------------------||
	* || BGM: Guitar Vader - S.P.Y.											||
	* ++====================================================================++

********************** Exported Symbols **********************
	.globl	_start
	.globl	atexit

********************** Imported Symbols **********************
	.globl	__do_global_ctors
	.globl	__do_global_dtors
	.globl	main
	.globl	memset
	.globl	__bss_start	
	.globl	_end

********************** Program Start *************************

** NOTE: Cartridge systems have swapped IRQ1 and IRQ2

	.long	0x10F300, 0xC00402, 0xC00408, 0xC0040E
	.long	0xC00414, 0xC00426, 0xC00426, 0xC00426
	.long	0xC0041A, 0xC00420, 0xC00426, 0xC00426
	.long	0xC00426, 0xC00426, 0xC00426, 0xC0042C
	.long	0xC00522, 0xC00528, 0xC0052E, 0xC00534
	.long	0xC0053A, 0xC004F2, 0xC004EC, 0xC004E6
	.long	0xC004E0, IRQ2,     IRQ1,     IRQ3
	.long	DUMMY,	  DUMMY,    DUMMY,    DUMMY
	.long	TRAP00,	  TRAP01,	TRAP02,	  TRAP03
	.long	TRAP04,	  TRAP05,   TRAP06,   TRAP07
	.long   TRAP08,   TRAP09,   TRAP10,   TRAP11
	.long	TRAP12,   TRAP13,   TRAP14,   TRAP15
	.long	0xC00426, 0xC00426, 0xC00426, 0xC00426
	.long	0xC00426, 0xC00426, 0xC00426, 0xC00426
	.long	0xC00426, 0xC00426, 0xC00426, 0xC00426
	.long	0xC00426, 0xC00426, 0xC00426, 0xC00426
	
	.ascii	"NEO-GEO"
	.byte	CDDA_FLAG
	.word	GUID
	.long	0x0
	.long	DEBUG_DIPS
	.word	0x0
	.word	LOGO_START
	.long	_jp_config
	.long	_us_config
	.long	_sp_config

	jmp		ENTRY_POINT1
	jmp		ENTRY_POINT2
	jmp		ENTRY_POINT3
	jmp		ENTRY_POINT4
	
	.org	0x182

	.long	_security

_security:
	moveq	#0,d3
	tst.w	0xa14(a5)
	bne		l2a53a
	movea.l	0xa04(a5),a0
	move.w	0xa08(a5),d7

l2a508:
	move.b	d0,0x300001
	move.w	(a0),d1
	cmpi.b	#0xff,d1
	beq.s	l2a530
	move.w	2(a0),d0
	cmp.b	0xace(a5),d0
	bne.s	l2a530
	move.w	4(a0),d0
	cmp.b	0xacf(a5),d0
	bne.s	l2a530
	cmp.b	0xad0(a5),d1
	beq.s	l2a538

l2a530:
	addq.l	#8,a0
	dbf		d7,l2a508
	move.w	d7,d3
l2a538:
	rts

l2a53a:
	movea.l	0xa04(a5),a0
	move.w	0xa08(a5),d7
l2a542:
	move.w	(a0),d1
	lsr.w	#8,d1
	cmpi.b	#0xff,d1
	beq.s	l2a566
	move.w	(a0),d0
	cmp.b	0xace(a5),d0
	bne.s	l2a566
	move.w	2(a0),d0
	lsr.w	#8,d0
	cmp.b	0xacf(a5),d0
	bne.s	l2a566
	cmp.b	0xad0(a5),d1
	beq.s	l2a56e
l2a566:
	addq.l	#4,a0
	dbf		d7,l2a542
	move.w	d7,d3
l2a56e:
	rts

	.align	4

* Dummy exception routine
_dummy_exc_handler:
	rte

	.align	4

* Dummy sub-routine
_dummy_config_handler:
	rts

	.align	4

* Standard IRQ1 handler
_irq1_handler:
   addq.w #1, 0x401ffe
	move.w	#2, 0x3C000C
	rte

	.align	4

* Standard IRQ2 handler
_irq2_handler:
	*addq.w #1, 0x401ffe
	move.w	#1, _vbl_flag
	tst.b	0x10FD80
	bmi.s	0f
	jmp		0xC00438
0:
	movem.l	d0-d7/a0-a6,-(sp)
	move.b	d0, 0x300001
	jsr		0xC0044A
	movem.l	(sp)+, d0-d7/a0-a6
	move.w	#4, 0x3C000C
	rte

	.align	4

* Standard IRQ3 handler
_irq3_handler:
	move.w	#1, 0x3C000C
	rte

	.align	4

* Dummy atexit (does nothing for now)
atexit:
	moveq	#0, d0
	rts

	.align	4

* Entry point of our program
_start:
	* Setup stack pointer and 'system' pointer
	lea		0x10F300,a7
	lea		0x108000,a5

	* Reset watchdog
	move.b	d0,0x300001
	
	* Flush interrupts
	move.b	#7,0x3C000C
	
	* Enable manual reset (A+B+C+START or SELECT)
	bclr	#7,0x10FD80
	
	* Enable interrupts
	move.w	#0x2000,sr

	* Initialize BSS section
	move.l	#_end, d0
	sub.l	#__bss_start, d0
	move.l	d0, -(a7)
	clr.l	-(a7)
	pea		__bss_start
	jbsr	memset	

	* Jump to main
	jbsr	main

	* Call global destructors
	jbsr	__do_global_dtors

	* For cart systems, infinite loop
9:
	jmp	9b(pc)

	.align	4


J'ai trouvé un code qui marche bien, que j'arrive a compiler avec snasm68k. Le DISPLAY_LOGO equ 0 fonctionne bien ici:

Code:
*******************************************************************************
* FUNCTION:	
* DESCRIPTION:	
* PARAMETERS:	
*******************************************************************************
STACKPTR	equ	$10F300
DISPLAY_LOGO	equ	0

*******************************************************************************
* Header
*******************************************************************************
	; Stack Ptr = $10F300
	; InitialPC = $C00402
	dc.l	$10F300,	$C00402,	$C00408,	$C0040E	

	; Ptr to debugging switch = $00C00414
	dc.l	$C00414,	$C00426,	$C00426,	$C00426
	dc.l	$C0041A,	$C00420,	$C00426,	$C00426
	dc.l	$C00426,	$C00426,	$C00426,	$C0042C
	dc.l	$C00522,	$C00528,	$C0052E,	$C00534
	dc.l	$C0053A,	$C004F2,	$C004EC,	$C004E6

	; Interrupt pointers
	dc.l	$C004E0,	Irq1,		Irq2,		Irq3
	dc.l	Dummy,		Dummy,		Dummy,		Dummy
	; Traps
	dc.l	Dummy,		Dummy,		Dummy,		Dummy
	dc.l	Dummy,		Dummy,		Dummy,		Dummy
	dc.l	Dummy,		Dummy,		Dummy,		Dummy
	dc.l	Dummy,		Dummy,		Dummy,		Dummy
	
	dc.l	$C00426,	$C00426,	$C00426,	$C00426
	dc.l	$C00426,	$C00426,	$C00426,	$C00426
	dc.l	$C00426,	$C00426,	$C00426,	$C00426
	dc.l	$C00426,	$C00426,	$C00426,	$C00426

	; Magic bytes
	dc.b	'NEO-GEO'
	
	; CDDA Flag
	dc.b	$00

	; $0273 = NGH number
	dc.w	$0273
	
	; Unknown
	dc.l	$00000000
	
	; Pointer to debugging switch
	dc.l	$10E000
	
	if DISPLAY_LOGO=1
		; Starting sprite number = $0000
		dc.w	$1000
		; Logo start
		dc.w	$005c
		move.b	#$0,$320000	; init le moteur de son
		move.b	#$4,$320000	; joue le son spoutnick	

	else
		dc.w	$0
		dc.w	$138
	endc

	; Pointer to Japanese config
	dc.l	JapaneseConfig
	
	; Pointer to English config
	dc.l	EnglishConfig
	
	; Pointer to Spanish config
	dc.l	SpanishConfig

	; Entry point of program
	jmp	_start
	jmp	Start2
	jmp	Start3
	jmp	Start4

	dc.l	$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF
	dc.l	$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF
	dc.l	$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF
	dc.l	$FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF
	dc.l	$FFFFFFFF,$FFFFFFFF

	; Pointer to security code
	dc.l	Security

*******************************************************************************
* Security code
*******************************************************************************
Security:
	moveq	#0, d3
	
	tst.w	$a14(a5)
	bne	l2a53a
	
	movea.l	$a04(a5), a0
	move.w	$a08(a5), d7

l2a508:
	move.b	d0, $300001
	move.w	(a0), d1

	cmpi.b	#$ff, d1
	beq.s	l2a530

	move.w	2(a0),d0
	
	cmp.b	$ace(a5),d0
	bne.s	l2a530
	
	move.w	4(a0),d0
	
	cmp.b	$acf(a5),d0
	bne.s	l2a530
	
	cmp.b	$ad0(a5),d1
	beq.s	l2a538

l2a530:
	addq.l	#8,a0
	dbf	d7,l2a508

	move.w	d7,d3

l2a538:
	rts

l2a53a:
	movea.l	$a04(a5),a0
	move.w	$a08(a5),d7

l2a542:
	move.w	(a0),d1
	lsr.w	#8,d1
	
	cmpi.b	#$ff, d1
	beq.s	l2a566
	
	move.w	(a0), d0
	
	cmp.b	$ace(a5), d0
	bne.s	l2a566
	
	move.w	2(a0), d0
	lsr.w	#8, d0
	
	cmp.b	$acf(a5), d0
	bne.s	l2a566
	
	cmp.b	$ad0(a5), d1
	beq.s	l2a56e

l2a566:
	addq.l	#4, a0
	dbf	d7, l2a542
	move.w	d7, d3

l2a56e:
	rts

*******************************************************************************
* Header
*******************************************************************************
	cnop	0,4
JapaneseConfig:
	dc.b	'FROG FEAST JP   '
	dc.l	$FFFFFFFF
	dc.w	$0364
	dc.b	$14, $13, $24, $01

EnglishConfig:
	dc.b	'FROG FEAST EN   '
	dc.l	$FFFFFFFF
	dc.w	$0364
	dc.b	$14, $13, $24, $01

SpanishConfig:
	dc.b	'FROG FEAST SP   '
	dc.l	$FFFFFFFF
	dc.w	$0364
	dc.b	$14, $13, $24, $01

*******************************************************************************
* Irq1 interrupt routine
*******************************************************************************
	cnop	0,4
Irq1:
	; Bit 7 = 1 when NeoGeo logo is displayed
	tst.b	0x10FD80
	bmi.s	DisplayedLogo
	jmp	0xC00438			; NeoGeo logo display function

DisplayedLogo:
	movem.l	d0-d7/a0-a6,-(sp)

	move.b	d0, 0x300001			; Reset watchdog

	jsr	0xC0044A

	movem.l	(sp)+, d0-d7/a0-a6
	
	move.w	#4, 0x3C000C			; IRQ 1 acknowledge

	rte

*******************************************************************************
* Irq2 interrupt routine
*******************************************************************************
	cnop	0,4
Irq2:
	move.w	#2, $3C000C
	rte

*******************************************************************************
* Irq3 interrupt routine
*******************************************************************************
	cnop	0,4
Irq3:
	move.w	#1, $3C000C
	rte

*******************************************************************************
* Dummy interrupt routine
*******************************************************************************
	cnop	0,4
Dummy:
	rte

*******************************************************************************
* Main code
*******************************************************************************
	cnop	0,4
_start:
	lea	$10F300,sp			; Set stack pointer
	lea	0x108000,a5

	move.b	d0, $300001			; Reset watchdog
	move.w	#0, $3C0006			; ???
	
	move.b	#7, $3C000C			; Acknowledge all interrupts
	
	jsr	$C004C2				; Call bios routine
	jsr	$C004C8
	jsr	$C0044A
	
	bclr	#7,0x10FD80			; Enable manual reset
	move.w	#$2000, sr			; Enable interrupts

	jmp	main				; Jump to main
EndLoop:
	bra.s	EndLoop

*******************************************************************************
* 
*******************************************************************************
	cnop	0,4
Start2:
	rts

Start3:
	rts

Start4:
	rts

	cnop	0,4
__________________

Dernière modification par CeL 16/02/2010 à 15h52.
CeL est déconnecté   Réponse avec citation
Vieux 16/02/2010, 18h30   #170
chacha
alias FANTOMAS
 
Avatar de chacha
 
Date d'inscription: septembre 2003
Localisation: 4 000 000
Messages: 6 418
Citation:
Posté par CeL Voir le message
pour ceux que ca intéresse :

COURS D'ASM 68000

j'attaque le 2eme chapitre, ça ira mieux bientôt....j'espère

EDIT : Punaise ça me hérisse le poil !!
C'est super intéressant, j'en suis au cours 3.

Par contre, je peux pas essayer les programmes du cours. Où peut-on trouver GENST et MONST cités dans ce cours 3 ? Sur un émulateur ST (lequel ? J'ai trouvé SAINT, mais bon, à part la démo, j'arrive à rien), ou dans le dos (je ne pense pas)).

Aidez-nous à démarrer.

J'ai essayé neodev, mais j'arrive pas avec le dos à démarrer. (merci à Cel, mais je me suis mis le dos à dos !!!)

Dernière modification par chacha 16/02/2010 à 18h45.
chacha est déconnecté   Réponse avec citation
Vieux 16/02/2010, 18h35   #171
ftek
Autiste confus
 
Avatar de ftek
 
Date d'inscription: février 2010
Localisation: Findus city
Messages: 321
C'est méchant l'assembleur, tu passes une heure pour trouver que t'as oublié un # ou un ".b" quelque part, et ça bouffe la vie plus vite que la clope.
D'un autre côté avec le C, ce qui peut être gênant c'est les librairies qui font des choses un peu trop par elles-mêmes et qui laissent pas le contrôle total

Qu'est ce que tu veux dire par "greffer le logo NeoGeo" dans le P1 ? Tu veux que ce soit ton P1 qui fasse le travail du BIOS ?
Si c'est bien ça, faudrait déjà voir ce que le BIOS fait exactement, parce que outre afficher l'intro, il fait des initialisations en même temps. Si il les fait pas (si on zappe l'intro quoi), le jeu démarre pas.

Quand tu rajoutes les sprites, tu perds le max 330 mega... c'est quoi c'bordel, ça doit pas y toucher

Si tu veux pas le logo, normalement t'as juste qu'à commenter le JMP $C00438, ça gêne pas le reste.
Je saisis pas du tout le second code avec le if par contre. Surtout le fait de mettre des instructions (move.b #$0,$320000) dans le header... Ce code là permet vraiment de sauter l'intro et lancer ton programme sans délai ?

chacha: je suis en train de mettre un zip avec ce qu'il faut pour compiler de l'asm sur mon site, je donne le lien dès que c'est bon.
__________________
ftek est déconnecté   Réponse avec citation
Vieux 16/02/2010, 19h02   #172
chacha
alias FANTOMAS
 
Avatar de chacha
 
Date d'inscription: septembre 2003
Localisation: 4 000 000
Messages: 6 418
Citation:
Posté par ftek Voir le message
chacha: je suis en train de mettre un zip avec ce qu'il faut pour compiler de l'asm sur mon site, je donne le lien dès que c'est bon.
Super cool .

Comme je disais à Cel, j'ai la motivation, mais pas les connaissances.

C'est comme mon (seul) saut à l'élastique : Il faut me pousser un bon coup, après, ça roule .
chacha est déconnecté   Réponse avec citation
Vieux 16/02/2010, 20h27   #173
CeL
 
Avatar de CeL
 
Date d'inscription: avril 2007
Localisation: Guyancourt
Messages: 945
Citation:
Posté par ftek Voir le message
Qu'est ce que tu veux dire par "greffer le logo NeoGeo" dans le P1 ? Tu veux que ce soit ton P1 qui fasse le travail du BIOS ?
à ce que j'ai compris c'est le bios qui pilote l'intro, qui lance la zic et fais tourner "NEO.GEO" en se servant des sprites et de la zic à divers endoits(P1, M1,C1,C1). Comme je crée la rom P1 en compilant un programme C, linké avec le code asm common_crt0_cart.s. Cette nouvelle rom P1 ne contient donc que ces infos(le startup asm + mes truc C) et pas le sprite "NEO.GEO".
Donc si je dis pas trop de conneries, le bios déroule l'intro mais cette derniere n'ai pas ce qu'il faut afficher.
=> C'est pourquoi le voulais tenter de greffer le sprite à ma rom au bon à la bonne adresse que le bios puisse la trouver.

Même chose pour le 330 mega, quand je crée la nouvelle rom C1 pour y mettre les sprites (celui de la boule par ex.) elle ne contient plus le necessaire au 330 mega.

Citation:
Posté par ftek Voir le message
Je saisis pas du tout le second code avec le if par contre. Surtout le fait de mettre des instructions (move.b #$0,$320000) dans le header... Ce code là permet vraiment de sauter l'intro et lancer ton programme sans délai ?
Oui, compilé avec snasm68k, on en fait une p1 et en jouant avec le 0 ou 1, l'intro s'affiche ou pas. Je vais faire une video de suite.

Par contre chose rassurante, on a visiblement tous les mêmes soucis, avec DISPLAY_LOGO equ 1, l'intro se déroule toute nickée comme pour moi

Citation:
Posté par ftek Voir le message
Si tu veux pas le logo, normalement t'as juste qu'à commenter le JMP $C00438, ça gêne pas le reste.
Je vais tester ça de suite ^^
__________________
CeL est déconnecté   Réponse avec citation
Vieux 16/02/2010, 21h21   #174
CeL
 
Avatar de CeL
 
Date d'inscription: avril 2007
Localisation: Guyancourt
Messages: 945
Citation:
Posté par ftek Voir le message
Si tu veux pas le logo, normalement t'as juste qu'à commenter le JMP $C00438, ça gêne pas le reste.
ca compile plus en mettant juste en commentaire

Code:
C:\NeoDev\src\samples\cel>as -m68000 --register-prefix-optional crt0_cart.s -o c:\NeoDev/tmp/crt0_cart.o
../../system/common_crt0_cart.s: Assembler messages:
../../system/common_crt0_cart.s:143: Error: invalid byte branch offset

C:\NeoDev\src\samples\cel>
il faut peut être replacer par un autre jmp, je sais pas trop
__________________
CeL est déconnecté   Réponse avec citation
Vieux 16/02/2010, 21h33   #175
Ænema
Ejaculation Fiscale
 
Avatar de Ænema
 
Date d'inscription: avril 2007
Messages: 3 735
Bordel, vous êtes sacrément motivés

Par contre, depuis 2~3 pages et le charabia technique, je suis complètement perdu
Ænema est déconnecté   Réponse avec citation
Vieux 16/02/2010, 22h31   #176
CeL
 
Avatar de CeL
 
Date d'inscription: avril 2007
Localisation: Guyancourt
Messages: 945
Sur la 2eme video, sur l'intro il ne manque que le logo NEO.GEO, ca confirme bien ce qu'on disait car à la rom puzzledp, je n'ai changé que la p1 donc toutes les autres données de l'intro sont bien là et elle s'affichent correctement.

avec DISPLAY_LOGO=0 le 2eme code donne :



et avec DISPLAY_LOGO=1, le même code donne :

__________________
CeL est déconnecté   Réponse avec citation
Vieux 16/02/2010, 22h32   #177
CeL
 
Avatar de CeL
 
Date d'inscription: avril 2007
Localisation: Guyancourt
Messages: 945
Citation:
Posté par Ænema Voir le message
Bordel, vous êtes sacrément motivés

Par contre, depuis 2~3 pages et le charabia technique, je suis complètement perdu
moi aussi
__________________
CeL est déconnecté   Réponse avec citation
Vieux 17/02/2010, 00h22   #178
ftek
Autiste confus
 
Avatar de ftek
 
Date d'inscription: février 2010
Localisation: Findus city
Messages: 321
Citation:
Cette nouvelle rom P1 ne contient donc que ces infos(le startup asm + mes truc C) et pas le sprite "NEO.GEO". [...]
=> C'est pourquoi le voulais tenter de greffer le sprite à ma rom au bon à la bonne adresse que le bios puisse la trouver.
Y'a absolument aucune donnée graphique dans le P1. Le truc de la greffe c'est ce que je disais avec les C, il faut le logo dedans et dire dans ton P1 à quelle adresse il est. Le "max 330 mega" vient du S, pas des sprites.
Essaye de mettre 3 "NOP" à la place du JMP, ça décale peut être tout si tu le commentes juste. J'sais pas comment il marche leur compilateur

Pour le zip désolé j'ai eu une sortie vie sociale ce soir, je pouvais pas rater ça...
Tout est là: http://furrtek.free.fr/index.php?p=crea&a=neogeo&ng=9
__________________

Dernière modification par ftek 17/02/2010 à 02h19.
ftek est déconnecté   Réponse avec citation
Vieux 17/02/2010, 09h06   #179
CeL
 
Avatar de CeL
 
Date d'inscription: avril 2007
Localisation: Guyancourt
Messages: 945
Citation:
Posté par ftek Voir le message
c'est ce que je disais avec les C, il faut le logo dedans et dire dans ton P1 à quelle adresse il est.
Oui j'avais mal compris, en fait à $114 on a un pointeur vers l'adresse du logo ? $1600 pour puzzledp

Citation:
Posté par ftek Voir le message
Edit: c'est $1600 qu'il faut mettre à $114, ça correspond bien avec le 202-p1.bin d'origine.
je vais essayer d'editer mon p1 avec un éditeur hexa et de mettre $1600 à $114 et garder les C originales.

EDIT: ... le temps de trouver un éditeur hexa sans installation, et oui j'ai aucun droit sur le poste que j'utilise
__________________

Dernière modification par CeL 17/02/2010 à 09h20.
CeL est déconnecté   Réponse avec citation
Vieux 17/02/2010, 09h17   #180
CeL
 
Avatar de CeL
 
Date d'inscription: avril 2007
Localisation: Guyancourt
Messages: 945
Citation:
Posté par ftek Voir le message
Essaye de mettre 3 "NOP" à la place du JMP, ça décale peut être tout si tu le commentes juste. J'sais pas comment il marche leur compilateur
En mettant les 3 NOP, hélas pas d'intro mais écran noir

En mettant "jmp main" à la place, ca boot sans intro bingo...
...En fait non, on saute bien l'intro, ca affiche le début, à savoir le text "cel pour ngf" + le sprite au 1er emplacement puis ca reste figé la dessus

Ca semble logique puis qu'on saute directement au main() au lieu de lancer l'intro, sans finir l'initialisation.

Faudrait peut-etre trouver une instruction pour sauter juste en dessous au "0:"
__________________
CeL est déconnecté   Réponse avec citation
Réponse


Outils de la discussion
Modes d'affichage

Règles de messages
Vous pouvez ouvrir de nouvelles discussions : nonoui
Vous pouvez envoyer des réponses : nonoui
Vous pouvez insérer des pièces jointes : nonoui
Vous pouvez modifier vos messages : nonoui

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : oui
Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 11h17.


Édité par : vBulletin® version 3.6.8
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd. Tous droits réservés.
Version française #12 par l'association vBulletin francophone
Neo-Geo Fans !