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)