From 102c17a9ee1e0a12b5606d9f631c5cd49790a164 Mon Sep 17 00:00:00 2001
From: rick <rick@gnous.eu>
Date: Mon, 10 May 2021 18:23:29 +0200
Subject: [PATCH] Ajout commentaires

---
 hello.asm | 30 +++++++++++++++++-------------
 1 file changed, 17 insertions(+), 13 deletions(-)

diff --git a/hello.asm b/hello.asm
index 3b5d5ad..3f7ca56 100644
--- a/hello.asm
+++ b/hello.asm
@@ -1,26 +1,30 @@
-    org     &4000
-    db      "AB"
-    dw      Start
-    db      00,00,00,00,00,00
+; Entête pour cartouche (10bits)
+    org     &4000               ; adresse de la cartouche org permet de 
+                                ; se positionner à une adresse dans la mémoire
+    db      "AB"                ; premiers bits du header
+    dw      Start               ; adresse de la fonction de départ
+    db      00,00,00,00,00,00   ; bits inutilisés dans notre cas
 
 Start:
-    call    &006F
-    ld      a, 32
-    ld      (&F3B0), a
+    call    &006F               ; permet de sélectionner le mode de l'écran
+    ld      a, 32               ; mettre la taille de l'écran à 32 caractères
+    ld      (&F3B0), a          ; envoie de la taille de l'écran
 
     ld      hl, Message
     call    PrintString
-    di
-    halt
+    di                          ; pas de retour en cartouche, du coup on fige
+    halt                        ; simplement le MSX
 
 PrintString:
     ld      a, (hl)
-    cp      255
-    ret     z
+    cp      255                 ; le message s'arrête avec 255, on vérifie si 
+                                ; le car est 255. Si oui, Z est mit à 1
+    ret     z                   ; si Z est à 1, on retourne
     inc     hl
-    call    &00A2
+    call    &00A2               ; fonction firmware pour afficher un caractère 
+                                ; à l'écran le caractère est contenu dans hl
     jr      PrintString
     
 Message:    db      'Hello World!', 255
 
-    org     &C000
+    org     &C000               ; alignement de fin de cartouche (pour OpenMSX)