Savoir que ces machines ont sans doute finis dans une décharge en Afrique à polluer leur terre et leur flotte... Alors qu'elles pourraient encore tourner aujourd'hui voire faire le bonheur d'un collectionneur...
Carrément. J'était plus ou moins collectionneur quand j'avais la place. J'avais, entre autres, un Apple IIc avec tout les perifs officiels et un C64 idem, les deux en parfait etat de marche, je les ai refourgués a d'autres collectionneurs en déménageant, j'avais aussi tout un tas de "mini ordis basic" (les MOBs ont appelait ça avec un autre potes) que j'avais emmené avec moi et qui ont cramés dans l'incendie de mon ancien appart il y a 4 ans... Et j'avais soigneusement gardé les deux CPC que j'avais récupéré du proprietaire d'un vieux magasin de micro qui avait mis la clé sous la porte pres de chez moi, et qui gardait pas mal de truc dans son garage (lui aussi a fait le vide depuis, j'ai vérifié ). Ben effectivement, ils doivent se dorer la pillule dans un terrain vague congolais à l'heure qu'il est (les veinards ?) Le CPC c'était le premier vrai ordi que j'ai eu, un 6128 à noël en 88 ou 89 (je sais plus), je l'ai gardé plus de 6 ans avant de passer au PC (un amstrad 3386sx un peu custom). C'est ce cher CPC qui m'a poussé dans ma carrière, et bien que je n'ai jamais reussi à l'époque de sortir quoi que ce soit en ASM (sans Internet, à une époque ou personne ne ressortait plus de bouquin sur le sujet, et dans un petit village de campagne, c'était pas possible d'apprendre dans de bonnes conditions), me suis toujours dis que je rattraperais le temps perdu. Et me voilà
Enfi, bref, je vais pas vous raconter ma vie. Merci de votre accueil en tout cas !
Quand j'aurais un peu plus ficelé mon truc, je posterais un sujet dédié ici si vous voulez bien, voir si quelqu'un est motivé pour m'aider à finir ou pour capter quelques tuyau à droite ou à gauche. Il s'agit de developper un jeu d'un genre maintenant bien connu mais qui n'existait pas à l'époque, donc dont le CPC n'a jamais eu d'adaptation (en tout cas à ma connaissance). Je préfère pas en dire trop pour le moment, avant d'avoir quelquechose d'un peu concret à montrer. A ce propos je sens que je vais rapidement être bloqué par les accès disque. J'ai juste survolé quelques pages à ce sujet et ça m'a l'air super fendard tout ça, sans le système...
@longshot (le vrai, le seul, l'unique ?) : merci pour tes explications. Pour le moment j'ai décidé de me servir des interruptions, et de ne pas utiliser l'extension de 64k. Peut-être une fois tout fini, j'ajouterais du contenu pour les 128tistes (musique, plus de sprite, etc. A voir). Mais je garde tes explications sous le coude. Très interessant ce mode d'interruption.
Je ne sais pas si tu l'as déjà dit mais tu es de quel coin ? Car au pire si t'es pas trop loin j'ai une bonne 50aine de cpc donc j'peut t'en fournir un...
Je ne sais pas si tu l'as déjà dit mais tu es de quel coin ? Car au pire si t'es pas trop loin j'ai une bonne 50aine de cpc donc j'peut t'en fournir un...
Ah ouais quand même ! Je suis pas loin d'Annecy(74), mais je peux toujours me déplacer un peu partout, voire payer des "frais de ports et d'emballage", ça me dérange pas (en tout cas pour l'UC). Merci pour la proposition.
Le CPC c'était le premier vrai ordi que j'ai eu, un 6128 à noël en 88 ou 89 (je sais plus), je l'ai gardé plus de 6 ans avant de passer au PC (un amstrad 3386sx un peu custom). C'est ce cher CPC qui m'a poussé dans ma carrière, et bien que je n'ai jamais reussi à l'époque de sortir quoi que ce soit en ASM (sans Internet, à une époque ou personne ne ressortait plus de bouquin sur le sujet, et dans un petit village de campagne, c'était pas possible d'apprendre dans de bonnes conditions), me suis toujours dis que je rattraperais le temps perdu. Et me voilà
Enfi, bref, je vais pas vous raconter ma vie. Merci de votre accueil en tout cas !
Quand j'aurais un peu plus ficelé mon truc, je posterais un sujet dédié ici si vous voulez bien, voir si quelqu'un est motivé pour m'aider à finir ou pour capter quelques tuyau à droite ou à gauche. Il s'agit de developper un jeu d'un genre maintenant bien connu mais qui n'existait pas à l'époque, donc dont le CPC n'a jamais eu d'adaptation (en tout cas à ma connaissance). Je préfère pas en dire trop pour le moment, avant d'avoir quelquechose d'un peu concret à montrer. A ce propos je sens que je vais rapidement être bloqué par les accès disque. J'ai juste survolé quelques pages à ce sujet et ça m'a l'air super fendard tout ça, sans le système...
@longshot (le vrai, le seul, l'unique ?) : merci pour tes explications. Pour le moment j'ai décidé de me servir des interruptions, et de ne pas utiliser l'extension de 64k. Peut-être une fois tout fini, j'ajouterais du contenu pour les 128tistes (musique, plus de sprite, etc. A voir). Mais je garde tes explications sous le coude. Très interessant ce mode d'interruption.
Bonsoir,
Bon dieu, en te lisant j'ai l'impression de me lire !
Ca été exactement ça pour moi : début sur cpc en 1988 (plutot basic), puis "adolescence programmeuse" (Qbasic-pascal-C-ASM) sur pc VGA ! A ceci près que c'est le frangin qui a eu un 386X25 en 1992 me semble. J'ai quand même eu une transition RSX de sprites avant de m'attaquer au 16 bits qu'était le PC en ce temps là !
Une utilisation sympa des banks est de se positionner pour faire du double buffer écran 16 ko au prix d'une page 16 ko. Grosso modo tu alternes entre la bank0, la bank1(&4000),la bank2 (&8000), la bank7 (&c000) et la bank0, la bank1(&4000),la bank3 (&8000), la bank7 (&c000). Je crois. Du coup en mettant l'écran en &8000, tu peux avoir deux écrans de 16 ko. Je trouve que c'est un exemple frappant de l'exploitation de la ram supplémentaire du 6128 (mais y a plus efficace). Heu et pour les accès disk j'utiliserais le système moi...
Inscription : 15 Août 2008, 13:00 Message(s) : 968 Localisation : Troyes, France
Petit point en passant : pour les accès disk , tu peux très bien utiliser l'excellent FDCtools (http://arkos.cpcscene.com/) qui contient de très bon outils pour charger des fichiers au format du système (très utile en début de dév) et rien ne t'empêche de le remplacer une fois que tu as maîtrisé le FDC (en tous ca c'est mon expérience) N'hésites d'ailleurs pas à regarder le source qui est très instructif.
_________________ "NOP" tel est le programme parfait ! court, rapide, lisible et sans bugs (connus)
Petit point en passant : pour les accès disk , tu peux très bien utiliser l'excellent FDCtools (http://arkos.cpcscene.com/) qui contient de très bon outils pour charger des fichiers au format du système (très utile en début de dév) et rien ne t'empêche de le remplacer une fois que tu as maîtrisé le FDC (en tous ca c'est mon expérience) N'hésites d'ailleurs pas à regarder le source qui est très instructif.
Ah, merci du tuyal, je regarderais ça.
Xifos a écrit :
Bon dieu, en te lisant j'ai l'impression de me lire !
Ca été exactement ça pour moi : début sur cpc en 1988 (plutot basic), puis "adolescence programmeuse" (Qbasic-pascal-C-ASM) sur pc VGA ! A ceci près que c'est le frangin qui a eu un 386X25 en 1992 me semble. J'ai quand même eu une transition RSX de sprites avant de m'attaquer au 16 bits qu'était le PC en ce temps là !
La seul prog bas niveau que j'ai fait c'était sur HP48, dans mes années lycée/fac. Ahh, le Saturn 4 Bits et ses reg 64 à champs variable, j'en ai mangé et redemandé. Le z80 parraît tellement plus simple à côté. Ma SX et ma GX ont malheureusement peri dans les flammes. Sinon sur PC, je suis passé directement au C, puis C++, puis python, puis Java, puis PHP... de plus en plus haut niveau. Jamais poussé l'asm x86 plus loin que des put/getPixel() systèmes de temps en temps.
Xifos a écrit :
Une utilisation sympa des banks est de se positionner pour faire du double buffer écran 16 ko au prix d'une page 16 ko. Grosso modo tu alternes entre la bank0, la bank1(&4000),la bank2 (&8000), la bank7 (&c000) et la bank0, la bank1(&4000),la bank3 (&8000), la bank7 (&c000). Je crois. Du coup en mettant l'écran en &8000, tu peux avoir deux écrans de 16 ko. Je trouve que c'est un exemple frappant de l'exploitation de la ram supplémentaire du 6128 (mais y a plus efficace). Heu et pour les accès disk j'utiliserais le système moi...
Si jamais j'ai dit des bêtise je suis mort moi
C'est ce que je fait (l'écran en C000 et un buffer en 8000, mais juste pour sauvegarde du fond, pas de vrai double buffer). Ceci dit j'aimerais bien loger un petit bout d'oversan quelquepart pour "l'interface" du jeu, mais j'en suis pas encore là non plus. A ceci près que je voudrais quand même que ça tienne tout dans 64k, pour ne léser personne. On verra bien si c'est possible quand j'en serai à manquer de place.
Inscription : 28 Août 2008, 23:41 Message(s) : 258
Citer :
Grosso modo tu alternes entre la bank0, la bank1(&4000),la bank2 (&8000), la bank7 (&c000) et la bank0, la bank1(&4000),la bank3 (&8000), la bank7 (&c000).
Non, ça ce n'est pas possible.
C'est plutôt ça : bank 0, bank1, bank2, bank 7 bank 0, bank3, bank2, bank 7
Il suffit de permuter l'écran via le crtc (offset en &4000 ou &C000) pour l'affichage. Le truc sympa, c'est qu'il suffit de permuter l'adressage mémoire pour la routine qui travaille dans cette page travaille toujours entre &4000 et &7FFF (ce qui évite des routines différentes).
Merci énormément Longshot, ca a "tické" dans ma tête. J'ai toujours su que ces modes existaient, mais je n'avais pas "saisi" leur bonne utilisation liés ensemble.
Inscription : 28 Août 2008, 23:41 Message(s) : 258
Pas de quoi Tout ceci n'a pas été fait au hasard. Tu peux ajouter également la commutation suivante bank 0, bank1, bank2, bank 7 bank 0, bank3, bank2, bank 7 bank 4, bank5, bank6, bank 7 Et ainsi, on accède à toutes les bank depuis la bank7. (ce qui permet donc d'utiliser 100% de la ram centrale en vidéo) Je pense que cela a été pensé ainsi à l'origine pour CP/M+ pour permettre une TPA (ram dispo pour un programme) de 61 k.
Grosso modo tu alternes entre la bank0, la bank1(&4000),la bank2 (&8000), la bank7 (&c000) et la bank0, la bank1(&4000),la bank3 (&8000), la bank7 (&c000).
Non, ça ce n'est pas possible.
C'est plutôt ça : bank 0, bank1, bank2, bank 7 bank 0, bank3, bank2, bank 7
Il suffit de permuter l'écran via le crtc (offset en &4000 ou &C000) pour l'affichage. Le truc sympa, c'est qu'il suffit de permuter l'adressage mémoire pour la routine qui travaille dans cette page travaille toujours entre &4000 et &7FFF (ce qui évite des routines différentes).
Argh, je le savais que je dirais des bêtises de mémoire !
Comme punition, je dois réussir à programmer un turrican 3 cpc en 25 hz 16 couleurs 160x200 avec scrolling multidirectionnel au pixel (mode 0) ?
Plus sérieusement, c'est quand même con que le crtc ne puisse pas décoder n'importe quelle bank de 16 ko...
Inscription : 28 Août 2008, 23:41 Message(s) : 258
Citer :
c'est quand même con que le crtc ne puisse pas décoder n'importe quelle bank de 16 ko...
Avec des si....32 couleurs différentes au lieu de 27, des crtc identiques, ... (et si... amstrad avait demandé l'avis de programmeurs sur la conception du plus)
Citer :
Comme punition, je dois réussir à programmer un turrican 3 cpc en 25 hz 16 couleurs 160x200 avec scrolling multidirectionnel au pixel (mode 0) ?
Faisable en hard uniquement en trichant avec le registre 3 du crtc.
@longshot tes réponses m'ont tellement allumé que j'en ai écris un petit article sur mon site pour résumer le tout ! j'en comprends très bien les bénéfices... il était temps de changer du traditionnel C4-C5-C6-C7
Inscription : 13 Jan 2010, 14:25 Message(s) : 2270
Ce qui m'étonne, c'est de connaitre l'existance de &C0, &C5, &C6, &C7 et de ne pas avoir été curieux de voir comment se comportait &C1, &C2, &C3 !
C'est un peut comme cette histoire d'adressage mémoire ou "tout le monde" pensait que le CPC supportait au max 512K de RAM et que les 3 bit restants étaient non utilisés ... Jusqu'à ce que quelqu'un fabrique une extension de 4Mo. J'ai vraiment l'impression qu'il y a un gros manque de curiosité face au hardware de notre machine, comparé à d'autres micro de l'époque comme le Spectrum ou le MSX. D'ailleurs, ce n'est certainement pas une coïncidence si ces machines ont vu naitre beaucoup plus de cartes d'extensions en tout genres, réalisés par des passionnés.
Excusez-moi d'interrupter abruptement quelques instants votre conversation... interessante
Je viens de faire quelques test d'overscan, et j'ai peur d'avoir compris un truc qui me plait pas du tout : si je reformatte mon écran pour qu'il fasse disons 20ko tout rond (256 lignes de 80o chacune), les 12ko inutilsés sont... perdu, ou difficilement addressable ? A partir des 16ko standards le mode d'adressage graphique semble... perturbé. Je ne trouve pas de doc "généraliste" à ce sujet, que se passe-t-il, s'il vous please ?
Utilisateur(s) parcourant ce forum : Google [Bot] et 9 invité(s)
Vous ne pouvez pas publier de nouveaux sujets dans ce forum Vous ne pouvez pas répondre aux sujets dans ce forum Vous ne pouvez pas éditer vos messages dans ce forum Vous ne pouvez pas supprimer vos messages dans ce forum Vous ne pouvez pas insérer de pièces jointes dans ce forum