CPC Rulez
https://cpcrulez.fr/forum/

programmer en asm 8080 sur CPC (sous CP/M)
https://cpcrulez.fr/forum/viewtopic.php?f=4&t=4794
Page 4 sur 5

Auteur :  sPOKE [ 27 Mars 2014, 08:08 ]
Sujet du message :  Version 3.0 authentique de CP/M Plus découverte!!!

sPOKE a écrit :
Comme je suis toujours à la recherche d'une version CP/M Plus 3.0 qui aurait existé...
J'ai enfin trouvé une véritable version 3.0 de CP/M !!! Elle a bien existé comme je le pensais!! :)

J'ai fait appel à un spécialiste mondial de CP/M pour pouvoir la lire (si elle fonctionne encore!)
car je ne possède bien évidemment pas de lecteur de disquette 8 pouces!

Si j'arrive à tester mon programme sur l'ordinateur hôte, ce sera la cerise sur le gateau.
Mais je considère mes recherches d'une v3.0 authentique dores et déjà abouties! Patience et persévérance finissent toujours par payer.

Voilà la petite merveille : ^____^

http://img15.hostingpics.net/pics/479957cpm30.jpg

Image

Auteur :  TotO [ 27 Mars 2014, 09:36 ]
Sujet du message :  Re: programmer en asm 8080 sur CPC (sous CP/M)

C'est beau !

Au passage, c'est (de mémoire) la première fois que je vois écrit le terme DISKETTE en anglais.
Je me disais aussi, qu'on avait pas pu l'inventer en français... :D

Auteur :  sPOKE [ 31 Mars 2014, 05:56 ]
Sujet du message :  Re: programmer en asm 8080 sur CPC (sous CP/M)

Le code source de MS-DOS v1.1 venant d'être publié par Microsoft, il est intéressant d'aller y jeter un coup d'oeil :

Le site web "Computerhistory" qui publie le code source (en contact avec Jim Paterson) finit son article
en nous affirmant que MS-DOS n'est absolument pas copié sur CP/M, dixit un pseudo-expert... ^___^

Regardons plutôt le code source par nous-même : Il utilise les même noms de fonctions que CP/M! il a gardé les mêmes numéros!
Code :
;System call function codes
PRINTMES: EQU   9    // pompage de : CP/M BDOS function 9 (C_WRITESTR) - Output string
OPEN:   EQU   15 // pompage de : CP/M BDOS function 15 (F_OPEN) - Open file
CLOSE:   EQU   16 // pompage de : CP/M BDOS function 16 (F_CLOSE) - Close file
READ:   EQU   20 // pompage de CP/M BDOS function 20 (F_READ) - read next record
SETDMA:   EQU   26 // pompage de CP/M BDOS function 26 (F_DMAOFF) - Set DMA address
MAKE:   EQU   22 // pompage de CP/M BDOS function 22 - create directory

Regardons le début du code :
Code :
   ORG   100H ; tiens, tiens... ça me rappelle quelque chose! hahaha ^^
   PUT   100H

   JMPS   BEGIN

HEADER:   DB   13,10,'Seattle Computer Products 8086 Assembler Version 2.44'
   DB   13,10,'Copyright 1979-1983 by Seattle Computer Products, Inc.'
   DB   13,10,13,10,'$'
BEGIN:

Il utilise le même délimiteur que CP/M, le signe $. Très original ce Tim Paterson. Bon, j'arrête, j'ai assez ri pour aujourd'hui... :D

Auteur :  TotO [ 31 Mars 2014, 11:23 ]
Sujet du message :  Re: programmer en asm 8080 sur CPC (sous CP/M)

Time for Digital Research to ask money...
:mdr:

Nobody to port DOS to CPC now? (don't kick me) :sweatingbullets:

Auteur :  sPOKE [ 31 Mars 2014, 19:02 ]
Sujet du message :  Re: programmer en asm 8080 sur CPC (sous CP/M)

J'ai montré plusieurs fois la routine en langage machine pour détecter la vraie version de CP/M,
mais on peut le faire sans lancer CP/M : il suffit de dumper son fichier CPM3.SYS

Les machines Amstrad (et Sinclair+3) n'ont pas ce fichier car Locomotive Software l'a renommé C10CPM3.EMS
C signifie CPC, 10 signifie v1.0 (de Loco, pas de DRI), CPM3 veut dire CP/M Plus, et EMS "Early Morning Start".
Sur PCW c'est donc J14FCPM3.EMS pour Joyce version Locomotive1.4 French CPM+ (German=J14GCPM3.EMS)
Sur ZX Sinclair+3 c'est S10CPM3.EMS pour Sinclair version Locomotive 1.0 CPM+ (si c'est en anglais pas de lettre E)

Un fichier EMS est un fichier SYS avec un mini "Loader" dans la première "page" (256 octets).

Pour l'Osborne Executive par exemple, en faisant un DUMP Hexa-Ascii de son fichier CPM3.SYS,
on voit tout simplement ceci à l'offset 2B2A1h : C'est ici que la fonction 12 du
BDOS vient chercher le numéro de version.

La fonction 12 du BDOS en fait, charge dans l'Accumulateur un octet se trouvant à l'adresse 1EA1

On démarre ce bon vieux SID, et on lui demande,
poliment, de nous calculer combien fait 1EA1 plus ou moins 0200. (Pourquoi 0200?
parce que le BDOS se trouve dans un fichier SPR, qui contient une "page" avant
le code.

Dans notre cas, on ajoute. Donc, 1EA1 + 200 = 20A1. On dumpe alors le contenu de
cette adresse (le fichier SPR ayant été chargé en mémoire au préalable) et on
voit, effectivement, un octet 31H à cette adresse...

CQFD! ;)

Image

Auteur :  TotO [ 19 Avr 2014, 19:13 ]
Sujet du message :  Re: programmer en asm 8080 sur CPC (sous CP/M)

A propos d'EMS, voici une petite capture d'écran de mon CPC après un |EMS. :)
J'ai ajouté la "ROM Accessory" mais je n'en connait pas le contenu et pas de doc à ce sujet...
J'imagine qu'elle ajoute des commandes en plus des 6 résidentes, mais lesquelles ?

Tu n'auras pas manqué de remarquer que ma X-MEM est vu comme un RAM drive DK'Tronics de 444K !!!
Il est résidant au reset et même à un power OFF/ON du CPC !
Sais-tu si l'on peut le paramétrer pour n'utiliser que les 256 dernier Ko par exemple ?

Pièce jointe :
RAD.JPG

Auteur :  hERMOL [ 20 Avr 2014, 08:53 ]
Sujet du message :  Re: programmer en asm 8080 sur CPC (sous CP/M)

je pense que les rsx dispo sont décrite sur cette page -> https://cpcrulez.fr/applications_CPM-uti ... OM_TAU.htm

Auteur :  TotO [ 20 Avr 2014, 10:26 ]
Sujet du message :  Re: programmer en asm 8080 sur CPC (sous CP/M)

Merci, je vais essayer les commandes de la page pour voir. :)
Sinon, ils ne parlent pas du RAD probablement parce qu'ils n'avaient pas plus de 128K à l'époque lors de l'article.

Auteur :  sPOKE [ 31 Jan 2024, 23:54 ]
Sujet du message :  Re: programmer en asm 8080 sur CPC (sous CP/M)

Salut a tous,

Je recherche le programme RPED.BAS (c'est un éditeur de texte écrit par Roland Perry en BASIC MALLARD protégé
par la protection Mallard Basic SAVE,P que j'ai crackée. :eng:

Il se trouve sur le disk CP/M système du PCW et je n'en ai pas. Rien trouvé sur cpc p0wer.

J'ai un SDK avec CP/M pour PCW mais je n'arrive pas a le lire avec mon émulateur CPC. Read error disk...

Je mets ci-joint le dsk pour PCW 8256 contenant CP/M et RPED.BAS illisible sur mon émulateur CPC.

SI vous pouvez le mettre sur un DSK pour Amstrad CPC, je pourrai l'utiliser dans mon émulateur CPC. Merci

sPOKE

Auteur :  breiztiger [ 01 Fév 2024, 19:08 ]
Sujet du message :  Re: programmer en asm 8080 sur CPC (sous CP/M)

Tiens un de mes dumps :mdr:

si le coeur t'en dit ... un listing assembleur a taper pour lire les disk pcw sur cpc

https://www.cpc-p0wer.com/index.php?pag ... &num=16792

ou utiliser ca

https://www.cpc-p0wer.com/index.php?pag ... l&num=9511

Auteur :  sPOKE [ 01 Fév 2024, 20:11 ]
Sujet du message :  Re: programmer en asm 8080 sur CPC (sous CP/M)

breiztiger a écrit :
si le coeur t'en dit ... un listing assembleur a taper pour lire les disk pcw sur cpc


De l'Assembleur 8080 sous CP/M ? C'est pour moi ça ! Je peux le taper et envoyer le fichier ASM a Kukulcan s'il le veut pour mettre sur son site.

J'imagine que peu d'entre vous se sont amusé a taper du code 8080 sous CP/M :D

Je peux vous traduire le code en Z80 si vous voulez ?

Par contre le deuxieme outil c'est une rom... comment ça s'utilise ?

Y a pas moyen de mettre tout simplement RPED sur un dsk pour CPC afin qu'il soit disponible pour CPC ? Ce serait cool :)

Auteur :  breiztiger [ 01 Fév 2024, 21:18 ]
Sujet du message :  Re: programmer en asm 8080 sur CPC (sous CP/M)

voila les fichiers de la disquette extraient

Auteur :  sPOKE [ 01 Fév 2024, 22:03 ]
Sujet du message :  Re: programmer en asm 8080 sur CPC (sous CP/M)

Merci à toi !

Comment puis-je les mettre dans un dsk stp ? Mon émulateur veut un dsk.

Comment le crée t-on et dépose t-on ces fichiers dessus ?

Auteur :  poulette73 [ 01 Fév 2024, 22:10 ]
Sujet du message :  Re: programmer en asm 8080 sur CPC (sous CP/M)

Tu peux utiliser ManageDSK :JC_doubleup:

Très pratique pour créer une disquette de type DSK, insérer des fichiers, les renommer, les supprimer, extraire des fichiers d'un DSK, voir le contenu au niveau HEXA ou ASCII, etc.

Auteur :  sPOKE [ 01 Fév 2024, 23:08 ]
Sujet du message :  Re: programmer en asm 8080 sur CPC (sous CP/M)

poulette73 a écrit :
Tu peux utiliser ManageDSK


Magnifique ! Je crois l'avoir utilisé il y a des années, mais j'ai tout oublié.

Je vais m'empresser d'essayer ! Merci à toi !

Page 4 sur 5 Le fuseau horaire est UTC+1 heure
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/