Bienvenue, Invité. Merci de vous connecter ou de vous inscrire.
Avez-vous perdu votre e-mail d'activation ?

Connexion avec identifiant, mot de passe et durée de la session

UserBox

Welcome, Guest.
Please login or register.
 
 
 
Mot de passe oublié?

Voir les contributions

Cette section vous permet de consulter les contributions (messages, sujets et fichiers joints) d'un utilisateur. Vous ne pourrez voir que les contributions des zones auxquelles vous avez accès.


Sujets - Monos

Pages: [1] 2 3 ... 20
1
Le Topic des joutes / Joute 2017
« le: 05 décembre 2016 à 04:48:58 »
Bonjour
Nous avons la nouvelle date et le lieu des joutes.

Et oui les Joutes du Téméraire reviennent encore est toujours à la charge. Cette fois la manifestation se déroulera le 25-26 mars 2017 à l’ESSTIN (lieu de l’édition 2013).

2
Vos créations / Amiga Retro Creator.
« le: 30 octobre 2016 à 07:15:11 »
Deux vidéos test sur mon Amiga 1200 (enfin émulateur)

&feature=youtu.be

J'ai pris une formation de codage sur Gamecodeur.fr J'apprend et j'adapte ça sur l'amiga.
J'adore programmer cette machine en basic amos.

C'est vraiment sympathique.

C'est quand même vachement bien le nouveau plugin pour youtube du fofo, ça affiche directement les vidéo xd

3
La Taverne / Ecran PC
« le: 22 août 2016 à 07:46:08 »
Pour les infographistes vous avez quoi comme écran ?
Je commence à me pencher sur des écrans pour la photo.
Un écran principale et un secondaire.

Pour le moment j'ai relevé quatres écran.
-Le Dell Ultrasharp U2413 (500 euro)
- Le Dell Ultrasharp UP2716D (525€)
-Le Eizo CS2420 (800 €)
-Le BenQ SW2700PT (700€)

Mes deux critères c'est une Dalle IPS
Et Large Gamut Adobe RVB

Je m'en fous de la 4k.
Je suis en train de dresser une liste d'écran donc Helpping si vous avez des conseilles, ou connaissez des écrans que je regarde.

4
QG du Comptoir / Les balises Youtubes !
« le: 16 août 2016 à 16:43:30 »
Nouveau plugin et BB code pour les vidéos Youtube.
[youtube]{youtube link}[/youtube]
[youtube width=x height=y]{youtube link}[/youtube]
[yt]{youtube ID}[/yt]
[yt {parameters}]{youtube ID}[/yt]
[yt_user]{username}[/yt_user]
[yt_user {parameters}]{username}[/yt_user]
[yt_search]{search query}[/yt_search]
[yt_search {parameters}]{search query}[/yt_search]

where width and height is specified by x and y.  If width and height aren't specified, width is 100% of the post display area and height in a 16:9 ratio to the width.

The yt_user bbcode will show videos by the specified YouTube username.

The yt_search bbcode will show videos matching the provided search phrase.


Optional parameters and values for all YouTube bbcodes are:
o width = Specifies the width of the iframe area.
o height = Specifies the height of the iframe area.
o start = Specifies how far into the video to start at.  Valid formats: "Seconds" or "Minutes:Seconds"
o end = Specifies how far into the video to stop at.  Valid formats: "Seconds" or "Minutes:Seconds"
o autoplay = 1, yes, on or true
o color = red or white
o theme = dark or light
o loop = 1, yes, on or true
o controls = 0, no, off, hide or false
o showinfo = 0, no, off, hide or false
o privacy = 1, yes, on or true


5
Général / Scrolling en tableau
« le: 27 juillet 2016 à 06:14:57 »
Voici une petite formule/Astuce que j'ai trouvé ce matin qui peut plaire !
Le Scrolling type "Tableau" ! Donc qui ne suit pas le joueur mais change quand le joueur sort de "l'écran"

Pour cela fait faite votre "niveau" sur une plus grande scène par apport à la grandeur de la fenêtre d'affichage.

Maintenant pour le scrolling caméra à effet tableau la formule est simple.

=>Condition Toujours
=>Centrer l'affichage en X
(Position X/taille X de la fenêtre)*la taille X de la fenêtre  + la moitié de la taille X de fenêtre.
Pareille pour centrer l'affichage en Y mais cette fois si avec la hauteur.

Explication :
(Position X/taille X de la fenêtre)
Cette division va permettre de calculé dans qu'elle partie se trouve le personnage.
Les chiffre après la virgule sont zapés.

*la taille X de la fenêtre
Recalcule le point de départ en pixel ou se trouve la nouvelle zone à afficher.

la moitié de la taille X de fenêtre.
Permet de centrer la caméra dans la zone.

C'est pareil bien sur avec la hauteur !

Voila pour cette petite astuce.



6
Vos créations / SysOff
« le: 07 mai 2016 à 10:20:00 »
Le SysOFF


Yop les gens, je vous présente mon projet actuel. Un système virtuelle old school. (Une console virtuel pour faire simple)
J'avais envie de créer "une console ou un micro ordinateur 8 bits", j'avais fais une paire de test avec fusion mais de bien concret jusque à ce que je tombe sur l'interpreteur Chip-8 et des articles sur le comment créer un emulateur du chip-8. (Ou re créer son interpreteur pour être exacte)

Et je me suis lancé dans ce projet mais je me dévie un peu du chip-8 pour mon propre interpreteur.
Pour commencer c'est quoi le Chip-8 ? C'est un "processeur virtuel" qui pouvait tourner véritablemment sur de vielle machine et des calculatrices. Il simule des registres, et utilise son propre langage machine.
Le Chip-8 intégre 34 instructions. Nous sommes loins du nombre d'instruction existant des deux procos 8bits qui se sont bataillé à cette époque. Le chip-8 est donc un bon exercise pour apprendre à créer un émulateur...

Le interpreteur je l'appelle le "SysOff" pour tout simplement Système Offgame.
"Le proco" le ChipOFF.

Le procésseur comprend les opcodes (instruction machine) du Chip-8 avec l'ajoute d'autre opcode qui sont déja en place ou qui sera mis en place mais n'est pas compatible avec les fichiers binaire dédié à au chip-8 pour la simpel raison que pour décoder une instruction je préférer garder l'ordre poids Fort + poids Faible d'un double octets. La norme du chip-8 est l'inverse.

Caractéristiques
Le SysOff permet d'afficher 90 points sur 40 seulement deux couleurs affichable (Noir/Blanc)
La Ram est de 4096 octets. (4ko) Les 512 premiers octets sont réservés au système
La Vram est de 512 octets qui ne sont pas emputé au 4ko.  Un octet donne 8 points à l'écran.
Au niveau des contrôles 5 boutons. (Haut,Bas,Gauche,Droite,Feu)

L'architecture
16 Registres 8 bits(De 0 à 15 ($0-$f)) donc le derniers fait office de Registre de Drapeau.
Un Registre 16 bits (I) qui est un pointeur d'adresse.
Un Registre 12 bits (PC) qui est le pointeur de la prochaine instruction à interpréter

Un Registre compteur de son 8 bits. C'est simple si le compteur de son est supérieur à 0, ça lance un Bip
Un Registre Compteur de jeu 8 bits
Les deux compteurs sont décrémenté de 1toutes les 4 instructions.

La pile qui permet de mémoriser 16 Adresses. (Mode LIFO, Derniers entrée / premier à être sortie)
Et son registre 8 bits qui permet de pointer sur la pile la plus haute.
(32 octets + 1 pour le registres). Mémoire interne dédié pour la pile)

Coder le SysOFF
L'interpréteur se code en langage machine.
Le programme permet de lire un fichier binaire et mémoriser son contenu a partir de l'adresse 512.
Pour mes tests "je code en dure" les mémorisations d'instruction dans la mémoire.
Un "compilateur" est prévus plus tard !

Le langage utilisé pour ce système virtuel
Le langage utilisé est le Dark Basic. C'est simple à mettre en oeuvre, rapide, pour un prototype c'est sympathique.
La pile et les registres sont mémorisés dans des tableau.
La VRAM aussi.

La RAM (les 4k) eu parcontre sont directement mémoriser dans la mémoire du PC ! La dark basic permet de créer des blocks de mémoire et pouvoir y travailler.

Du boulot !
Du boulot est encore à faire.
Ajouter des opcodes comme par exemple pouvoir manipuler la pile autre qu'avec PC. J'ai encore un peu de "places"
Continuer la mémorisation de la police d'écriture.(Pour le moment je suis à K)
Gestion du système !
Création d'exemple
Et créer un compilateur


Les opcodes
Voici les opcodes qui fonctionne. (enfin normalement si ça bug pas et plus ou moins xd)

$00E0
Effacer l'écran.
La VRAM est réinitialisé à 0 ce qui efface l'écran.

$00EE
Retour de la sous routine.

Mémorise l'adresse de la Pile dans le Compteur de programme pour la prochaine adresse d'instruction.
La pile est décrémenté de 1

$1nnn
Sauter à une adresse.

Le Compteur de programme est modifié en fonction de la valeur NNN

$2nnn
Aller à une sous routine
Le compteur de programme est mémorisé dans la pile
Saut à l'adresse nnn

$3xkk
Sauter la prochaine instruction si kk est égale de la valeur contenue dans le registre x
La valeur du registre X est comparé a la valeur kk. Si il y a égalité, le PC est incrémenté de 2 pour sauter la prochaine instruction.

$4xkk
Sauter la prochaine instruction si kk est différent de la valeur contenue dans le registre x
La valeur du registre X est comparé a la valeur kk. Si les deux valeurs sont différents, le PC est incrémenté de 2 pour sauter la prochaine instruction.

$5xyo
Sauter la prochaine instruction si le contenu  du registre X est égale au contenu du registre Y.
La valeur du registre X est comparé a la valeur du registre Y. Si il y a égalité, le PC est incrémenté de 2 pour sauter la prochaine instruction.

$6xkk
La valeur kk est chargé dans le registre X

$7xkk
La valeur kk est ajouté au contenu du registre X

$8xy0
La valeur contenu dans le registre Y est chargé dans le registre X

$8xy1
Le Registre X est remplacé par l'opération logique du contenue du registre X (or) Registre Y

$8xy2
Le Registre X est remplacé par l'opération logique du contenue du registre X (and) Registre Y

$8xy3
Le Registre X est remplacé par l'opération logique du contenue du registre X (xor) Registre Y

$8xy4
Le contenu du registre Y est éditionné au contenu du registre X, avec le registre 15 = 1 si c'est supérieur à 255. (Sinon le registre 15 passe à 0)
$8xy5
Le contenu du registre Y est soustrait au contenu du registre X, avec le registre 15 = 1 si c'est inférieur à 0 (Sinon le registre 15 passe à 0)

$8xy6
Décalage de 1 sur la droite du registre X
Le Registre F prend la valeur du bits plus à droite de X

$8xy7
Le contenu du registre Y est soustrait au contenu du registre X.
Si la valeur est négative alors le registre F prend la valeur de 1 sinon elle devient 0
 

$8xyE
Décalage de 1 sur la gauche du registre X
Le Registre F prend la valeur du bits plus à droite de X

$9xy0
Si le contenu du registre X est différent du contenu du registre Y alors on saute la prochaine instruction.Le Pc est incrémenté de 2

$Annn
Le registre I prend la valeur de nnn

$Bnnn
Saute à l'instruction contenu à l'adresse nnn + le contenu du registre 0

$Cxkk
Le registre X prendre une valeur aléatoire entre 0 et la valeur kk

$Dxyn
Affiche le « sprites »  à la position de la valeur contenu au registre x et Y. Charge les 8 premier bites a l'adresse contenu dans le registre I. Exécute n ligne.

$Ex9E
Saute la prochaine instruction si le numéros du bouton utilisé est égale au contenu du registre X

$ExA2
Saute la prochaine instruction si le numéros du bouton utilisé est différent au contenu du registre X

$Fx00
Charge le contenu du registre X à l'adresse contenu dans le registre I

$Fx07
Le Registre X prend le contenu du registre compteur de jeu

$Fx0A
Attendre qu'une touche est utilisé. La valeur de la touche est mémorisé dans le registre x

$Fx15
Le registre compteur de jeu prend le contenu du registre X

$Fx18
Le compteur de Son prend la valeur contenu dans le registre X

$Fx1E
Le contenu du registre X est additionné au contenu du registre I.

$Fx29
Mémorise dans le registre I, l'adresse de départ ou se trouve le numéros du caractére à afficher contenu dans le registre X 

$Fx33
Le contenu du registre x est découpé en centaine, dizaine, et unité (base de 10) et placé dans l'adresse I,I+1,I+2

$Fx55
Charge le contenu du registre 0 à X à l'adresse pointant de I à I+X

$Fx65
Charge le contenu de l'adresse I à I+X dans le registre 0 à X

Divers
Lien du code source actuel pour information.
(Version test 00,00,05)
Lien

7
Jeux-Vidéos / Article Rétro (Amstrad)
« le: 02 mars 2016 à 07:02:29 »
On m'a demandé sur Oniro de parler de ma passion du vrais rétro. Mais je vois que finalement ça fais un flop xd Je ne pense plus publier la ba mais j'aime un peu écrire des "articles" cela me permet aussi de coucher par écrit mes connaissances et m'aide à apprendre à connaitre une machine en particulier. L'amstrad 6128. Voici donc un article que j'ai écris sur les processeurs. Il y a un peu d'abus de langage, et de simplification...
Certain doivent savoir tout ça et bien plus que moi mais ça peut être intéressant pour d'autre.

A vous de voir si vous voulez que je continue d'écrire d'autre articles/connaissance sur cette machine ou pas. A vous de voir.

Le Processeur!
Coucou, voici un petit pitch sur les procos !!!
Alors c'est quoi c'est un processeur ? C'est le coeur d'une machine électronique. (Console,Ordinateur…) C'est lui qui va travailler, et organiser tous le bousin. A l'heure actuel au moment ou j'écris ses lignes, le proco est en mode, 'bon je récupère la valeur de la touche que monos est entrain d'utiliser, je la stocke ici, après cette valeur envoyer que l’envoie ici….
Puis il ne fait pas que ça, un bon vrais petit esclave qui bosse bien, mieux que les chinois à nonor sur Aëdemphia…

Bon sérieusement, oui le proco est un des organes les plus important d'un pc ou d'une console de jeu.(qui sont maintenant des pc avec moins de possibilité mais passons)

Il y a quoi dans un processeur ? Comment il fonctionne ? Pour répondre un peu a cette question je vais parler d'un vieux processeur dit 8bits, Le Z80 ! Et beaucoup d'entre vous avez eu affaire à ce processeur ! Il équipe des vieux micros comme l'amstrad, et le standard MSX, au niveau console je peux en cité 4 de mémoire, La Master Système de chez Séga, La Mégadrive de Chez séga. (C'était é la pour la rétrocompatibilité et pour manipuler le chipet musical), la Game Gear de chez Séga et Nintendo utilise une version lite pour sa Game Boy !

Bon un processeur possède de la mémoire internet. Limité  sur un système 8 bits mais très rapide. Nous les appelons les registres.
Le Z80 possède  donc des registres dit 8 Bits nommé arbitrairement.
A,B,C,D,E,F,H,L
Chacune de ses 8 huits registres peuvent mémoriser un valeur entre 0 et 255. (1 Octet donc)
Le Registre A est ce que nous appelons l'accumulateur. Il est reliés de telle sorte que sur certaine instruction, on passe par lui pour gagner de la rapidité, et de la mémoire. (Souvent tout ce qui touche au calcule)
Le Registre F est le registre des Drapeaux. (Flags) il sert à mémoriser des tas de choses, comme une retenue, ou si A est égale à 0…

Sur le Z80 on peux combiner par paire les registres. Le registre H et L sont souvent regroupés pour travailler avec des Adresses mémoires.  (Ah j'ai perdu du monde la, je reviendrais dessus)

Le Z80 possède aussi des registres dit 16 bits. Qui permet donc de mémoriser une valeur en 0 et 65535

Nous avons dans ce domaine le registre PC qui lui permet donc de retenir la prochaine adresse mémoire à lire. (Le registre PC s’agrémente de 1 à chaque fois qu'il est sollicité) , le registre SP qui est le pointeur de pile. (La j'ai encore perdu du monde,  En gros c'est une valeur qui est l'adresse mémoire qui contient elle même une adresse mémoire bon oublions) et deux autres registre 16 bits nommé IX et IY  qui est utilisé dans des instructions du proco (instruction ? Oué je vais en parler)

Voici en gros ce que possède le proco Z80 en mémoire.

Un deuxième processeur 8 bits fut souvent utilisé par le passé.
Le Motoral 6502. Proco du C64, de la nes (avec modification)
Ceci dit je ne le connais pas vraiment.

Je parlais des adresses mémoire. C'est quoi une adresse mémoire ? C'est simple c'est une valeur qui permet d'identifier une case mémoire de votre ordinateur et chaque case mémoire c'est un octet. (8 bits, une valeur entre 0 et 255)
Donc un pc avec 4Go, ba c'est  4 000 000 000 de cases environs avec chacun un numéros.
Donc votre proco va aller déposer des valeurs , ou l'inverse les lires. C'est ce que nous appelons l'adressage de mémoire.

Petit information on dit souvent qu'un proco 32 bits ne peux pas utiliser plus de 4Go pourquoi ?
Voici une supposition « Windows 32 » ne peux manipuler au maximum des valeurs comme son nom l'indique de 32 bits. (On peux foutre Windows 32 sur un proco 64 bits donc la c'est le logiciel qui bride) la valeur maximum de 32 bits est 4 294 967 295
Voilà pourquoi cette limitation.  Encore un petit truc, c'est la limite que windows 32 peux travailler en « même  temps ».  Il existe des bidouilles qui permet de sauter cette limite en switchant une partie de la mémoire par une autre !!! (La mémoire Paginé)

Maintenant passons sur 8bits. Qu'elle est la mémoire maximum disponible sur un proco 8 bits ? Enfin nous allons parlé du Z80.
256 octet ?
Bien essayé mais non.
Nous avons le registre PC qui permet de mémoriser une adresse mémoire. C'est un registre 16 bits.
Et 16 bits c'est 65535
Donc la mémoire disponibles maximum est de 65 355 octet. Sois 64k dans le langage que nous utilisons le plus souvent.

Ceci dit comme pour windows on peux tricher et échanger des morceaux de la ram par d'autre. Ce que l'amstrad CPC 6128 fait avec ses 128ko de mémoire vive.

Bon plus haut j'ai parlé d'instruction !
Le processeur c'est con, il ne connais que deux chiffre. 0 ou 1. Ouvert ou Fermé.  On ou OFF. Courant ou pas de Courant ! C'est le système Binaire. Et sur Rpg Maker vous l'utilisez souvent avec les interrupteurs par exemple.  Votre ordinateur, c'est continuellement.

Alors concrètement comment ça fonctionne ?
C'est simple, si je vous dit : Et toi mec tu vas aller de l'autre coté de la falaise, une fois en place, si je lève mon bras, tu lances une pierre. Sinon tu ne fais rien. L'exemple est con je veux bien l'avoué.
La on a donc deux situations, soit il ne fait rien, soit j'ordonne à mon ami de jeter une pierre.
Ceci dit seulement deux actions c'est mince. Je vais chercher un ami qui a coté de moi va aussi lever ou pas son bras avec moi. On passe donc à 4 ordres possible à donner à mon copain de l'autre coté de la falaise. Et si je veux continuer à ajouter à mon catalogue plus d'ordre, j'ajoute un 4em gus à coté moi, voir plus. Voyons nous sommes 8. Ce qui nous donnes 256 possibilités d'ordre codé sur un bras non levé (0) ou un bras levé (1)

Le proco c'est la même chose. Enfin presque car lui c'est pas des Bras que nous levons xd mais on lui injecte des 0 et des 1. Chaque groupes de 8 chiffres dans une case mémoire (1 octet donc)  est potentiellement une instruction.  (Ou un départ d'instruction car sur certain ordre, il faut plusieurs octet ce qui augmente le nombre d'instruction potentiellement connus du proco)

Le proco va lire le contenue du registre PC qui est une adresse mémoire, va aller chercher la valeur contenue à cette adresse, va incrémenter de 1 le PC, va déchiffrer l'ordre  et ensuite l’exécuté !

Exemple dans PC il y a l'adresse 3000.
Dans 3000, la valeur est 4. Il décrypte et pour le Z80, il sait qu'il doit ajouter 1 à la valeur contenue dans le registre A. (Véridique)

Par contre sur un autre processeur c'est peut être l'inverse. Il faut retirer 1 à la valeur contenue de son accumulateur  ou je ne sais pas quoi.

Ceci est le langage Machine ! Le pure langage machine ou chaque octet est une instruction que le processeur peut comprendre… Et chaque processeur à son propre langage ou presque car il existe des familles qui partage des instructions pour être compatible. C'est le cas des « X86 » ou la base est le même langage mais suivant les procos (Intel,AMD, et leurs différente Famille I7, Pentium …)
possèdé des instruction en plus ou différent.

Oué mais programmer en 0 et en 1 c'est pas top heins ! Risque d'erreur, et tout ça.
C'est vrais. Et c'est pour ça que l'homme s'est simplifier la vie et qu'il  a créer ce que nous appelons le langage « assembleur » .

Ajouter  1 à la valeur contenue dans le registre A ! Dans un assembleur Z80 on pourra écrire
Inc A

On lance la compilation, le programme va voir inc A et va remplacer tout ça par 4
(A vrais dire il va remplacer ça par 00000011 système binaire !!!)

Et peux importe de toute façon le langage utilisé c'est la même chose. En C quand on compile à la fin ce sont des 0 et des 1 compréhensible par le processeur !

Et les langages interprété , (Java?) C'est pareil. Interpréteur va lire l'instruction, et le transformer en binaire pour que la machine puisse comprendre. (C'est plus lent que compiler même si sur nos proco actuel, c'est moins flagrant à voir)

Mais le proco ne sais pas simplement ajouter 1 à un registre ? On serais dans le caca si il y avait que  ça…
Bien sur que non. Il y a beaucoup d'instruction, même dans un proco 8 bits.
Le Z80 permet de transférer la valeur contenue dans un registre dans une case mémoire, faire l'inverse.  Faire des additions, des soustractions. (Mais le z80 ne sais pas multiplier par exemple il faut écrire la « fonction »,  faire des boucle, sauter dans une autre case mémoire, tester un bit contenue dans une case mémoire, faire des rotations de valeurs, ajouter une valeur sur la pile, Modifier A par la valeur contenue dans l'adresse mémoire pointé par le double registre HL (les pointeurssssssss)

Un programme informatique c'est que ça. Déplacement de mémoire.

Décryptage d'un programme Assembleur du Z80
Même pour un proco, il existe plusieurs logiciel d'assembleur. Il existe même des assembleurs pour « compiler » sur une machine A et que cela tourne sur une machine B. (Cross Dev)


Voici un vieux test que j'ai fais il y a plus d'un an. De mémoire et en fonction de mes notes cela permet de faire avancer des battlecharset réalisé en lettre qui ont était redéfini.


L'assembleur que j'ai utilisé demande que chaque ligne soit numéroté comme les anciens basics. D'autre assembleur ne demande pas ça. C'est le premier que j'avais utilité donc je n'ai pas cherché plus loins.

Ligne 10 :
Org &A000
Ceci n'est pas du « code machine » c'est une information qui dit que le programme sera stocké à la case mémoire &A000
&A000 c'est une valeur Hexadécimale. Plus facile à lire que des bits.

20 LD A,0
C'est une ligne qui sera transformer en bits ! LD veux dire pour cette assembleur (et les Z80) Charger. (Load => LD), A c'est le registre de l'accumulateur, et 0 c'est la valeur à placer dans le registre A.  Sur d'autre proco le cela ne sera pas LD mais Move.  ET A peut être représenter par R1 par exemple.
Bon donc la A = 0

30 LD BC,0
Comme la ligne 20, on réunis les deux registre BC et on injecte 0.

40 LD L,(IX )
C'est intéressant ça. IX est entre parenthèse donc c'est un pointeur.
Le registre IX contient une Adresse mémoire. On donc aller à cette adresse mémoire, prendre ça valeur et la charger dans L !

La ligne 50 fait pareil avec H sauf que nous allons chercher à une adresse plus loin que celui contenue dans IX (IX+1)

Concrètement sur ses deux instructions, j'ai du en appelant le programme machine envoyé une valeurs qui s'est logé dans IX pour la ressortir et la travailler ici.

60 BOUCLE. ADD HL,BC
Une belle ligne. BOUCLE. Est une étiquette. ADD HL,BC c'est une adition.
On ajoute à HL le contenue de BC donc la à l'heure actuel on fait HL+0
HL est la réunion des deux registre H et L pour former un registre 16 bit !

70 LD D,H
Simple à comprendre on place le contenue de H dans le registre D
80 LD E,L
Pareil on place le contenue de L dans E

90 LD BC,8
On  place la valeur 8 dans le double registre BC.

100 SBC HL,BC
HL=HL-BC donc une soustraction.

110 LDIR
LDIR est tout simplement une commande pour déplacer plusieurs case mémoires consécutive dans un autre bloc.
On regarde le contenue de HL qui est une adresse, on regarde aussi DE qui est une adresse aussi. On va chercher la valeur à l'adresse pointé par HL, et on la place dans la case mémoire pointé par DE. Ensuite cette commande agrémente de 1 l'adresse contenue dans DE et HL et on décrémente de 1 la valeur contenue dans BC. On continue l’opération jusque que BC=0 Et bomme dans cette exemple BC vaut 8, on fait ça 8 fois.

120 Ld BC,2048
On mémorise dans BC, la valeur 2048 qui correspond à un saut ligne sur l'asmtrad, j'en parlerais plus tard.

130  INC A
On incrémente A
140 CP 8
CP c'est un Test. La on test si A = 8. Si c'est le cas dans le registre F un petit bit se mettre à 1 (je simfplifie

150 NZ,BOUCLE
Si le teste de la ligne 150 est faux on retourne à l'étiquette Boucle (donc on fait ça 8 fois aussi pour 8 lignes)

160 Ret
Retour ! En gros le programme assembleur redonne la main dans l'exemple au programma Basic de l'amstrad.


Voici un petit exemple qui permet donc de déplacer un personnages montrés sur la capture plus haut.

Le langage machine est pratiquement obligatoire sur les vieux ordinateurs, et console pour tirer parti de la puissance des machines surtout au niveau graphismes. Les vieux ordis fut souvent équipé du langage Basic en interprété et la la lenteur se fait sentir considérablement même si il est possible de créer des jeux en 100 % Basic.

Connaître le langage d'un proco n'est pas suffisant pour programmer. Il faut connaître la machine aussi. L'Amstrad et la/le Game Boy possède le même langage mais par la même architecture.
Injecter ce bout de programme dans la game boy aura très certainement d'autre effet que de déplacer   8 lignes verticales sur X pixels à gauche même si le proco va savoir décrypter tout ça.

Le potentiel problème de l'assembleur (et donc du langage machine) c'est qu'il est très peux portable. Plus facile sur les même proco mais quand on change proco c'est terminer !

Pour cela que des langages t'elle que le C par exemple existe par exemple. Beaucoup plus facile pour le programmeur de porter son programme. Enfin presque.


Voilà, c'était un petit paragraphe sur le proco et un le Z80. J'ai simplifié des choses, un peu abus de langage.  Le prochain pavé si il y a toujours des lecteurs qui veulent bien (ça c'est pas sur) c'est la présentation de « L'Amstrad » et un peu de son Hadware.

Voilou.





8
Le Topic des joutes / Les joutes de 2016 (Nancy)
« le: 27 février 2016 à 18:36:40 »
les Joutes aurons lieu le 19-20 novembre 2016 à l'IUT de Nancy-Brabois !


Bonjour les clickeurs, un petit message pour vous dire que j'ai reçu un mail pour nous confirmer.
J'ai r'envoyer le mail de confirmation. Il nous propose de modifier les anciennes inscriptions de 2015 en matos que nous voulions.
J'ai pas fais le demande. (Je ne sais plus ce que j'avais envoyé).

Je n'ai pas pas encore de date officiel et le lieu exacte ou va se dérouler les joutes.
Mais la machine commence à ce lancer en espérant que cela ne fasse pas comme l'année dernière...

9
Jeux-Vidéos / Pico 8
« le: 10 février 2016 à 06:05:53 »
J'ouvre ce topic.
Damné moi qui recommencé à travaillé sur une vielle machine. Enfin deux  (amstrad et amiga) j'avais l'idée de créer une fausse machine avec fusion. J'avais déja plusieurs fois des tests, et testé un affichage directe par apport à un tableau il y a fort longtemps. Patrice l'avais déjà vu je crois. C'est toujours un projet que j'ai en tête de toute façon créer une "console" virtuel avec fusion.

Ceci dit la semaine dernière je suis tombé sur une vidéo d'un mec qui présente ce genre de logiciel, la Pico 8. C'est un petit logiciel de programmation, ide avec éditeur de sprite, éditeur de map, éditeur de sfx et éditeur de musique.

La particularité ? C'est calqué pour faire un similie de jeu 8bits.
La résolution de l'écran est de 128px sur 128px avec une palette de 16 couleur sans contrainte de proximité.
255 sprites de 8px sur 8px avec la possibilité d'activer ou non 8 flags
Editeur de map calqué sur les sprites. 1 seul map par contre mais qui peut être trifouillé sur le simulateur de mémoire.
4 voix pour les musiques avec un trackers pour faire la musique.

Langage de programmation ? Lua avec ses propres Api et des fonctions pour lire et écrire la mémoire (Peek et poke comme le basic)

Une cartouche virtuel avec un espace pour des sauvegardes.
Le logiciel ne coûte pas cheros. 12/13 euros.
Les jeux sont exportables par trois moyens. Soit vous distribuer la cartouche virtuel. (La il faut le logiciel pico8 pour le lire) soit vous envoyer ça sur le site officiel. Il y a un lecteur soit vous l'exporter en HTML5 (pas testé au moment ou j'écris ses lignes)



Lien du site
J'attend, car si j'ai compris les créateurs sont en train d'adapter ça pour du Rasberry ! J'ai une machine qui me sert à rien peut être un petit recyclage pour la pico.


10
Les Awards du comptoir 2015 / Les Résultats
« le: 30 janvier 2016 à 22:46:46 »
Les résulats des Awards 2015

Le clickeur de l'année est décerné à Patrice
Le l'espoir 2015 est décerné au projet  Dark Dévotion

Le meilleur jeu sur téléphone et tablette est décerné à Super Pixner
Les meilleurs jeux sur navigateur sont décernés à Super Mundo et Grow a beard
Le meilleur jeu sur PC est décerné à Flowering Souls

Le  jeu ayant le meilleur game play est dercerné à Super Pixner
Le jeu ayant le meilleur ambiance sonore est décerné à Flowering Souls
Le jeu ayant la meilleur direction Artistique est décerné à Flowering Souls

Le Click de bronze est décerné à Super Pixner
Le Click d'argent est décerné à Nuage
Le Click d'or est décerné à Flowering Souls

11
Les Awards du comptoir 2015 / Les votes sont ouvert !
« le: 10 janvier 2016 à 07:03:44 »


Les Awards du Comptoir 2015

Bonjour mes amis Clickeurs et Clickeuses. C'est avec joie que la session 2015 des Awards du Comptoir s'ouvre.
Les Awards du Comptoir sont des récompenses données au jeux francophones sortis sur l'année civile. Qui succédera au jeu Cardinal ?

Pour cela je vous donne rendez-vous le Samedi 30 janvier en soirée sur le module "t'chat" que nous placerons pour cette occasion. Mais avant cela, il y a une phase importante : il faut choisir les jeux qui seront récompensés... et c'est vous qui choisissez !

Pour cela chaque membre peut participer au vote en envoyant son classement dans chaque catégorie à Miss-Click par message privé. Vous avez jusque Vendredi 29 Janvier jusqu'à midi pour cela. Lien de la fiche de Miss Click

Liste des jeux francophones 2015. Lien

Note :
-Dark Révolution , Light Standed, et I'm Not a Frog participent seulement pour l'Award Espoir !
-Super Pixner est considéré comme une seule participation étant le même jeu sous Android et PC.
-Vous ne pouvez pas voter pour un jeu dont vous avez participés à son développement.

Les Catégories :

Meilleur Espoir 2015
Choisissez le meilleur jeu en développement 2015  entre Dark Révolution,  Light Standed et I'm Not a Frog.

Le Clickeur de l'année
Nouveauté : envoyez votre top 3 des meilleurs Clickeurs Francophones de l'année !

Meilleur jeu sur téléphone portable et tablette
Envoyez votre Top 3 qui correspond au jeu que vous avez aimé sous Android
(Il n'y pas iOS cette année)

Meilleur jeu sur navigateur internet
Envoyez votre Top 3 des jeux que vous avez aimé s sur Navigateur Internet. (HTML5 / Flash)

Meilleur jeu sur ordinateur
Envoyez votre Top 3 des jeux que vous avez aimé sur ordinateur. (PC Windows)

Gameplay et Level Design
Envoyez votre Top 3 des jeux qui possèdent les meilleurs mécanismes de jeu, d'agencement de niveau et gestion de la difficulté. (A votre goût bien-sûr)

Audio
Envoyez votre Top 3 des jeux qui possède la meilleur ambiance sonore, Effet FX…

direction artistique Artistique !
Envoyez votre Top 3 des plus beaux jeux au niveau des graphismes, meilleure ambiance graphique…

Jeux de l'année
Envoyez votre Top 3 des jeux que vous avez aimé cette année !

Qui vôte?
Les membres inscrits avant 2016 peuvent voter.
Le Staff peut donner aussi des « Wild Card » à d'autres personnes non-inscrites sur le forum.

Règle des Top
-Il n'y pas d'indication, vous choisissez selon vos goûts.
-Vous n'êtes pas obligé de voter dans toutes les catégories.
-Si vous votez dans une catégorie, vous devez obligatoirement faire un classement de trois jeux sans égalité.
-Des points sont distribués en fonction de leurs positions dans vos Tops et par catégorie bien évidement.
 
   5 points pour une première place.
   3 points pour une deuxième place.
   1 point pour une troisième place.

En cas d’égalité de points nous regardons dans l'ordre :
   Le jeu qui obtient le plus de 1er place dans la catégorie ou il y a égalité.   
   Le jeu qui obtient le plus de 2nd place dans la catégorie ou il y a égalité.

Si l'égalité persiste, nous considérons les jeux ex-æquo pour les récompenses.
      

Vivement le 30 Janvier !

12
Les Awards du comptoir 2015 / Une semaine pour faire une fiche !
« le: 01 janvier 2016 à 13:55:47 »
Bonjour, vous avez fait un jeu en 2015 sur un logiciel click ? Vous avez oubliés de faire une fiche de votre jeu pour être éligible au récompense des Awards 2015 ? Pas de panic, vous avez encore une petite semaine pour  remplir cette fiche.
Lien
Le Samedi 9 janvier c'est fini, les nouveaux jeu dans cette liste ne sera éligible que pour le cycle 2016 !

Le règlement définitive des clicks awards sera communiqué dans le week end du 9-10 janvier.

Estimation des dates de la cérémonie !
Si une phase de nomination doit avoir lieu, la cérémonie pourrait se dérouler le samedi 13 février en soirée.
Si il n'y pas de phase de nomination, la cérémonie pourrait avoir lieu le samedi 30 janvier.

J'appelle au clickeurs à discuter plus ou moins d'une date théorique. Certain travaille le samedi soir. (Emmanuel) et peut être d'autre aussi, donc c'est un peu le moment de tout me dire pour bloquer potentiellement des dates !

13
Jeux et Projets / DÉPLACÉ: DPI/RESOLUTION
« le: 25 septembre 2015 à 05:25:35 »

14
Bonjour, savez vous comment charger et afficher une image externe avec le module HTML5, je voudrais me faire un site pour afficher mes photos et jusque la les CMS ne me plaise pas.

Je pense donc à faire mon module photo avec fusion mais je ne trouve pas comment faire pour charger une photo et l'afficher avec ce module. (Alors qu' en flash ça existe !)


Merci, au secoure Pit, tu es mon seul espoirs. Bizzzzzzzzzz
xd

15
Androïd / Régler le problème de compilation
« le: 14 juin 2015 à 06:46:41 »
Corriger le problème de compilation avec le module Android

Il se peut que vous ne pouvez plus compiler votre APK. Pourtant vous avez bien installé le bon SDK, le JDK, les bons API mais ça ne fonctionne toujours pas.

Pas de panic. Allez dans votre dossier ou se trouve votre SDK. Il y a un répertoire nommé tool et ensuite ant. Dedans un fichier XML du nom de build.

Deux solutions s'offre à vous :
La premier solution est de remplacer le fichier build  par celui qui est contenu dans cette archive au format win rar.
Télécharger

La seconde solution est  ouvrir votre fichier build avec un éditeur de text.(Notepad++ par exemple) , et d'ajouter ces 4 lignes à partir de la ligne 484.
<property name="aidl" location="${android.build.tools.dir}/aidl${exe}" />
<property name="aapt" location="${android.build.tools.dir}/aapt${exe}" />
<property name="dx" location="${android.build.tools.dir}/dx${bat}" />
<property name="zipalign" location="${android.build.tools.dir}/zipalign${exe}" />

Le problème devrait être régler et vous pouvez de nouveau compiler votre application


Pages: [1] 2 3 ... 20
Powered by EzPortal