it regularly difficult to spot, aside from maybe by a genuine Rolex replica history specialist, in light of the fact that the best phony Rolex are 95% made by Rolex. If you want to know how often you should optimally be winding your rolex replica watch, Click Here.

Lecteur / enregistr...
 
Notifications
Retirer tout

Lecteur / enregistreur carte sd sur port cassette

36 Posts
8 Utilisateurs
4 Reactions
383 Vu
Atmosphere
(@atmosphere)
Eminent Member
Inscription: Il y a 2 mois
Posts: 25
Début du sujet  

Posté par: @didier_v

 @atmosphere : Je crois que les fichiers d'Assinie sont complets, les lignes de code sont autonomes avec les adresses listées notamment dans le dernier listing

 

Oups, oui autant pour moi j'avais zappé une partie du code 🙄 

Une question, est-ce que ça pose problème pour d'autres périphériques si j'utilise un poke 768,1 pour générer une impulsion sur le port cassette ? Je m'en sers pour générer une impulsion de 10 ms environ mais bon c'est une astuce que j'ai trouvé pratique mais je ne sais pas trop en fait si ça ne va pas semer la pagaille 😊

 


   
RépondreCitation
Atmosphere
(@atmosphere)
Eminent Member
Inscription: Il y a 2 mois
Posts: 25
Début du sujet  

Ca marche, c'est trop bien, merci, je vais pouvoir avancer 😊😉


   
RépondreCitation
assinie
(@assinie)
Membre
Inscription: Il y a 6 ans
Posts: 65
 

Posté par: @atmosphere

Une question, est-ce que ça pose problème pour d'autres périphériques si j'utilise un poke 768,1 pour générer une impulsion sur le port cassette ?

La réponse rapide est oui: si tu as une imprimante connectée à l'Oric elle va recevoir un caractère "parasite", d'autre part le relais pour la télécomande du magnétophone reçoit aussi l'impulsion ce qui n'est pas forcément une bonne idée.

 

La réponse plus détaillée:

L'adresse 768 correspond certes au port B du VIA qui est bien utilisé pour le port K7, mais les bits 0 à 3 sont utilisés pour le clavier.

Le bit 4 est utilisé pour l'imprimante (signal STROBE) et le bit 5 n'est pas utilisé (il n'est connecté à rien sauf modification de l'Oric)

Pour le port K7, il y a le bit 6 pour la télécomande du magnétophone, le bit 7 pour l'envoi du signal vers le magnétophone et CS1 pour la réception du signal par l'Oric.

La valeur des bits 7 à 0 est 1011xxxx en fonctionnement normal, les x sont modifiés pour la gestion du clavier à chaque interruption si elles sont actives.

Donc en mettant la valeur 1 à l'adresse 768 tu mets le bit 0 à 1 et tous les autres à 0 soit 00000001, mais l'interruption suivante forcera à nouveau les bits 7 à 4 à 1011 et les bits 3 à 0 avec la valeur suivante pour le clavier.

Hors clavier, cela génère une impulsion négative 1->0->1 sur les pits 7, 5 et 4 donc vers la sortie K7 et vers le relais de la télécommande du magnétophone et vers le signal STROBE de l'imprimante.

Je pense qu'il vaudrait mieux ne pas toucher aux bits 6 et 4 pour éviter de toucher au relais et d'envoyer un caractère à l'imprimante si il y en a une connectée à l'Oric.

Une valeur de 0011xxxx, soit entre 48 et 63 inclus, permet de ne pas toucher au relais ni à l'imprimante (il faudrait que je vérifie le risque de perturbation de la lecture du clavier mais il doit être faible)

 

Dernière remarque, si la durée de l'impulsion doit être précise le mieux est de faire l'équivalent du poke en assembleur et en ayant supprimé les interruptions avant (ne pas oublier de les autoriser à nouveau après).
En effet, tu ne sais pas quel est le délai entre l'exécution du poke et la prochaine interruption donc la durée de l'impulsion peut être très inférieure à 10ms.


   
RépondreCitation
Atmosphere
(@atmosphere)
Eminent Member
Inscription: Il y a 2 mois
Posts: 25
Début du sujet  
  • Merci Assinie pour toutes ces précisions, je pensais bien que ça pouvait perturber les périphériques reliés au port B mais je n'ai pas de documents précis alors j'ai du mal comprendre. Quand je fais un poke 768,1 j'ai une impulsion entre 8 et 12 ms, ça dépend, j'ai à peu près la même chose si je fais poke 768,0 le contact du magnétophone ne se ferme pas et je n'ai constaté aucune perturbations mais je n'ai pas d'imprimante connectée sur l'oric, il faudrait que je vérifie avec l'analyseur logique. En fait je n'ai pas besoin que l'impulsion soit précise, entre 8 et 12 ms ça me convient, c'est juste pour valider une commande, ça m'évite de faire appel à la routine d'envoi de bytes via le port cassette. 
  •  

   
RépondreCitation
assinie
(@assinie)
Membre
Inscription: Il y a 6 ans
Posts: 65
 

En fait tu auras une impulsion sur la sortie K7 à partir du moment où tu mets le bit 7 à 0 donc pour n'importe quelle valeur inférieure à 128.

Pour les effets de bords sur le relais, il est possible que l'impulsion soit trop rapide pour le déclancher mais il vaut quand même mieux éviter de jouer avec.

Ce message a été modifié Il y a 1 mois parassinie

   
RépondreCitation
Atmosphere
(@atmosphere)
Eminent Member
Inscription: Il y a 2 mois
Posts: 25
Début du sujet  

Mon petit projet avance, j'ai réalisé le typon pour un prototype, j'ai fait tirer 10 cartes, si ça marche je mettrai en ligne le typon, le schéma et le fichier à charger dans l'esp32.

1747323602-IMG_20250515_173049.jpg

   
RépondreCitation
Atmosphere
(@atmosphere)
Eminent Member
Inscription: Il y a 2 mois
Posts: 25
Début du sujet  

Sur l'arrière on voit l'emplacement de 2 transistors qui sont prévus pour atténuer la puissance de sortie du haut parleur de l'Oric, on devrait pouvoir devrait pouvoir sélectionner le volume sur 3 niveaux, faible, moyen et normal.

1747323861-IMG_20250515_173135.jpg

   
RépondreCitation
shield59
(@shield59)
Estimable Member Adhérent
Inscription: Il y a 3 ans
Posts: 225
 

Hello,

Bonjour,

Sur 10 cartes je suis intéressé par 1 exemplaire si c' est possible......cette extension pourrait mettre utile pour sauvegarder mes tap de mon second Oric.L' ensemble est compact et interessant à assembler.Les détails des astuces de programmation sont instructifs......merci pour toutes ce infos...

 


   
RépondreCitation
Atmosphere
(@atmosphere)
Eminent Member
Inscription: Il y a 2 mois
Posts: 25
Début du sujet  

Bonjour, dès que j'aurai assemblé et testé le premier et je donnerai tous les détails pour la construction, j'ai fait en sorte que les éléments soient faciles à trouver et pas cher, il n'y a peut être que les 3 ou 4 résistances cms à souder qui peuvent rebuter certains mais ça je peux les monter sur le pcb si ça peut aider.


   
RépondreCitation
Gliou
(@gliou)
Eminent Member Adhérent
Inscription: Il y a 4 ans
Posts: 27
 

@atmosphere C'est encore moi Hihihihi.

Connais tu ce forum ? https://forum.system-cfg.com/index.php

Il est plus généraliste, mais il y a une plus grande communauté vintage 🤣 et tu trouveras surement des Oricien intéressés pour t'aider. (enfin je crois)


   
RépondreCitation
Atmosphere
(@atmosphere)
Eminent Member
Inscription: Il y a 2 mois
Posts: 25
Début du sujet  

Merci Gliou pour le lien, je ne connaissais pas, je découvre ce petit monde du vintage de la micro 😊 


   
RépondreCitation
Atmosphere
(@atmosphere)
Eminent Member
Inscription: Il y a 2 mois
Posts: 25
Début du sujet  

Bonjour à tous, 

dans le but de rendre compatible mon lecteur sd avec tous les fichiers TAP, j'essaie de comprendre comment ces fichiers sont organisés. J'ai récupéré plusieurs jeux au format TAP, la plupart se chargent correctement et certains plantent et je ne sais pas vraiment pourquoi. Quand je regarde comment sont séparés les différentes séquences d'un fichier TAP, certains présentent 3*0x16 (octets de synchro) et 1*0x24 au début de chaque séquences, jusque là pas de soucis mais d'autres n'ont que 2*0x16 certains 4*0x16 et même on peut trouver 256*0x16, est-ce que ça signifie quelque chose de particulier (pause, vitesse de transmission etc) ?

J'ai cherché un peu partout mais je ne trouve pas de réponse...

Je vais essayer d'ajouter une fonction qui permette de lire des fichiers WAV ça permettrait peut être de charger des jeux qui ne s'ouvrent pas au format TAP... à suivre.


   
RépondreCitation
Gliou
(@gliou)
Eminent Member Adhérent
Inscription: Il y a 4 ans
Posts: 27
 

Ah! bonne question 🤔 , je vais attendre aussi les réponses comme cela je pourrais peut être avancer sur mon projet de transcription .tap en .txt.

https://github.com/Gliou/ORIC_BasicFileList/blob/oric/run.py 😉 

 

Mais tu peux peut être avoir des réponses dans l'ORIC A NU..

https://library.defence-force.org/index.php?content=any&author=FabriceBroche&page=books&sort_by=name&freesearch=&language=fr p253

Ce message a été modifié Il y a 1 semaine 3 fois parGliou

   
RépondreCitation
Kenneth
(@kenneth)
Reputable Member Adhérent
Inscription: Il y a 5 ans
Posts: 340
 

Pour les fichiers sonores d'origine, l'amorce est longue. Il a été convenu de se contenter d'utiliser seulement 3 octets d'amorce pour les émulateurs.


   
RépondreCitation
Atmosphere
(@atmosphere)
Eminent Member
Inscription: Il y a 2 mois
Posts: 25
Début du sujet  

Posté par: @kenneth

Pour les fichiers sonores d'origine, l'amorce est longue. Il a été convenu de se contenter d'utiliser seulement 3 octets d'amorce pour les émulateurs.

Oui c'est d'ailleurs ce que j'ai fait pour transférer les fichiers vers l'Oric, mais il a quand même besoin d'une dizaine de bytes de synchro sinon il ne débute pas la transmission.

Bonne idée le projet de Gliou, on pourrait même l'ajouter à l'interface pour convertir un programme basic en texte et le sauver sur carte sd ou l'envoyer sur le port série, ou même peut être faire l'inverse ??...
Je travaille aussi sur l'ajout d'un mini joystick analogique style ps2 pour sélectionner le programme à charger si on ne veut pas passer par l'Oric, ce joystick pourrait servir aussi pourquoi pas dans des programmes Oric ou des jeux en envoyant soit une modulation du type PWM ou un octet contenant la position analogique du joystick, avec un bouton de validation et un autre pour les tirs ou autres... Je sais bien qu'il existe déjà des solutions de joystick mais ça coûte rien de l'ajouter.

 


   
RépondreCitation
Page 2 / 3
Share: