Category: Modèle

Catégorie regroupant les différents modèles d’Oric

  • LoresFix 1.0: LORES 1 corrigé sur Oric-1

    Dans le CEO-Mag 368, Didier se faisait l’écho des tests de Rax sur le mode LORES 1, très rarement utilisé. Au passage, il apportait l’explication sur la différence entre les caractères semi-graphiques sur Oric-1, et sur Atmos: sur Oric-1, ils sont définis sur une matrice de 8×8 pixels, alors que l’Oric n’en affiche que 6×8. Ils ont donc un aspect bizarre, décentré, et Didier en concluait “on oubliera vite ce jeu de caractère dans le cadre d’une utilisation sur Oric-1”.

    Bien qu’ayant globalement été oublié tout court, j’ai eu à coeur de remettre le mode LORES 1 à égalité entre l’Oric-1 et l’Atmos ! Voici donc un modeste programme bricolé rapidement, 38 octets ayant pour but de corriger, après le boot de l’Oric-1, les caractères LORES pour les rendre identiques à ceux de l’Atmos.
    Cette routine redéfinit simplement les caractères LORES en les décalant d’un bit vers la gauche. Elle est relogeable où l’on veut en RAM. Elle ne modifiera qu’une fois les caractères: s’il ont déjà été corrigés, la lancer ne produira plus d’effet. Elle peut donc sans risque être lancée au début d’un programme.
    La redéfinition de caractères résistera à HIRES/TEXT, mais pas à un reset à chaud: il faudra alors lancer à nouveau la routine.

    Voici le code:

    AD 08 B9   LDA $B908     Let's control if we already seem to have the right values
    C9 38 CMP #$38 by testing one
    F0 1E BEQ exit If so, exit!
    A2 00 LDX #$00 else get ready to change a whole page

    loopB9:
    BD 00 B9 LDA $B900,X Load a byte from page $B9
    F0 06 BEQ nextB9 If $00, nothing to do, skip to next
    6A ROR else shift once to the right
    29 3F AND #$3F then set the two left bytes to 0 ($3F=00111111)
    9D 00 B9 STA B900,X and replace the value in RAM
    nextB9:
    CA DEX Next byte
    D0 F2 BNE loopB9 As long as X is not zeroed again, loop

    loopBA:
    BD 00 BA LDA $BA00,X X already at 0 here. Load a byte from page $BA
    F0 06 BEQ nextBA If $00, nothing to do, skip to next
    6A ROR else shift once to the right
    29 3F AND #$3F then set the two left bytes to 0 ($3F=00111111)
    9D 00 BA STA BA00,X and replace the value in RAM
    nextBA:
    CA DEX Next byte
    D0 F2 BNE loopBA As long as X is not zeroed again, loop

    exit:
    60 RTS

    (merci à ISS qui a relu mon code et supprimé deux octets inutiles !)

    J’ai redécouvert après coup que Mike Brown donnait déjà exactement cette solution, dans une discussion que nous avions eue en 2019 alors que je m’étonnais de la différence d’aspect du mode LORES 1 entre l’Oric-1 et l’Atmos. Cf. https://forum.defence-force.org/viewtopic.php?t=1981
    Vous trouverez ci-joint le fichier TAP de LoresFix 1.0, implémenté au bas de la page 1 et qui se lance automatiquement.

    In English:
    The goal of Lores Fix is to correct the alternate LORES characters definition, which is wrong on ROM 1.0.
    What’s wrong? Well, ROM 1.0 sets those chars on a 8×8 pixels matrix, while Orics actually only display 6×8 pixels on screen. So the chars are not correctly centered.
    This was corrected in ROM 1.1.
    So, Lores Fix simply shifts in RAM the default LORES characters by 1 bit to the right, having them centered again. You can run it as much as you want, the chars won’t shift again if they are at the right value 😉

    Mise à jour 05/09/2024 :
    Grâce aux remarques et idées d’ISS et Sodiumlightbaby sur Defence-Force, nous sommes arrivés à une version bien plus compacte du code, que voici (seulement 16 octets !) :

      AE 18 B9   LDX $B918      Test if we have a ROM 1.0: value FF in $B918 (3F on ROM 1.1, 7F once shifted on ROM 1.0)
    E8 INX increment by 1 to get 00 if we had FF, thus get ready to change a whole page
    D0 09 BNE exit if result was different from 00, it's not a ROM 1.0 or it was already fixed, so exit!

    loop:
    5E 00 B9 LSR $B900,X shift bytes from page $B9
    5E 00 BA LSR $BA00,X shift bytes from page $BA
    CA DEX Next byte
    D0 F7 BNE loop As long as X is not zeroed again, loop

    exit:
    60 RTS

    Cependant, je me suis rendu compte que lancer ce code sur Oric-1 provoque de gros problèmes quand on essaie de rentrer un programme Basic ensuite. Diantre, que se passe-t-il ? Est-ce que cela pourrait avoir un lien avec le HIMEM qui n’est pas placé au boot de l’Oric-1 ? Qu’est-ce qui pourrait donc gêner le système, de voir modifiées les octets de B900 à BAFF ?
    En réalité, deux choses se cumulaient:
    – sur ROM 1.0, le chargement d’un bloc mémoire plante le pointeur “fin de basic” en page 0, octets 9C-9D. Ce pointeur de fin prend la valeur de la fin du bloc mémoire !
    – d’autre part, j’avais stocké la routine en $100 (pile), ce qui semble être une mauvaise idée quand on reste sur l’interpréteur et qu’on joue avec le basic: la routine est écrasée. BFE0-BFFF semble plus indiqué !

    Le mieux pour une utilisation sur Oric-1 dans un programme Basic, semble donc être une implémentation à l’intérieur du Basic, par exemple (en appelant la routine par CALL#BFE0):

     65 FORI=1TO16
    70 READA$:A=VAL("#"+A$):POKE#BFDF+I,A
    75 NEXTI
    80 DATAAE,18,B9,E8,D0,09,5E,00,B9,5E,00,BA,CA,D0,F7,60
  • Fut’Oric

    Fut’Oric est un jeu de chiffres de type Futoshiki ce qui veut dire “non égal” en japonais. Il est conçu pour Atmos (c’est-à-dire pour la Rom 1.1 + Sedoric).
    Le programme est au format dsk et peut être utilisé avec un Atmos réel + Microdisc ou avec un Atmos émulé par exemple avec Euphoric. Mais pas avec Oricutron à cause d’une double bogue :
    1) Oricutron retourne le code 166 (#A6) au lieu de 165 (#A5) lorsque la touche FUNCT est pressée.
    2) Le “stick mode” ne marche pas pour la touche FUNCT. Même en modifiant le programme pour qu’il détecte le code #A6 au lieu de #A5, cela ne marche toujours pas car le “stick mode” est indispensable. Il faut donc attendre qu’Oricutron soit débogué…

    L’objectif est de remplir toutes les cases d’une grille avec des chiffres, de telle manière que chaque ligne et chaque colonne soient remplie de chiffres différents. C’est donc un jeu du style Sudoku, mais avec trois différences majeures :
    1) Les chiffres indiqués initialement sont moins nombreux.
    2) Cette réduction du nombre d’indices a été compensée avec l’apparition de quelques signes “inférieur à” et “supérieur à” placés entre certaines cases. Ces symboles < et > indique la relation entre les cases adjacentes.
    3) Les dimensions de la grille peut aller de 4×4 à 9×9 cases (en théorie, car cela devient vite trop compliqué au-delà de 6×6 cases).

    Dans cette adaptation bilingue (Français et Anglais) pour Oric, trois niveaux de difficulté vous attendent :
    1) Fastoche : avec 16 grilles de 4×4 cases à remplir avec les chiffres de 1 à 4. Ce niveau est surtout pédagogique, car ces grilles peuvent être aisément résolues.
    2) Faisable : avec 32 grilles de 5×5 cases à remplir avec les chiffres de 1 à 5. Ces grilles sont les plus intéressantes, car elles sont bien équilibrées entre difficulté et intérêt.
    3) Fortiche : avec 16 grilles de 6×6 cases à remplir avec les chiffres de 1 à 6. Elles vous demanderont probablement beaucoup de patience et de matière grise… avant de parvenir à les résoudre ! Les commandes sont simples et réduites au minimum :
    1) Les 4 flèches pour vous déplacer dans la grille.
    2) Un chiffre (de 1 à 4, 1 à 5 ou 1 à 6 selon la taille de la grille).
    3) FUNCT + chiffre pour placer une hypothèse.
    4) Chiffre 0 pour effacer une case.
    5) La touche R (Reset) pour recommencer la grille en cours.
    6) La touche S (Save) pour sauvegarder la grille en cours.
    7) La touche L (Load) pour recharger la grille précédemment sauvegardée.
    8) La touche B (Bruit) pour valider ou arrêter le clic de la touche FUNCT.
    9) Et pour finir, la touche Q (Quitter).

    Toutes les grilles ont évidemment une solution et peuvent être résolues avec un peu d’observation et de logique, sans avoir besoin d’y “aller au pifomètre”. La possibilité de placer des hypothèses dans les cases devrait vous aider dans les cas complexes.

    PS. Ce programme est également disponible sur http://andre.cheramy.net/oric.htm  Ce site contient notamment une section téléchargement très étoffée. Vous y trouverez tous mes programmes, des trucs et astuces, quasiment tous les livres connus sur l’Oric et le 6502, tout ce qui concerne le Super-Oric, etc. Hélas, il y a aussi plein de choses périmées ou pas mises à jour (merci pour votre compréhension, selon la formule usuelle débile). J’entre dans un âge avancé et il se pourrait que mon site disparaisse sans prévenir. Je vous invite donc à récupérer tous ce qui pourrait vous intéresser.
    Bien cordialement à vous tous.

  • COPIE DE LA CARTE MÈRE D’UN TELESTRAT

    INTRODUCTION
    Bonjour à tous et à toutes !
    Je me lance (enfin) dans la réalisation d’une copie de carte mère de Telestrat.
    Le projet n’en est qu’à l’ébauche et à l’étude technique.
    Ne possédant pas cette fabuleuse machine, je découvre et me pose pas mal de questions.
    J’ai besoin d’aide et de conseils de ceux qui connaissent et utilisent (ou ont utilisé) leTelestrat.
    Alors, si parmi vous, certains peuvent m’aider, ce serait super !
    Je m’excuse par avance du nombre, de la pauvre qualité et du manque de méthodologie de mes questions.
    En attendant la livraison des circuits commandés, j’essaie de déblayer les obstacles devant moi…

    Q1 =
    J’ai un lecteur de disquette 3.5″, non testé maintenant, avec quelques disquettes. Peut-on le brancher directement sur le Telestrat ? Ou le câble de liaison est-il spécial ? Ou encore faut-il intercaler une carte intermédiaire ?

    Q2 =
    Où puis-je trouver et télécharger le contenu des cartouches les plus usuelles pour en faire de nouvelles adaptables à mon projet ?

    Mise à jour du 03 août 2022 :

    Ça avance doucement !

    La carte mère :

    Vue de dessus
    Vue de dessous

    Le boîtier inférieur, avec ses découpes :

    La peinture orange sera appliquée plus tard…

  • Rapid’Oric

    Un jeu de puzzles logiques pour Rom 1.1 et Sedoric (Atmos réel, Euphoric ou Oricutron)

    par André C.

    Ce jeu a été inventé par Naoki Inaba sous le nom de “Nanba Burokku”. Par la suite, il a été renommé “Tectonics”, “Suguru” ou même “Number blocks”. La version Oric, adaptée aux possibilités de l’écran, bénéficie en outre d’une interface Français/Anglais.
    Le principe est simple : Le jeu se joue sur une grille. C’est la taille de la grille qui détermine la difficulté du jeu. Cette grille est divisée en zones de 1 à 5 cases, délimitées par des lignes épaisses. Le but du jeu est de remplir la grille avec des chiffres de 1 à 5 de telle manière que :
    1) Il n’y ait pas de chiffres identiques à l’intérieur d’une même zone.
    2) Il n’y ait pas de chiffres identiques dans les cases qui se touchent, même en diagonale.

    TROIS NIVEAUX DE DIFFICULTÉ POUR LA VERSION ORIC

    Les règles, qui sont simples, permettent au jeu d’être rapide, du moins pour le premier niveau de difficulté labellisé “Fastoche”. Ce niveau comporte 36 grilles de 4×5 cases pouvant être résolues en une à deux minutes chacune (ce qui vous occupera quand même pour un bon moment).

    Niveau “Fastoche”

    Les choses se compliquent avec le deuxième niveau “Faisable” dont les 24 grilles, comptent 9×5 cases. Ces grilles peuvent encore être résolues dans un temps raisonnable, mais le nom de “Rapid’Oric” que j’ai attribué à mon jeu commence à être un peu usurpé…

    Niveau “Faisable”

    Le troisième et dernier niveau “Fortiche” comporte 8 grilles de 11×9 cases et le jeu n’a plus rien de “Rapide”. Ces grilles sont réservées aux malades de la logique. Attention, vous risquez de vous arracher les cheveux (si vous en avez).

    Niveau “Fortiche”

    LES COMMANDES

    Pour résoudre ces grilles, vous disposez des commandes suivantes :
    -Les 4 flèches pour déplacer le curseur dans la grille.
    -FUNCT + flèche pour déplacer plus rapidement le curseur.
    -Touche de 1 à 5 pour placer un chiffre dans la case au curseur.
    -FUNCT + touche de 1 à 5 pour placer une hypothèse.
    -Touche 0 pour effacer la case au curseur.
    -Touche R pour Réinitialiser la grille en cours avec les valeurs de départ.
    -Touche S pour Sauver la grille en cours.
    -Touche L pour recharger (Load) la grille précédemment sauvée.

    UN PEU DE STRATÉGIE

    Il faut commencer par rechercher les zones ne comportant qu’une seule case, car elles ne peuvent contenir que le chiffre 1. Ensuite, vous pourrez peut-être trouver quelques chiffres dans les zones de 2 et 3 cases qui comptent forcément parmi les moins compliquées.
    Sinon, il faut rechercher les solutions les plus évidentes. Cette stratégie suffit en général pour les grilles “Fastoches”, c’est pourquoi elles sont si rapides à résoudre. Un peu plus de matière grise et de temps seront nécessaires pour les grilles plus grandes.

    Premier exemple, illustrant la progression des raisonnements logiques:

    Des extraits séquentiels d’une même grille sont rangés de gauche à droite

    On repère d’abord une zone mono-case et on y place le chiffre 1. Dans la zone située en dessous, une seule case peut recevoir le chiffre 2. Par suite, la place du chiffre 3 est évidente. Du coup, dans la case du dessus, le chiffre 3 ne peut aller qu’à un seul endroit. Les positions du 4, puis du 5 ne posent alors aucun problème. Et ainsi de suite, jusqu’à résolution de toute la grille…

    Deuxième exemple, emprunté à une grille plus complexe:

    Les extraits successifs de cette grille sont rangés de gauche à droite, puis de haut en bas.

    Ici encore on commence par une zone mono-case qui reçoit avec plaisir le chiffre 1. Dans la zone de 5 cases située au-dessus, le 1 ne peut être placé qu’à un seul endroit. On en profite pour renseigner la zone bi-cases située encore au-dessus en y plaçant les chiffres 1 et 2. Intéressons-nous à la zone de 5 cases en croix située au milieu de l’extrait, car le chiffre 4 ne peut aller qu’à un seul endroit. Par suite, plaçons le chiffre 5, puis le 2 et enfin le 1.
    La bonne stratégie consiste à tourner autour de ce bloc central de cases résolues. C’est ainsi qu’on trouve où mettre les chiffres 1 et 2 dans les zones adjacentes. J’attire votre attention sur le chiffre 2 ajouté dans le dernier extrait.
    La stratégie illustrée dans ce cas vous sera souvent très utile lorsque le jeu semblera bloqué. On effet, si on fait le bilan de ce que cette case pourrait contenir, on voit que les chiffres 1, 3, 4 et 5 sont interdits (règle n°2) et donc que seul le chiffre 2 peut y être placé.
    Il arrivera évidemment que plusieurs chiffres semblent possibles (à un moment donné) pour une même case. L’utilisation de la touche FUNCT vous permettra d’y placer des hypothèses. Ne perdez pas de vue que les hypothèses ne représentent pas seulement des possibilités, elles permettent aussi de statuer sur le contenu éventuel des cases adjacentes.
    Toutes les grilles ont bien sûr une solution, n’en doutez pas.
    En toute bonne logique… la logique finira par triompher !

  • Tout savoir sur Atmos (Eyrolles)

    Par Roger Politis & Bruno Vanryb, édité en 1984

    https://www.oric.org/ftp/ceo/ceomag/downloads///2006/disk/cd_2006/Complement/Tout savoir sur Atmos ocr.pdf

    Téléchargement possible pour les personnes inscrites sur le site ; sans obligation d’appartenance au CEO

  • Jeux en Basic sur Atmos (Sybex)

    Les jeux présentés dans ce livre utilisent des fonctions propres à votre micro-ordinateur : son, couleur, graphisme haute résolution, caractères graphiques définis par l’utilisateur, etc. Pour cette raison, ces programmes ne fonctionnent que sur l’Atmos et sont difficilement adaptables à des matériels différents. En particulier, la plupart de ces jeux ne fonctionnent pas sur l’Oric 1. Il est cependant possible de transformer l’Oric 1 en Atmos. (Consultez votre revendeur.) Au-delà du jeu lui-même, l’étude de ces programmes vous enseignera de nombreuses techniques de programmation qui vous seront très utiles pour développer vos propres programmes. ISBN 2-7361-0046-6

    https://archive.org/details/sybex-jeux-en-basic-sur-atmos

    Téléchargement ouvert à tous

  • Jeux en Basic sur Oric (Sybex)

    Les jeux présentés dans ce livre utilisent toutes les possibilités de votre Oric : son, couleurs, caractères graphiques définissables par l’utilisateur. Pour cette raison, ces programmes ne fonctionnent que sur l’ordinateur pour lequel ils ont été conçus et sont difficilement adaptables à des matériels différents. Au-delà du jeu lui-même, l’étude de ces programmes vous enseignera de nombreuses techniques de programmation particulières à votre Oric qui vous seront très utiles pour développer vos propres programmes. ISBN 2-902414-78-1

    https://archive.org/details/sybex-jeux-en-basic-sur-oric-ocr-dfol

    Téléchargement ouvert à tous

  • Mieux programmer sur Oric1 et Atmos (Soracom)

    Publié en Avril 1985, cet ouvrage prend la suite du manuel de l’ORIC ATMOS ; il suppose donc que le lecteur connaît déjà les fonctions BASIC de l’appareil. Il reste à savoir s’en servir avec efficacité ;après le permis de conduire, il s’agit de devenir un bon conducteur… Nous mêlons continuellement deux choses. D’une part de bonnes méthodes éprouvées par les programmeurs chevronnés, et d’autre part une multitude de trucs, de tours de mains, qui sont eux très souvent spécifiques aux ORIC, et à l’ATMOS en particulier.

    En effet, il n’y a pas deux micro-ordinateurs identiques, chacun a ses points forts et ses points faibles et aucun n’est parfait (même s’il fait quinze fois le prix de l’ATMOS !). Nous allons donc apprendre à nous appuyer sur des qualités afin de contourner des lacunes. Parlant du perfectionnement de la programmation en BASIC, l’auteur a conscience qu’il s’adresse à des gens qui ont des idées de programmes, idées qui doivent se concrétiser d’une manière SOLIDE et RAPIDEMENT. Si votre idée est bonne, il ne faut plus en faire un programme boîteux truffé de fautes de débutant, mais un vrai LOGICIEL qui « tienne la route », même s’il est court (ce qui vous incitera à vous lancer dans de plus longs). Ces « bonnes habitudes à prendre » vous amèneront à la qualité professionnelle ; d’ailleurs nous n’hésiterons pas à vous familiariser un peu avec le jargon. Hormis les utilitaires du chapitre XII, qui complètent le BASIC ORIC, nous n’indiquons que des programmes très courts qui sont en somme des « passages » de démonstrations. Tous ont été testés, et ils sont représentés en 38 caractères par ligne, exactement comme vous le verrez sur votre écran (après avoir fait LIST).

    Notre principal souci a été de rester clair pour tous, car pour vous la micro-informatique est avant tout un LOISIR, donc pas de « cours magistraux » !

    La table des matières risque de vous surprendre un peu, on parle beaucoup de l’esthétique des pages d’écran, des sécurités «antiplantages » et pas un mot sur le langage machine ni sur la synthèse musicale….

    Question de priorité : Pour le langage machine, il faudrait y consacrer un énorme volume (et il en existe déjà) ; pour que la musique accompagne une image qui bouge, il faut du langage machine. Pour faire de la musique sans image (ou fixe), un instrument spécifique est meilleur marché et bien plus pratique qu’un micro-ordinateur… Alors qu’il y tant de belles choses à faire en BASIC ! Nota : Conçu à partir de l’ATMOS, cet ouvrage s’adresse aussi, disons à 90 %, aux possesseurs de l’ORIC 1

    ISBN 2-904032-30-4

    https://archive.org/details/soracom-mieux-programmer-sur-oric-1-et-atmos-ocr-dfol

    Téléchargement ouvert à tous

  • Nouveaux jeux sur Atmos (Edimicro)

    Serez-vous capable : 

    • d’échapper à une meute de loup? 
    • de chanter des airs de musique populaire? 
    • de dresser un serpent? 
    • de piloter un module lunaire? 

    Voici 30 programmes de jeux variés : jeux de pur divertissement qui utilisent le son et la couleur, puzzles, jeux d’arcade, problèmes de réflexion. Vous trouverez en annexe une section très utile : 

    • programme de SAUVEGARDE de l’écran 
    • programme utilitaire de RENUMEROTATION 
    • MUSIQUE sur Atmos 

    Les programmes sont clairement décrits et commentés. De courtes descriptions et des représentations de l’écran sont fournies. ISBN : 2-904457-18-6 

    https://archive.org/details/edimicro-nouveaux-jeux-sur-atmos-ocr-dfol

    Téléchargement ouvert à tous

  • Apprenez l’électronique sur Oric et Atmos (Soracom)

    L’étude des phénomènes électroniques est souvent rendue difficile par le côté abstrait des formules présentées dans les manuels scolaires. Pour la première fois, les circuits complexes deviennent vivants, les courbes se tracent automatiquement sous vos yeux en fonction des paramètres que vous introduisez dans votre micro ordinateur ORIC et ATMOS.

    Des circuits élémentaires jusqu’à l’étude de L’abaque de SMITH, Pierre BEAUFILS présente une approche entièrement nouvelle des circuits électroniques.

    Bon amusement !

    https://archive.org/details/soracom-apprenez-lelectronique-sur-oric-et-atmos

    Téléchargement ouvert à tous