Quand pancez-vous?

Programmation avancée de jeux en PureBasic
meganet
Messages : 317
Inscription : jeu. 20/janv./2005 22:00

Quand pancez-vous?

Message par meganet »

Salut,
je vais faire un jeu de baston en 3d avec des potes et je voulais savoir si je ne pourrai pas faire mon proppre noyau sur cd-rom pour éviter le piratage du jeu en écrivant dans le secteurs de boot sertain code en assembleur qui ne ce copirai pas car interprété lors de la lecture.
Je ne c'est pas comment cela passerai au niveau des utilisateur en gros, pas besoin de windows, juste besoin du cd-rom et de botter dessu!
Vous en pencez koi?
C'est trop hard ou pas?
Merci de bien vouloir donner votre avis.
Oliv
Messages : 2117
Inscription : mer. 21/janv./2004 18:39

Message par Oliv »

ça peut être bien, mais niveau prtection je ne suis pas sur...... Par contre çe serait TRES dur à mon avis
Lukky
Messages : 340
Inscription : dim. 25/janv./2004 12:22
Localisation : Morbihan

Message par Lukky »

Moi j'en pense que tu devrais moins fumer.

Idem pour le développement d'un OS.

JL
Quand on me gonfle trop j'éclate, sinon ça va !
meganet
Messages : 317
Inscription : jeu. 20/janv./2005 22:00

lol

Message par meganet »

lol salut!
Pour le jeu c'était juste une hidée mais c'est vrai que ça crai chaud.
Mais pour l'os, c'est faisable!
Oliv
Messages : 2117
Inscription : mer. 21/janv./2004 18:39

Message par Oliv »

Lukky a écrit :Moi j'en pense que tu devrais moins fumer.

Idem pour le développement d'un OS.

JL
Je pense que tu n'as pas tord..... :lol:
A au fait Maganet, jétais tombé là-dssus il y a longtemps, ça renvoi vers des sites qui peuvent t'être utiles, bonne chance :
http://www.developpez.net/forums/viewto ... highlight=
http://www.developpez.net/forums/viewto ... ?p=1211781
meganet
Messages : 317
Inscription : jeu. 20/janv./2005 22:00

qui c'est qui à pas tor?

Message par meganet »

salut,
olive, quand tu dit que quelqu'un à pas tor tu parle de ki?
Oliv
Messages : 2117
Inscription : mer. 21/janv./2004 18:39

Message par Oliv »

De lukky :wink:
Il va falloir beaucoup de temps pour que ton "OS" soit exploitable, donc pour y intégrer un jeu 3D........
nico
Messages : 3702
Inscription : ven. 13/févr./2004 0:57

Message par nico »

C'est très impressionnant, mais la question qu'on se pose tous; c'est ton cursus de programmateur l'est-il autant.

En même temps, pour y croire il faudrait que nous même on se mette à fumer!

Commence par poster du code sur le Forum dans un premier temps!

:)
Polo
Messages : 612
Inscription : sam. 03/juil./2004 20:14

Message par Polo »

L'idée est bonne, mais pas réalisable.
Enfin, à part si tu est un boss, je vois pas comment tu compte faire, si tu veux créer le jeu en Purebasic, il faudrait en plus que tu émule toutes les API windows, que tu utilises le format pe de windows, etc...
A toi tout seul, tu vas avoir du mal, faut une grosse équipe de pro pour faire ça, et plusieurs années...
Oliv
Messages : 2117
Inscription : mer. 21/janv./2004 18:39

Message par Oliv »

Polo a écrit :L'idée est bonne, mais pas réalisable.
Enfin, à part si tu est un boss, je vois pas comment tu compte faire, si tu veux créer le jeu en Purebasic, il faudrait en plus que tu émule toutes les API windows, que tu utilises le format pe de windows, etc...
A toi tout seul, tu vas avoir du mal, faut une grosse équipe de pro pour faire ça, et plusieurs années...
Et même plus, il y a un projet d'OS compatible windows, je ne sais plus son nom mais, pour le moment ils sont entrain d'essayer de faire fonctionner les applications de NT4 et avec beaucoup de mal
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Message par Backup »

moi je sais que ce mec raconte des conneries , car lorsqu'on s'exprime comme lui avec une faute a chaques mots , bref ,ça sens le manque d'ecole

et mem Django qui a appris a jouer de la guitare en ecoutant des vieux vinils
n'a jamais cherché a faire un OS !! :D :lol: :lol:
Dernière modification par Backup le sam. 11/juin/2005 17:47, modifié 1 fois.
gansta93
Messages : 1448
Inscription : jeu. 26/févr./2004 11:17
Localisation : Le Village
Contact :

Message par gansta93 »

:oops:
Oliv
Messages : 2117
Inscription : mer. 21/janv./2004 18:39

Message par Oliv »

Argh, ça fait plusieurs fois que j'y pense et personne ne l'a fait (ça m'étonne de toi Dobro) : Pour répondre à la question je pance entre 8 heures et 21 heures, c'est tout :oops:




:jesors:
meganet
Messages : 317
Inscription : jeu. 20/janv./2005 22:00

il y en à du code!

Message par meganet »

Du code il y en a sur mon forum.
Mais bon je vais aussi le mettre ici!

Voilà le code de boottsect.asm ou http://serveur.site-meganet.com/os/boot/bootsect.asm.

%define BASE 0x100 ; 0x0100:0x0 = 0x1000
%define KSIZE 1

[BITS 16]
[ORG 0x0]

jmp start
%include "UTIL.INC"
start:
mov [bootdrv],dl ; recuparation de l'unite de boot

; initialisation des segments en 0x07C0
mov ax,0x07C0
mov ds,ax
mov es,ax
mov ax,0x8000 ; stack en 0xFFFF
mov ss,ax
mov sp, 0xf000

; affiche un msg
mov si,msgBoot
call afficher

; charger le noyau
xor ax,ax
int 0x13

push es
mov ax,BASE
mov es,ax
mov bx,0
mov ah,2
mov al,KSIZE
mov ch,0
mov cl,2
mov dh,0
mov dl,[bootdrv]
int 0x13
pop es

; initialisation du pointeur sur la GDT
mov ax,gdtend ; calcule la limite de GDT
mov bx,gdt
sub ax,bx
mov word [gdtptr],ax

xor eax,eax ; calcule l'adresse lineaire de GDT
xor ebx,ebx
mov ax,ds
mov ecx,eax
shl ecx,4
mov bx,gdt
add ecx,ebx
mov dword [gdtptr+2],ecx

; passage en modep
cli
lgdt [gdtptr] ; charge la gdt
mov eax,cr0
or ax,1
mov cr0,eax ; PE mis a 1 (CR0)

jmp next
next:
mov ax,0x10 ; segment de donne
mov ds,ax
mov fs,ax
mov gs,ax
mov es,ax
mov ss,ax
mov esp,0x9F000

jmp dword 0x8:0x1000 ; reinitialise le segment de code


;--------------------------------------------------------------------
bootdrv: db 0
msgBoot db "Chargement du noyau et passage en 32 Byte. Veuillez patianter...",13,10,0

;--------------------------------------------------------------------
gdt:
db 0,0,0,0,0,0,0,0
gdt_cs:
db 0xFF,0xFF,0x0,0x0,0x0,10011011b,11011111b,0x0
gdt_ds:
db 0xFF,0xFF,0x0,0x0,0x0,10010011b,11011111b,0x0
gdtend:

;--------------------------------------------------------------------
gdtptr:
dw 0 ; limite
dd 0 ; base


;--------------------------------------------------------------------
;; NOP jusqu'a 510
times 510-($-$$) db 144
dw 0xAA55

Et voilà le code du noyau karnel32.asm ou http://serveur.site-meganet.com/os/karnel/karnel32.asm.
[BITS 32]
[ORG 0x1000]

; Affichage d'un message par ecriture dans la RAM video
mov byte [0xB8000],'B'
mov byte [0xB8001],0x57
mov byte [0xB8002],'O'
mov byte [0xB8003],0x57
mov byte [0xB8004],'N'
mov byte [0xB8005],0x57
mov byte [0xB8006],'J'
mov byte [0xB8007],0x57
mov byte [0xB8008],'O'
mov byte [0xB8009],0x57
mov byte [0xb8010],'U'
mov byte [0x8011],0x57
mov byte [0x8012],'R'
mov byte [0x8013],0x57
mov byte [0x8014],'!'
mov byte [0x8015],0x57

end:
jmp end

"Se code ne fait rien que boucler et afficher un message mais c'est juste un code de teste je suis entrain de bosser sur le nouveau"!

C'est code son fait en suivant la sintaxe du compilateur nasm.
Que vous pouvez télécharger ici (avec tout les fichier néssécert à c'est code): http://serveur.site-meganet.com/os/compilateur.zip.
Voilà!

Et pour le jeu c'était juste une hidée que finalement je vais lesser tomber!
gansta93
Messages : 1448
Inscription : jeu. 26/févr./2004 11:17
Localisation : Le Village
Contact :

Message par gansta93 »

Une question sans importance, mais pourquoi karnel ?
[edit]Si c là-bas que tu stoque touts les fichiers de l'OS, ça serait bien que l'on ait autre chose qu'un 404 quand on fait http://serveur.site-meganet.com/os/ comme ça on peut mieux voir l'avancée du projet.[/edit]
Répondre