CODINGCROSSDEV ★ Pasmo (c) Julián Albo ★

PasmoCoding Crossdev

Le projet de Pasmo est un assembleur Z80 , écrit dans C++ standard qui compile facilement sur de mutliples plates-formes. En fait peut produire du code d'objet dans les formats suivants : binaire crue, Intel HEX, PRL pour CP/M plus RSX, Plus3Dos (disque de spectrum +3), TAP, TZX et CDT (dumps cassettes pour émulateurs de Spectrum et d'Amstrad CPC ), AmsDos (disque Amstrad CPC) et MSX (pour l'usage avec BLOAD à partir de disquette).
La version 0.5.0, peut également produire du code 8086 des sources Z80, dans le format binaire pour des fichiers COM de MS-DOS ou dans le format de CP/M 86 CMD.

Pasmo est un assembleur multiplatform Z80, facile à compiler et facile à utiliser. Il peut produire du code d'objet dans plusieurs formats appropriés à beaucoup de machines Z80 et d'émulateurs.
Pasmo produit du code à position fixe, ne peut pas être employé pour créer les fichiers objets d'exécution réadressables pour l'usage avec des éditeurs de liens.
Pasmo est compatible avec la syntaxe employée en plusieurs vieux assembleurs, en soutenant plusieurs modèles des constantes de chaîne numériques et et en fournissant plusieurs noms des directives les plus utilisées.
Cependant, dans Pasmo la mnémonique Z80, le registre et les noms et les directives de drapeaux sont des mots réservés, ceci peuvent exiger des changements des noms de symbole étant en conflit de quelques programmes.

Pasmo peut également produire de l'équivalent 8086 au code de l'ensemble z80. Il peut créer des ficheirs .COM pour le MS-DOS/CPM, en employant le mode binaire de génération, ou CMD classe pour CP/M 86, par l'utilisation --mode de génération de cmd. Ce dispositif est expérimental, à utiliser avec soin.

Installation :

Pour le compiler vous avez besoin au minimum de la version 2.95 de GCC , avec la langue de c++ incluse (habituellement un paquet appelé le g++-something).
D'autres compilateurs peuvent également être employés, n'importe quel compilateur standard raisonnable c++ doit le compiler avec le peu ou pas de corrections dans le code source.

Pasmo est appelé de la ligne de commande comme :

pasmo [options] file.asm file.bin [file.symbol [file.publics]]

Là où file.asm est le fichier source, file.bin est le fichier objet d'exécution à créer et sur option file.symbol est le dossier où la table des symboles sera écrite et file.publics est le dossier pour la table des symboles publique. Les deux noms de dossier de symbole peuvent être une corde vide pour aucune génération ou - pour écrire dans le rendement standard. Quand --l'option publique est employée ceci est manipulée d'une autre manière, voient ci-dessous.

Options:

-d --> Show debug info during assembly.
-1 --> Show debug info during assembly, also in first pass.
-v --> Verbose. Show progress information during assembly.
-I --> Add directory to the list for searching files in INCLUDE and INCBIN.
--bin --> Generate the object file in pure binary format without headers.
--hex --> Generate the object file in Intel HEX format.
--prl --> Generate the object file in the PRL format. Useful for CP/M Plus RSX.
--cmd --> Generate the object file in CP/M 86 CMD format.
--plus3dos --> Generate the object file with PLUS3DOS header (Spectrum disk).
--tap --> Generate a .tap file for Spectrum emulators (tape image).
--tzx --> Generate a .tzx file for Spectrum emulators (tape image).
--cdt --> Generate a .cdt file for Spectrum emulators (tape image).
--tapbas --> Same as --tap option but adding a Basic loader.
--tzxbas --> Same as --tzx option but adding a Basic loader.
--cdtbas --> Same as --cdt option but adding a Basic loader.
--amsdos --> Generate the object file with Amsdos header (Amstrad CPC disk).
--msx --> Generate the object file with header for use with BLOAD in MSX Basic.
--public --> The symbol table listing will include only symbols declared as PUBLIC.
--name --> Name for the header in the formats that use it. If unspecified the object file name will be used.
--err --> Direct error messages to standard ouptut instead of error output (except for errors in options).
--nocase --> Make identifiers case insensitive.
--alocal --> Autolocal mode: the labels than begins with a '_' are locals, and his ambit finishes in the next no local label or in the next PROC, LOCAL or MACRO directive.
-B
--bracket --> Bracket only mode: parenthesis are reserved for expressions.
-E
--equ --> Predefine a label.
-8
-w8080 --> Show warnings when using Z80 instructions that does not exist in 8080.
--86 --> Generate 8086 code.


If no code generation options are specified --bin is assumed.

Debug info goes to standard output, error messages to error output.

Comments and criticisms to: julian.notfound@gmail.com

Use and distribution allowed under the terms of the GPL license.

★ ANNÉES: 2005 , 2006 , 2007 , 2008 , 2021
★ PLATFORME: Mac OS , WIN32
★ LANGAGE:
★ LiCENCE: ???
★ AUTEUR: JULIAN ALBO
★ SITE: http://pasmo.speccy.org/
★ CPCRULEZ: https://cpcrulez.fr/forum/viewtopic.php?p=56456

★ AMSTRAD CPC ★ A voir aussi sur CPCrulez , les sujets suivants pourront vous intéresser...

Lien(s):
» Coding Src's » SDCC ROM development template for Linux / Windows
» Coding » Z80 PC Assembler
» Coding » Gremlin Serial Communications v1
» Coding » DZ80 (Mark Incley)
» Coding » Sdcc - 16 - 3D - Temps Reel Basic
» Coding » Sdcc - 13 - Animation Par Couleur et Scrool
Je participe au site:

» Vous avez remarqué une erreur dans ce texte ?
» Aidez-nous à améliorer cette page : en nous contactant via le forum ou par email.

CPCrulez[Content Management System] v8.7-desktop/c
Page créée en 512 millisecondes et consultée 3148 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.