The Panasonic HHC in video

Un petit screencast montrant l’avancement des developpements sur le Panasonic HHC

Posted in Pocket, Work in Progress, model | Leave a comment

Le Panasonic HHC (suite)

J’ai commencé à émuler le bus de données.
Pour l’instant, seuls les modules mémoire fonctionnent. On peut même les brancher et débrancher à chaud, le HHC les reconnait automatiquement. Le Plug and Play avant l’heure . Maintenant il faut que je me penche sur l’imprimante.
Il me faudrait vraiment des photos de meilleures qualités.

Posted in Work in Progress, model | 4 Comments

Le Service Manual de la Sharp CE-126P

Hans H., de passage sur ce site, a vu que j’étais à la recherche du service Manual de la CE-126P. Un petit scan et voilà qu’il me le mail.

C’est une super surprise car la CE-126P a un protocole de communication un petit peu complexe qui me donne du fil à retordre.

En effet elle est à la fois compatible avec la première génération de pocket (PC-1251, PC-1401) mais aussi avec les dernières génération qui utilise un DEVICE CODE dans le protocole.

J’espère qu’avec ces informations, je vais pouvoir améliorer l’émulation de cette imprimante à tout faire de la gamme Sharp.

CE-126P Service Manual

Merci encore Hans.

Posted in Extension | Leave a comment

Un nouveau modèle, le Panasonic HHC

C’est un des premiers pocket BASIC orienté proféssionnel. L’ensemble de son écosystème est incroyable, il y a même un interface video.

Pour l’instant seule l’unitée centrale est émulée.

Le challenge sera d’arriver à intégrer toutes les extensions. A suivre donc…

et un test avec SnapFORTH

Posted in Work in Progress | Leave a comment

PockEmul Online

PockEmul tourne déjà sur plusieurs plateforme , Windows, OS X, Linux, Android. Il ne manque que le Web.
Depuis quelques temps commencent à apparaître des émulateurs en Javascript qui sont plutôt fonctionnels et on a même vu un émulateur JS faire tourner un Linux. Les machine virtuelles Javascript commencent à être suffisamment puissantes.

Alors il suffit de réécrire en PockEmul en javascript me direz vous, et vous aurez raison. Seulement, si PockEmul est multi plateforme, il l’est avec exactement le même code source. De plus je ne me vois pas re développer en javascript les centaines de milliers de lignes de codes , PockEmul est devenue trop imposant.

Alors j’ai cherché une autre solutions … et j’ai peut être trouvé un truc intéressant.
Il s’agit des projets LLVM et EMSCRIPTEN .
LLVM est une architecture de compilation qui permet de produire du code pour une machine virtuelle de bas niveau. Ce code est appelé bitcode.
EMSCRIPTEN permet de prendre ce bitcode et de l’intégrer dans un code javascript d’un émulateur de machine virtuelle.
Bon, mon explication est un peu succincte, mais je vous laisse faire les recherches qui vont bien si cela vous intéresse.

DONC , en résumé, je prend le code source C++ de PockEmul, je le compile avec LLVM, j’obtient un gros fichier bitcode, que je passe ensuite dans EMSCRIPTEN qui produit un gros fichier HTML.

Concept intéressant donc, il reste donc à tester.

Eh bien j’ai tester. Un petit Proof of Concept avec, pour commencer, un seul pocket, mais tout le framework PockEmul.
Bon, ça n’a pas pris 3 secondes, car il y a tout de même quelques modification de code à faire.
En effet , pour ne prendre qu’un seul exemple, il n’y a pas de multi-threading en javascript.
Au final j’ai du ajouter quelques dizaines de lignes de codes avec des directives de compilations. Donc une charge de travail plutôt limitée.

ET CA MARCHE !!!!!!!!!!!!!!!!!
Bon ce n’est qu’un Proof of Concept, mais c’est prometteur.

Dés que j’aurai un peu peaufiné cela, je mettrai une URL.

Posted in Work in Progress | Leave a comment

Un nouveau modèlee, le SANCO TPC-8300

Grâce à bernouilli92 et Jxano du forum silicium (http://www.silicium.org), la ROM du SANCO TPC-8300 a pu être extraite.
C’est un modèle très proche du LBC-1100 et j’ai simplement du me pencher sur la liaison avec les drivers LCD et sur la matrice clavier.

Continue reading

Posted in Work in Progress, model | Leave a comment

Un nouveau modèle, le Sharp PC-1425

Voilà bien longtemps qu’un nouveau Sharp n’avait fait son apparition dans PockEmul.

Le PC-1425 attendait son tour depuis trop longtemps, j’avais la flemme de dumper les 4 banques de mémoire. Alors, j’ai fini par me lancer.

Il est très proche du PC-1403, avec l’interface série en plus. Par contre je serai bien incapable de m’en servir, j’ai jamais fait de statistiques de ma vie …

Pour ceux qui sont intéressés, la documentation en français est disponible (merci Woodstock).

Posted in Pocket, Work in Progress | 1 Comment

Un nouveau modèle, le General LBC-1100

Grâce à nos amis bernouilli92 et razzmoket (voir http://www.silicium.org/forum/viewtopic.php?f=46&t=35090) , la ROM du LBC-1100 a pu être dumpée.
Ce pocket est trés proche du NEC-PC-2001, (CPU quasi équivalent, drivers LCD identiques), mais il y a tout de même de grosse différences d’architecture.
Pour l’instant, le LCD et le clavier fonctionnent, la programmation aussi. Il faut que je regarde maintenant l’extension CL-1000.

Posted in Pocket, Work in Progress | Leave a comment

Un nouveau modèle, le Casio FX-890P/Z-1/Z-1GR

Tous le monde connait le dernier des pockets Casio équipé d’un processeur 16 bits (le 80L188EB). Lorsque je me suis lancé dans l’émulation de ce pocket, je pensais naïvement que cela serai assez simple, le processeur étant trés bien documenté.

Assez rapidement, j’ai donc réussi à obtenir le boot et tout semblait parfait si ce n’est qu’il indiquait une quantité de mémoire à 0Ko au RESET.
En fait, le Casio ne savait pas calculer !
Continue reading

Posted in Uncategorized | 1 Comment

Un nouveau modèle, le NEC PC-2001

Voilà bien une machine exotique, je ne crois qu’elle ait été vendu en dehors du Japon et les informations techniques sont inexistantes.

Le cpu est sois disant un upd7907, inconnu au bataillon mais semble de la famille des COM87, en fait un mélange de upd78C05 de upd78C06 de upd7801 et de upd7810. Je n’ai donc pu compter que sur la ROM pour essayer de comprendre les instructions du CPU en allant chercher dans les documentations respectives des autres processeurs.

Ce fut extrêmement intéressant et finalement, il est possible d’émuler une machine avec la ROM comme seule information.

Continue reading

Posted in Uncategorized | 2 Comments