AccueilAccueil  -> Le site MSF  GalerieGalerie  Dernières imagesDernières images  RechercherRechercher  S'enregistrerS'enregistrer  ConnexionConnexion  ContactContact  
Le Deal du moment : -64%
CALOR Rasoir anti-peluches – Large tête ...
Voir le deal
4.99 €

 

 Le Basic pour les nuls sur SG-1000 et Master System

Aller en bas 
4 participants
AuteurMessage
Révo
Alex Kidd (Alex Kidd)
Révo


Score : 6485
Date d'inscription : 16/03/2010
Age : 35

Le Basic pour les nuls sur SG-1000 et Master System Empty
MessageSujet: Le Basic pour les nuls sur SG-1000 et Master System   Le Basic pour les nuls sur SG-1000 et Master System Icon_minitime1Jeu 7 Mar - 10:54

Un nouveau compiler Basic pour ColecoVision vient d'ajouter le support pour SG-1000.

https://forums.atariage.com/topic/362875-colecovision-crunchytasty-basic-compiler-cvbasic-v030-now-with-tmscolor/


Tutoriel:

Ce tuto est fait pour les PC sous Windows (minimum XP), fonctionne aussi sur Linux et Mac mais là je peux pas vous aider.

Liste des trucs à télécharger/installer:

- Un bon éditeur de texte, perso je recommande Notepad++ : https://notepad-plus-plus.org/downloads/

- La dernière version de CVBasic (actuellement la v0.3.0): https://forums.atariage.com/applications/core/interface/file/attachment.php?id=1100327&key=ca77f475dc07c7965a7029f88b3102ef

- Un émulateur SG-1000, attention Emulicious n'affiche pas les couleurs SG-1000 mais les couleurs Master System, du coup je recommande MEKA: https://github.com/ocornut/meka/releases

- Un émulateur ColecoVision, si vous voulez test vos projets sur ColecoVision, car il n'y a pas que SEGA dans la vie, je recommande Gearcoleco: https://github.com/drhelius/Gearcoleco/releases


Comment compiler un fichier source .bas en ROM .sg:

- Ouvrir le dossier "cvbasic_v0.3.0" et y placer sont fichier .bas avec pour nom " in.bas "
- Dans la barre d'adresse du dossier écrire
Citation :
cmd
pour ouvrir l'invite de commande.
- Copier
Citation :
cvbasic --sg1000 in.bas output.asm
puis coller dans l'invite de commande avec un clic droit. Un fichier output.asm vient d'être créé dans le dossier.
Pour ColecoVision la ligne à copier/coller est:
Citation :
cvbasic in.bas output.asm


- Copier
Citation :
gasm80 output.asm -o output.sg
puis coller dans l'invite de commande avec un clic droit. Un fichier output.sg vient d'être créé dans le dossier, c'est votre ROM !

- Pour éviter les 3 dernières étapes et compiler sans ouvrir l'invite de commande, vous pouvez créer un fichier .bat avec 2 lignes:
Citation :
cvbasic --sg1000 in.bas output.asm
gasm80 output.asm -o output.sg

Comment modifier un fichier source .bas :

- Les fichiers .bas s'ouvrent et se modifient tout simplement avec un éditeur de texte. Je recommande, Notepad ++

Comment utiliser TMSColor pour convertir vos images:

- Préparer une image .bmp avec comme résolution maximum de 256x192 pixels.
- La nommer in.bmp et la placer dans le dossier "cvbasic_v0.3.0"
- Dans la barre d'adresse du dossier écrire
Citation :
cmd
pour ouvrir l'invite de commande.
- Copier
Citation :
tmscolor -b -p2 in.bmp in.bas
puis coller dans l'invite de commande avec un clic droit.
- Attendre environ 30 secondes, un fichier in.bas vient d'être créé dans le dossier, vous pouvez maintenant le compiler.


Dernière édition par Révo le Lun 11 Mar - 11:43, édité 4 fois
Revenir en haut Aller en bas
Révo
Alex Kidd (Alex Kidd)
Révo


Score : 6485
Date d'inscription : 16/03/2010
Age : 35

Le Basic pour les nuls sur SG-1000 et Master System Empty
MessageSujet: Re: Le Basic pour les nuls sur SG-1000 et Master System   Le Basic pour les nuls sur SG-1000 et Master System Icon_minitime1Jeu 7 Mar - 10:55

Liste des jeux et trucs qui se lance sur SG-1000:

Dernière demo de nanochess pour présenter CV Basic v0.3.0:


Space Attack, petit jeu par nanochess:


Viboritas, petit jeu par nanochess:


DiapoRévo, petite démo diaporama en cours par moi même:


Démo Le Jeu MSF, la démo du post tuto plus bas:




Dernière édition par Révo le Lun 11 Mar - 15:41, édité 1 fois
Revenir en haut Aller en bas
Révo
Alex Kidd (Alex Kidd)
Révo


Score : 6485
Date d'inscription : 16/03/2010
Age : 35

Le Basic pour les nuls sur SG-1000 et Master System Empty
MessageSujet: Re: Le Basic pour les nuls sur SG-1000 et Master System   Le Basic pour les nuls sur SG-1000 et Master System Icon_minitime1Ven 8 Mar - 17:14

Réservé, début de jeu par Révo.

Citation :
'Ceci est un commentaire
'Tout ce qui est suivi d'un ' n'est pas pris en compte lors de la compilation

'Chargement des sprites dans la VRAM:

DEFINE SPRITE 0,1,shipsprite '0= numéro de sprite (entre 0 & 63) ; 1= total des sprites à charger (entre 1 & 64) ; shipsprites= nom du sprite (voir données)
x = 50 'position horizontale d'origine du sprite
y = 100 'position verticale d'origine du sprite


'Lecture Musique Menu

WAIT 'Attendre la prochaine frame (1/60 de seconde pour NTSC ou 1/50 de seconde pour PAL)
PLAY FULL 'SIMPLE= utilise 2 chaines ; FULL= utilise 3 chaines
PLAY Musique_0 'Jouer la musique nommé Musique_0 (voir données)


'Le Menu (Title Screen)

Menu: 'Balise du Menu
CLS 'Clean Screen = permet de nettoyer l'écran
PRINT AT 109,"Le Jeu" 'Ecrire en position 109 le texte: Le Jeu
PRINT AT 522,"PRESS START" 'Ecrire en position 522 le texte: PRESS START
FOR c = 0 TO 60 'Magie noire: fait buguer le tempo de la musique si pas là
WAIT
NEXT c 'Magie noire: fait buguer le tempo de la musique si pas là


'Boucle d'attente d'action

wait_loop: 'Balise de la boucle
IF CONT1.BUTTON THEN GOTO Ecran_1 'Si le Bouton 1 (Start) est appuyé, aller à la balise Ecran_1

SPRITE 0,y-20,x+60,0,ship_color 'SPRITE 0= Affiche le sprite numéro 0; y-20= modifie la position verticale chargé; x+60= modifie la position horizontale chargé; 0= frame du sprite (multiplier par 4 le numéro du sprite pour afficher le bon sprite); ship_color= label pour la couleur du sprite
ship_color = 5 'La couleur du sprite (entre 0 et 15, voir palette SG-1000 ou Legacy Mode pour Master System)

GOTO wait_loop 'Retour à la balise de la boucle, pour boucler la boucle


'Le "JEU" qui n'est pas un jeu pour l'instant

'Nettoyage d'écran et lecture de la musique

Ecran_1:
CLS
WAIT
WAIT
PLAY SIMPLE
PLAY Musique_1

'Affichage du sprite principal

sprite_1:
WAIT
WAIT
SPRITE 0,y,x,0,ship_color
ship_color = 3

IF cont1.up THEN IF y > 0 THEN y = y - 1 'Si le Bouton haut est appuyé, déplacer le sprite de 1 pixel vert le haut
IF cont1.left THEN IF x > 0 THEN x = x - 1 'Si le Bouton gauche est appuyé, déplacer le sprite de 1 pixel vert la gauche
IF cont1.right THEN IF x < 240 THEN x = x + 1 'Si le Bouton droit est appuyé, déplacer le sprite de 1 pixel vert la droite
IF cont1.down THEN IF y < 176 THEN y = y + 1 'Si le Bouton bas est appuyé, déplacer le sprite de 1 pixel vert le bas
IF cont1.button THEN ship_color = 9 'Si le Bouton 1 est appuyé, changer la couleur du sprite
IF cont1.button2 THEN ship_color = 11 'Si le Bouton 2 est appuyé, changer la couleur du sprite
IF cont1.button2 THEN V=15 'Si le Bouton 2 est appuyé, jouer un effet sonore
SOUND 2,300,V 'Effet sonore
IF V>0 THEN V=V-1 'Effet sonore

GOTO sprite_1 'Retour à la balise du sprite principal


'Données:

Musique_0: DATA BYTE 7 'Musique du menu nommé Musique_0 ; Ticks par note (il y a 50 ticks par seconde)
MUSIC F4,-
MUSIC S,-
MUSIC A4,-
MUSIC S,-
MUSIC F4,-
MUSIC S,-
MUSIC C5,-
MUSIC S,-
MUSIC F4,-
MUSIC S,-

MUSIC F5,-
MUSIC S,-
MUSIC E5,F3
MUSIC D5,S
MUSIC C5,A3
MUSIC D5,S
MUSIC C5,F3
MUSIC A4#,S
MUSIC A4,C4
MUSIC A4#,S
MUSIC A4,F3
MUSIC G4,S

MUSIC F4,F4
MUSIC S,S
MUSIC A4,E4
MUSIC S,D4
MUSIC C5,C4
MUSIC S,D4
MUSIC A4,C4
MUSIC S,A3#
MUSIC F5,A3
MUSIC S,A3#
MUSIC C5,A3
MUSIC S,G3

MUSIC A5,F3
MUSIC C6,S
MUSIC A5#,A3
MUSIC C6,S
MUSIC A5,C4
MUSIC C6,S
MUSIC A5#,A3
MUSIC C6,S
MUSIC A5,F4
MUSIC C6,S
MUSIC A5#,C4
MUSIC C6,S

MUSIC F5,A3
MUSIC A5,C4
MUSIC G5,A3#
MUSIC A5,C4
MUSIC F5,A3
MUSIC A5,C4
MUSIC G5,A3#
MUSIC A5,C4
MUSIC F5,A3
MUSIC A5,C4
MUSIC G5,A3#
MUSIC A5,C4

MUSIC D5,F3
MUSIC F5,A3
MUSIC E5,G3
MUSIC F5,A3
MUSIC D5,F3
MUSIC F5,A3
MUSIC E5,G3
MUSIC F5,A3
MUSIC D5,F3
MUSIC F5,A3
MUSIC E5,G3
MUSIC F5,A3

MUSIC B4,D3
MUSIC S,F3
MUSIC G4,E3
MUSIC S,F3
MUSIC D5,D3
MUSIC S,F3
MUSIC B4,E3
MUSIC S,F3
MUSIC F5,D3
MUSIC S,F3
MUSIC D5,E3
MUSIC S,F3

MUSIC G5,B3
MUSIC A5,S
MUSIC G5,G3
MUSIC F5,S
MUSIC E5,C4
MUSIC F5,S
MUSIC E5,G3
MUSIC D5,S
MUSIC C5,E4
MUSIC D5,S
MUSIC C5,C4
MUSIC A4#,S

MUSIC A4,F4
MUSIC S,G4
MUSIC D5,F4
MUSIC C5,E4
MUSIC B4,D4
MUSIC C5,E4
MUSIC B4,D4
MUSIC A4,C4
MUSIC G4,B3
MUSIC A4,C4
MUSIC G4,B3
MUSIC F4,A3

MUSIC E4,G3
MUSIC F4,S
MUSIC E4,C4
MUSIC D4,B3
MUSIC C4,A3
MUSIC S,B3
MUSIC C5,A3
MUSIC B4,G3
MUSIC C5,F3
MUSIC S,G3
MUSIC E4,F3
MUSIC S,E3

MUSIC F4,D3
MUSIC S,E3
MUSIC C5,D3
MUSIC S,C3
MUSIC E4,G3
MUSIC S,F3
MUSIC C5,E3
MUSIC S,F3
MUSIC D4,G3
MUSIC S,S
MUSIC B4,G2
MUSIC S,S

MUSIC C5,C4
MUSIC S,S
MUSIC S,S
MUSIC S,S
MUSIC STOP 'La Musique s'arrête

Musique_1: DATA BYTE 5 'Musique du jeu nommé Musique_1
MUSIC G5#Y,C3#,-,M1
MUSIC S,S,-,M2
MUSIC F5#,G3#,-,M2
MUSIC S,S,-,M2
MUSIC E5,C3#,-,M1
MUSIC S,S,-,M2
MUSIC D5#,G3#,-,M2
MUSIC S,S,-,M2
MUSIC E5,C3#,-,M1
MUSIC S,S,-,M2
MUSIC F5#,G3#,-,M2
MUSIC S,S,-,M2
MUSIC G5#,C3#,-,M1
MUSIC S,S,-,M2
MUSIC S,G3#,-,M2
MUSIC S,S,-,M2
MUSIC S,C3#,-,M1
MUSIC S,S,-,M2
MUSIC C5#,G3#,-,M2
MUSIC -,S,-,M2
MUSIC G5#,C3#,-,M1
MUSIC S,S,-,M2
MUSIC E5,G3#,-,M2
MUSIC -,S,-,M2
MUSIC F5#,B2,-,M1
MUSIC S,S,-,M2
MUSIC S,F3#,-,M2
MUSIC S,S,-,M2
MUSIC S,B2,-,M1
MUSIC S,S,-,M2
MUSIC -,F3#,-,M2
MUSIC -,S,-,M2
MUSIC -,B2,-,M1
MUSIC -,S,-,M2
MUSIC -,F3#,-,M2
MUSIC -,S,-,M2
MUSIC -,B2,-,M1
MUSIC -,S,-,M2
MUSIC -,F3#,-,M1
MUSIC -,S,-,M2
MUSIC C5#,B2,-,M1
MUSIC S,S,-,M2
MUSIC F5#,F3#,-,M1
MUSIC S,S,-,M2
MUSIC C5#,B2,-,M1
MUSIC S,S,-,M2
MUSIC E5,A2,-,M1
MUSIC S,S,-,M2
MUSIC S,E3,-,M1
MUSIC S,S,-,M2
MUSIC S,A2,-,M1
MUSIC S,S,-,M2
MUSIC S,E3,-,M1
MUSIC S,S,-,M2
MUSIC S,A2,-,M1
MUSIC S,S,-,M2
MUSIC S,E3,-,M1
MUSIC S,S,-,M2
MUSIC S,A2,-,M1
MUSIC S,S,-,M2
MUSIC F5#,E3,-,M1
MUSIC S,S,-,M2
MUSIC E5,A2,-,M2
MUSIC S,S,-,M2
MUSIC D5#,E3,-,M1
MUSIC S,S,-,M2
MUSIC S,A2,-,M2
MUSIC S,S,-,M2
MUSIC C5,G2#,-,M1
MUSIC S,S,-,M2
MUSIC S,D3#,-,M2
MUSIC S,S,-,M2
MUSIC S,G2#,-,M1
MUSIC S,S,-,M2
MUSIC S,D3#,-,M2
MUSIC S,S,-,M2
MUSIC S,G2#,-,M1
MUSIC S,S,-,M2
MUSIC -,D3#,-,M2
MUSIC -,S,-,M2
MUSIC -,G2#,-,M1
MUSIC -,S,-,M2
MUSIC -,D3#,-,M2
MUSIC -,S,-,M2
MUSIC -,G2#,-,M1
MUSIC -,S,-,M2
MUSIC -,D3#,-,M1
MUSIC -,S,-,M3
MUSIC -,G2#,-,M1
MUSIC -,S,-,M2
MUSIC -,D3#,-,M1
MUSIC -,S,-,M3
MUSIC -,G2#,-,M1
MUSIC -,S,-,M1
MUSIC -,D3#,-,M1
MUSIC -,S,-,M1
MUSIC REPEAT 'La Musique se répète

shipsprite:
BITMAP ".......XX......."
BITMAP ".......XX......."
BITMAP "......XXXX......"
BITMAP "......XXXX......"
BITMAP "......XXXX......"
BITMAP ".....XXXXXX....."
BITMAP ".....XX..XX....."
BITMAP "....XXX..XXX...."
BITMAP "...XXX....XXX..."
BITMAP "..XXXXXXXXXXXX.."
BITMAP ".XXX.XXXXXX.XXX."
BITMAP "XXXXXX....XXXXXX"
BITMAP "XX..XXXXX.XX..XX"
BITMAP "XXXXXXXXXXXXXXXX"
BITMAP ".....XX..XX....."
BITMAP ".....XX..XX....."



Dernière édition par Révo le Sam 9 Mar - 12:15, édité 1 fois
Revenir en haut Aller en bas
Atmostfear
Alex Kidd (Alex Kidd)
Atmostfear


Score : 7130
Date d'inscription : 23/06/2015
Age : 44
Localisation : Paris

Le Basic pour les nuls sur SG-1000 et Master System Empty
MessageSujet: Re: Le Basic pour les nuls sur SG-1000 et Master System   Le Basic pour les nuls sur SG-1000 et Master System Icon_minitime1Ven 8 Mar - 17:48

Topic à surveiller, merci pour le partage Wink
Revenir en haut Aller en bas
Révo
Alex Kidd (Alex Kidd)
Révo


Score : 6485
Date d'inscription : 16/03/2010
Age : 35

Le Basic pour les nuls sur SG-1000 et Master System Empty
MessageSujet: Re: Le Basic pour les nuls sur SG-1000 et Master System   Le Basic pour les nuls sur SG-1000 et Master System Icon_minitime1Lun 11 Mar - 15:43

Nouvelle version avec la v0.3.0, 1er et 2ème post mis à jour !!
Revenir en haut Aller en bas
Schmurz
Alex Kidd (Alex Kidd)
Schmurz


Score : 1676
Date d'inscription : 14/03/2021
Age : 42

Le Basic pour les nuls sur SG-1000 et Master System Empty
MessageSujet: Re: Le Basic pour les nuls sur SG-1000 et Master System   Le Basic pour les nuls sur SG-1000 et Master System Icon_minitime1Ven 15 Mar - 11:16

wow je comprends mieux les vidéos en ce moment sur YouTube.
Revenir en haut Aller en bas
Révo
Alex Kidd (Alex Kidd)
Révo


Score : 6485
Date d'inscription : 16/03/2010
Age : 35

Le Basic pour les nuls sur SG-1000 et Master System Empty
MessageSujet: Re: Le Basic pour les nuls sur SG-1000 et Master System   Le Basic pour les nuls sur SG-1000 et Master System Icon_minitime1Lun 29 Avr - 11:55

Nouvelle version avec la gestion des banques de données, il est maintenant possible de faire un jeu de 1Mo !!!! Avant c'était 48Ko ^^

https://forums.atariage.com/topic/365682-colecovision-wonder-tastic-basic-compiler-cvbasic-v050-now-with-bank-switching-support/

J'espère pouvoir éditer les post plus haut bientôt Wink
Revenir en haut Aller en bas
Révo
Alex Kidd (Alex Kidd)
Révo


Score : 6485
Date d'inscription : 16/03/2010
Age : 35

Le Basic pour les nuls sur SG-1000 et Master System Empty
MessageSujet: Re: Le Basic pour les nuls sur SG-1000 et Master System   Le Basic pour les nuls sur SG-1000 et Master System Icon_minitime1Mar 30 Avr - 12:06

nanochess (le créateur de CVBASIC) prépare un bouquin de 250 pages sur CVBASIC avec les sources de 4 nouveaux jeux comme exemple. Ce sera bientôt dispo sur lulu.com, lien à venir.







Revenir en haut Aller en bas
Révo
Alex Kidd (Alex Kidd)
Révo


Score : 6485
Date d'inscription : 16/03/2010
Age : 35

Le Basic pour les nuls sur SG-1000 et Master System Empty
MessageSujet: Re: Le Basic pour les nuls sur SG-1000 et Master System   Le Basic pour les nuls sur SG-1000 et Master System Icon_minitime1Lun 13 Mai - 9:29

Revenir en haut Aller en bas
Atmostfear
Alex Kidd (Alex Kidd)
Atmostfear


Score : 7130
Date d'inscription : 23/06/2015
Age : 44
Localisation : Paris

Le Basic pour les nuls sur SG-1000 et Master System Empty
MessageSujet: Re: Le Basic pour les nuls sur SG-1000 et Master System   Le Basic pour les nuls sur SG-1000 et Master System Icon_minitime1Lun 13 Mai - 11:07

Tu vas approfondir ton apprentissage du coup ?
Revenir en haut Aller en bas
Ax battler
Kevin (Home Alone)
Ax battler


Score : 67
Date d'inscription : 09/03/2022
Age : 45
Localisation : monster land

Le Basic pour les nuls sur SG-1000 et Master System Empty
MessageSujet: Re: Le Basic pour les nuls sur SG-1000 et Master System   Le Basic pour les nuls sur SG-1000 et Master System Icon_minitime1Lun 13 Mai - 21:13

Intéressant, mais perso je galère déjà à arriver à sortir des trucs en C, je viens juste de m'y remettre, donc je vais rester focalisé là-dessus et éviter de me disperser avec le BASIC... Mais je tenterai peut-être un jour! Le Basic pour les nuls sur SG-1000 et Master System 1f600

Si quelqu'un a des liens de tutos pour le C, d'ailleurs, je serais preneur!
Revenir en haut Aller en bas
Révo
Alex Kidd (Alex Kidd)
Révo


Score : 6485
Date d'inscription : 16/03/2010
Age : 35

Le Basic pour les nuls sur SG-1000 et Master System Empty
MessageSujet: Re: Le Basic pour les nuls sur SG-1000 et Master System   Le Basic pour les nuls sur SG-1000 et Master System Icon_minitime1Lun 13 Mai - 21:36

Atmostfear a écrit:
Tu vas approfondir ton apprentissage du coup ?

Yeah bien sur, je vais tenter de faire un vrai jeu quand même!
Revenir en haut Aller en bas
Atmostfear
Alex Kidd (Alex Kidd)
Atmostfear


Score : 7130
Date d'inscription : 23/06/2015
Age : 44
Localisation : Paris

Le Basic pour les nuls sur SG-1000 et Master System Empty
MessageSujet: Re: Le Basic pour les nuls sur SG-1000 et Master System   Le Basic pour les nuls sur SG-1000 et Master System Icon_minitime1Mar 14 Mai - 7:34

C'est bon ça !
Revenir en haut Aller en bas
Révo
Alex Kidd (Alex Kidd)
Révo


Score : 6485
Date d'inscription : 16/03/2010
Age : 35

Le Basic pour les nuls sur SG-1000 et Master System Empty
MessageSujet: Re: Le Basic pour les nuls sur SG-1000 et Master System   Le Basic pour les nuls sur SG-1000 et Master System Icon_minitime1Mer 15 Mai - 16:11

Premier bon homebrew fait avec CVBASIC hors nanochess:

Revenir en haut Aller en bas
Contenu sponsorisé





Le Basic pour les nuls sur SG-1000 et Master System Empty
MessageSujet: Re: Le Basic pour les nuls sur SG-1000 et Master System   Le Basic pour les nuls sur SG-1000 et Master System Icon_minitime1

Revenir en haut Aller en bas
 
Le Basic pour les nuls sur SG-1000 et Master System
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [Homebrew] Floppé d'homebrew JAP pour Master System, SG-1000, SC-3000 (et autres)
» Programmation Master-System en basic
» Card SG 1000 compatibles avec Master System PAL
» [Hack] News ColecoVision to SG-1000/Master System (CV2SG)
» [Homebrew] Wolfenstein 3D Master System / Game Gear / SG-1000

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Master System France :: Master System France :: Nos créations-
Sauter vers: