Derniers sujets
» Enigmatus
Hier à 18:19 par Dom50

» Apprendre l'Assembleur ORIC
Hier à 14:32 par drpsy

» SDCARD/USB KEY reader
Ven 17 Nov 2017 - 21:18 par kiwilevrai

» Alchimie DOUZE
Jeu 16 Nov 2017 - 20:45 par kiwilevrai

» Nouveau : Carte joystick pour atmos
Mar 14 Nov 2017 - 18:57 par NightBird

» Besoin d'aide Tap2wav avec un Mac
Mar 14 Nov 2017 - 18:06 par Delta34

» Blake's 7
Lun 13 Nov 2017 - 19:55 par didierv

» Juste une petite question comme ça.. (sur la marque ORIC)
Dim 12 Nov 2017 - 14:29 par didierv

» Test Brown
Dim 12 Nov 2017 - 13:29 par didierv

» Orix : Thread de notification sur le développement
Ven 10 Nov 2017 - 11:02 par Jede

Qui est en ligne ?
Il y a en tout 1 utilisateur en ligne :: 0 Enregistré, 0 Invisible et 1 Invité

Aucun

Le record du nombre d'utilisateurs en ligne est de 29 le Mer 25 Fév 2015 - 14:01
Connexion

Récupérer mon mot de passe

Statistiques
Nous avons 126 membres enregistrés
L'utilisateur enregistré le plus récent est romain suire

Nos membres ont posté un total de 5861 messages dans 431 sujets
Portail ORIC




Apprendre l'Assembleur ORIC

Voir le sujet précédent Voir le sujet suivant Aller en bas

Apprendre l'Assembleur ORIC

Message  maximus le Dim 12 Nov 2017 - 7:41

Impressionné par les beaux jeux comme Blake's, tout ça c'est grâce à l'assembleur

Mais c'est vraiment dur de s'y mettre, j'ai essayé mais bon Embarassed

Mode Rêve ON:

Arrow les Pros nous font un cours d'ASM ORIC pour les Noobs  Rolling Eyes

Mode Rêve OFF

clown


Dernière édition par maximus le Dim 12 Nov 2017 - 10:04, édité 1 fois
avatar
maximus

Messages : 1106
Date d'inscription : 02/12/2012
Age : 57
Localisation : Nimes

http://cinema.forumactif.org/

Revenir en haut Aller en bas

Re: Apprendre l'Assembleur ORIC

Message  drpsy le Dim 12 Nov 2017 - 9:02

Je crois qu'il y en a plein les anciens mags ! et en plus en ce moment, une série d'articles passe en revue toutes les instructions du 6502.

Personnellement, j'ai le  petit livre, acheté à l'époque, et auquel à l'époque je n'ai rien compris; vu que personne ne m'avait dit ce qu'était une adresse :




L'assembleur de L'oric 1 et Atmos - Programmation en langage machine
Marcel Henrot

Il est en téléchargement ici :

http://www.defence-force.org/computing/oric/library/lib_coding_6502/index.htm

Et aujourd'hui, je n'ai pas vraiment besoin d'une autre référence.

Maximus, qu'est-ce qui te manquerait pour t'y mettre ?

_________________
>++++++++++[<++++++++>-]<.>++++++[<++++>-]<+.----.+++++++++++++..-------------.[-]
avatar
drpsy

Messages : 87
Date d'inscription : 20/07/2014
Age : 46
Localisation : Lagny sur Marne

Revenir en haut Aller en bas

Re: Apprendre l'Assembleur ORIC

Message  maximus le Dim 12 Nov 2017 - 9:15

Oui j'ai commencé ce livre, pfiou c'est des pages et des pages sur le fonctionnement de l'ORIC avec 1 mot nouveau toutes les 3 lignes, c'est un livre pour informaticien et pas pour un noob qui n'a fait que du BASIC, je lis binaire, ULA, registres, etc... c'est du lourd quand même Very Happy

j'ai fait le tuto du siteduzero (devenu openclassroom) mais il n'y a que la base, c'est limpide mais hélas incomplet:

https://openclassrooms.com/courses/en-profondeur-avec-l-assembleur

de plus c'est l'assembleur Microsoft MASM

il me faut beaucoup de courage Embarassed Embarassed
avatar
maximus

Messages : 1106
Date d'inscription : 02/12/2012
Age : 57
Localisation : Nimes

http://cinema.forumactif.org/

Revenir en haut Aller en bas

Re: Apprendre l'Assembleur ORIC

Message  kenneth le Dim 12 Nov 2017 - 10:10

Perso, j'essaie les instructions avec le moniteur d'Oricutron, on se rend mieux compte. Wink
avatar
kenneth
Modérateur

Messages : 392
Date d'inscription : 13/01/2013
Age : 50
Localisation : 63

Revenir en haut Aller en bas

Re: Apprendre l'Assembleur ORIC

Message  drpsy le Dim 12 Nov 2017 - 10:32

Ah oui, je te comprends... La plupart des tutoriels sont faits par des gens qui savent déjà, et la difficulté pour eux est de se mettre à la place de ceux qui ne savent pas. Et quand la première barrière, c'est le vocabulaire, c'est compliqué.

On pourrait faire quelque chose : tu essaies, chaque fois que tu ne comprends pas un terme ou un concept, tu poses la question et on y répond !

Je prends les 3 mots que tu as cités :
- binaire : c'est le fameux 0 ou 1 ! écrire un nombre en binaire, c'est le traduire en une suite de 0 et de 1. Exemple :
1 (décimal) = 1 (binaire).
On utilise une "norme" de notation, qui est ensuite utilisée dans les compilateurs. Dans OSDK (mais pas que), un nombre en binaire s'écrit : %xxx. Exemples : 2 = %10. 5 = %101.
Comme on n'a que 2 chiffres, 0 et 1, chaque fois que j'additionne 1 et 1, je pose 0 et je reporte 1.
1+1 = 2
%1 + %1 = %10

Un ordinateur fonctionne sur des nombres binaires, au sens ou pour chaque "chiffre binaire" (O ou 1), il y a un fil qui entre dans le processeur (le cerveau de l'ordinateur). Lorsque le courant passe, on a 1 et lorsqu'il ne passe pas, on a 0.

Sur un ORIC, 8 fils de données entrent dans le processeurs : 8 bits !
Voilà pourquoi le binaire est si important.
Pour éviter de manipuler des séries de 0 et de 1, on travaille plutôt en hexadecimal (base 16, c'est à dire qu'on a 16 chiffres au lieu de 10 pour écrire des nombres), qui se traduit très bien en binaire, puisque chaque chiffre hexadécimal se code sur 4 chiffres binaires.
0 - 0000
1 - 0001
2 - 0010
3 - 0011
4 - 0100
...
9 - 1001
A - 1010
B - 1011
C - 1100
D - 1101
E - 1110
F - 1111
Pour traduite un binaire en décimal, soit on compte avec ses doigts, mais c'est long, soit on fait une addition.
Exemple :
écrire 11100 en décimal.
11100 = 10000 + 01000 + 00100.
10000 = 32 = 2*2*2*2*2 = 2^5. La position du 1 dans le nombre binaire donne exactement le chiffre d'élévation à la puissance de 2.
01000 = 16 = 2^4.
00100 = 8 = 2^3.
11100 = 8+16+32 = 56.
En Hexa, on regroupe les chiffres par 4 : 11100 = 0001 1100 = 1C.
J'espère que c'est plus clair, et désolé si c'était déjà évident pour toi...

- ULA : c'est un composant de l'ORIC qui gère la video et tout un tas de trucs. Normalement, tu n'as pas besoin de ça pour programmer en LM. Ceux qui s'y intéressent sont à un niveau très avancé ! Et de toutes façons, on n'y a pas directement accès.

- Registres : ce sont les variables internes du processeur. Dans un programme BASIC, tu définis autant de variables que tu veux : A, I, B, C, TX$,... et même des tableaux. En langage machine ou assembleur, il est très important de comprendre que le processeur ne sait travailler qu'avec ses variables internes et un seul emplacement mémoire à la fois. D'une manière générale, le processeur prend de l'information d'une cellule mémoire (il fait comme un PEEK en BASIC), applique un traitement dessus (une addition, etc.), et écrit le résultat dans une cellule mémoire (POKE). Suivant les instructions machine, ça peut prendre une seule instruction ou plusieurs en fonction de ce qu'on a à faire. Certaines instructions ne travaillent que sur les registres internes, d'autres sont capables de combiner lecture / opération / écriture.
Les "registres" sont :
A : celui qui permet de faire des additions, soustractions, etc. Le plus utilisé dans les programmes
X et Y : compteurs mais qui permettent aussi de travailler avec A
P : chaque chiffre binaire (bit) de ce registre contient une information importante. Ca sert pour les retenues par exemple. Ou à détecter qu'un nombre est égal à 0. Très important et pas évident à comprendre au début. Tous les tests réalisés par le processeur (équivalent du IF en BASIC) se basent sur ce registre.
PC : adresse de l'instruction courante. Quand on fait un GOTO (JMP en assembleur), on change cette valeur. En basic de l'ORIC, c'est comme si on gardait en mémoire le numéro de ligne BASIC du programme en cours d'exécution. Il change tout le temps. Après chaque instruction, il augmente, à moins d'être modifié par un JMP ou autre instruction de saut.
SP : pointeur de pile. Là, ça nécessite d'autres explications.

_________________
>++++++++++[<++++++++>-]<.>++++++[<++++>-]<+.----.+++++++++++++..-------------.[-]
avatar
drpsy

Messages : 87
Date d'inscription : 20/07/2014
Age : 46
Localisation : Lagny sur Marne

Revenir en haut Aller en bas

Re: Apprendre l'Assembleur ORIC

Message  maximus le Dim 12 Nov 2017 - 13:25

Merci drpsy, je dois tout simplement bosser pour p-e m'y mettre, c'est autre chose que le BASIC qui se désintéresse totalement de tout ça

avatar
maximus

Messages : 1106
Date d'inscription : 02/12/2012
Age : 57
Localisation : Nimes

http://cinema.forumactif.org/

Revenir en haut Aller en bas

Re: Apprendre l'Assembleur ORIC

Message  Symoon le Dim 12 Nov 2017 - 14:34

Deux choses m'ont permis de me mettre à l'assembleur:
1- chercher à comprendre "mais comment ils ont fait ci ou ça ?" => lecture de Sedoric à Nu (très bien expliqué), l'Oric à Nu, ...
2- avoir envie de changer une bricole dans ce bazar => de tous petits projets en assembleur

Je te conseille éventuellement au début, de voir l'assembleur comme un sous-programme basic, appelé par un CALL au lieu de Gosub.
A partir de là, tente de faire de tous petits trucs simples (simples en assembleur ! Car un truc qui paraît "simple" peut être très compliqué à faire en assembleur Wink ).
Ca permet d'entrer dans le concret du sujet.

Par exemple tape
POKE#700,#60
CALL#700
Tu auras fait ton premier programme qui correspond à un GOSUB / RETURN

De mon côté en fait je ne me suis jamais vraiment mis à l'assembleur, mais au langage machine: je code en hexadécimal (avec un bouquin à côté hein Wink), je traduis ensuite en mnémoniques. Archaïque et lent, horrible quand on a oublié quelque chose, exemple à ne pas suivre...
avatar
Symoon

Messages : 350
Date d'inscription : 26/04/2014

Revenir en haut Aller en bas

Re: Apprendre l'Assembleur ORIC

Message  drpsy Hier à 14:32

L'intérêt du livre de Marcel Herriot, c'est qu'il y a pas pas mal de code décortiqué.
Ce qui m'a le plus aidé, c'est de comprendre ce que faisait chaque instruction dans le code.
Pour débuter, on a besoin de relativement peu d'instructions du processeur.
Beaucoup d'instructions permettent d'optimiser les programmes.

_________________
>++++++++++[<++++++++>-]<.>++++++[<++++>-]<+.----.+++++++++++++..-------------.[-]
avatar
drpsy

Messages : 87
Date d'inscription : 20/07/2014
Age : 46
Localisation : Lagny sur Marne

Revenir en haut Aller en bas

Re: Apprendre l'Assembleur ORIC

Message  Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum