Logicielsmoto.com http://logicielsmoto.com/phpBB/ |
|
Quizz : 2049bits http://logicielsmoto.com/phpBB/viewtopic.php?f=3&t=458 |
Page 1 sur 1 |
Auteur: | Samuel Devulder [ 01 Déc 2012, 23:36 ] |
Sujet du message: | Quizz : 2049bits |
Bon, j'avais un truc qui trainait dans mes D7 depuis un moment, et je me suis dit qu'il était temps d'en faire un quizz ouvert à tous les programmeurs thomson. Alors.... QUIZZZzzzz.... que fait le programme suivant d'exactement 256 octets(*) ? Code: **************************************** Il tourne sur n'importe quel ordi de la gamme TO ayant 256 octets de ram en $9000. Pour ceux qui n'ont pas envie de resaisir 1 par 1 les 256 octets du source ci-dessus, il existe une version K7 (lien temporaire sur cjoint). [EDIT] version K7 jointe au message:* debut : $9000 * fin : $90FF * taille : 256 **************************************** org $9000 init fcb $CE,$90,$74,$E6,$C0 fcb $BD,$E8,$03,$C1,$0D fcb $26,$04,$C6,$0A,$20 fcb $F5,$31,$C4,$31,$3F fcb $26,$FC,$E6,$C0,$26 fcb $EB,$1A,$50,$CE,$E7 fcb $C5,$6C,$C4,$37,$12 fcb $34,$12,$86,$12,$8E fcb $00,$7C,$36,$12,$30 fcb $5B,$4F,$34,$06,$A6 fcb $01,$34,$06,$A6,$84 fcb $44,$24,$FB,$EC,$06 fcb $E6,$63,$E7,$E2,$EC fcb $62,$47,$56,$E7,$E2 fcb $47,$56,$47,$56,$47 fcb $56,$47,$56,$EA,$E0 fcb $A6,$E0,$3D,$C4,$10 fcb $54,$E8,$E4,$E7,$01 fcb $6C,$63,$26,$06,$6C fcb $62,$26,$02,$6C,$61 fcb $A6,$03,$84,$02,$27 fcb $CB,$32,$64,$35,$44 fcb $EF,$06,$E7,$05,$3F fcb $39,$24,$20,$63,$61 fcb $74,$20,$74,$2E,$63 fcb $0D,$0D,$2F,$2A,$20 fcb $1B,$5C,$77,$77,$77 fcb $2E,$70,$75,$6C,$73 fcb $64,$65,$6D,$6F,$73 fcb $2E,$63,$6F,$6D,$1B fcb $5C,$20,$2A,$2F,$0D fcb $0D,$6D,$61,$69,$6E fcb $28,$74,$29,$20,$7B fcb $0D,$20,$66,$6F,$72 fcb $28,$74,$3D,$30,$3B fcb $21,$4C,$50,$49,$4E fcb $3B,$74,$2B,$2B,$29 fcb $0D,$20,$20,$70,$75 fcb $74,$63,$68,$61,$72 fcb $28,$28,$74,$2A,$28 fcb $74,$3E,$3E,$39,$7C fcb $74,$3E,$3E,$31,$33 fcb $29,$29,$26,$31,$36 fcb $29,$3B,$0D,$7D,$0D fcb $24,$20,$63,$63,$20 fcb $74,$2E,$63,$0D,$1B fcb $5C,$1B,$5C,$24,$20 fcb $2E,$2F,$61,$2E,$6F fcb $75,$74,$20,$3E,$2F fcb $64,$65,$76,$2F,$61 fcb $75,$64,$69,$6F,$0D fcb $00 end init Fichier(s) joint(s): Messieurs les programmeurs, à vos machines, prêts, trouvez! Une fois trouvé je publierais le code source et les explications dans ce fil. ____ (*) oui 256 octets car comme tout bon coder qui se fait vieux, j'ai du mal (la flemme) à entreprendre des trucs plus volumineux. |
Auteur: | gilles [ 02 Déc 2012, 08:35 ] |
Sujet du message: | |
j'ai comme dans l'idée qu'il faut avoir pas loin un ordi sous unix pour que ca fasse quelquechose, et p'tet bien une sorte de cable entre les 2. |
Auteur: | Prehisto [ 02 Déc 2012, 09:51 ] |
Sujet du message: | |
Pour ma part, Samuel m'avait donné la réponse avant qu'elle ne soit posée ici, donc je ne répondrai pas PS : Les participants peuvent poser des questions plus générales auxquelles Samuel répondra par oui ou non, pour cerner progressivement le sujet, parce que trouver du premier coup la réponse à la question n'est pas évident. |
Auteur: | Samuel Devulder [ 02 Déc 2012, 13:59 ] |
Sujet du message: | |
gilles a écrit: j'ai comme dans l'idée qu'il faut avoir pas loin un ordi sous unix pour que ca fasse quelquechose, et p'tet bien une sorte de cable entre les 2.
Pas exactement non... même s'il y a un petit lien avec unix. En tout cas on a besoin d'aucun hardware supplémentaire. Un simple TO7 tout neuf devrait suffire. En revanche, j'ai un doute sur le fait qu'un MO5 puisse faire tourner le code (hors organisation mémoire mémoire différente). Voici le code atteignable désassemblé: Code: 9000 CE9074 LDU #$9074 3
9003 E6C0 LDB ,U+ 6 9005 BDE803 JSR $E803 8 9008 C10D CMPB #$0D 2 900A 2604 BNE $9010 3 900C C60A LDB #$0A 2 900E 20F5 BRA $9005 3 9010 31C4 LEAY ,U 4 9012 313F LEAY -$01,Y 5 9014 26FC BNE $9012 3 9016 E6C0 LDB ,U+ 6 9018 26EB BNE $9005 3 901A 1A50 ORCC #$50 3 901C CEE7C5 LDU #$E7C5 3 901F 6CC4 INC ,U 6 9021 3712 PULU A,X 8 9023 3412 PSHS X,A 8 9025 8612 LDA #$12 2 9027 8E007C LDX #$007C 3 902A 3612 PSHU X,A 8 902C 305B LEAX -$05,U 5 902E 4F CLRA 2 902F 3406 PSHS B,A 7 9031 A601 LDA $01,X 5 9033 3406 PSHS B,A 7 9035 A684 LDA ,X 4 9037 44 LSRA 2 9038 24FB BCC $9035 3 903A EC06 LDD $06,X 6 903C E663 LDB $03,S 5 903E E7E2 STB ,-S 6 9040 EC62 LDD $02,S 6 9042 47 ASRA 2 9043 56 RORB 2 9044 E7E2 STB ,-S 6 9046 47 ASRA 2 9047 56 RORB 2 9048 47 ASRA 2 9049 56 RORB 2 904A 47 ASRA 2 904B 56 RORB 2 904C 47 ASRA 2 904D 56 RORB 2 904E EAE0 ORB ,S+ 6 9050 A6E0 LDA ,S+ 6 9052 3D MUL 11 9053 C410 ANDB #$10 2 9055 54 LSRB 2 9056 E8E4 EORB ,S 4 9058 E701 STB $01,X 5 905A 6C63 INC $03,S 7 905C 2606 BNE $9064 3 905E 6C62 INC $02,S 7 9060 2602 BNE $9064 3 9062 6C61 INC $01,S 7 9064 A603 LDA $03,X 5 9066 8402 ANDA #$02 2 9068 27CB BEQ $9035 3 906A 3264 LEAS $04,S 5 906C 3544 PULS B,U 8 906E EF06 STU $06,X 6 9070 E705 STB $05,X 5 9072 3F SWI 19 9073 39 RTS 5 Déjà un 1er indice: le code est bien plus petit que 256 octets, donc le reste (141 octets) doivent probablement être des data, comme on s'en doute avec le contenu du fichier K7. |
Auteur: | gilles [ 02 Déc 2012, 15:34 ] |
Sujet du message: | |
j'ai fini par réussir à lui faire faire son beep (j'avais déjà obtenu obtenu un sample similaire en faisant tourner le code qui s'affiche sur un linux) (sauf que la condition LPIN n'est pas reconnue... dans un .h peut etre?) Initialement ma version de teo (1.8.1 installée à partir du .deb) était muette... et j'ai mis un peu de temps à recompiler à partir de sourceforge car il faut renommer quelques to8.h en teo.h dans le code. comme c'était muet je pensais que la bidouille consistait à injecter le code C sur un système unix... |
Auteur: | Samuel Devulder [ 02 Déc 2012, 16:10 ] |
Sujet du message: | |
oui, sous TEO1.8.1 il est muet à cause d'un bug dans la gestion de $E7C1 je pense (avec le 1.7.6 c'est ok). Je ne sais plus si j'en ai parlé à préhisto. Le coup du LPIN c'est juste pour documenter le code: on sort en appuyant sur le bouton du lightpen. Au fait je ne sais pas pk, mais sous DCMOTO et TEO le fichier K7 marche bien; mais sous MESS c'est une catastrophe: il n'est pas complètement chargé en mémoire et je ne comprends pas pourquoi |
Auteur: | Prehisto [ 02 Déc 2012, 21:12 ] |
Sujet du message: | |
Samuel Devulder a écrit: oui, sous TEO1.8.1 il est muet à cause d'un bug dans la gestion de $E7C1 je pense (avec le 1.7.6 c'est ok). Je ne sais plus si j'en ai parlé à préhisto.
Oui oui. Je pense que sur la version sur SourceForge, ça doit réagir, puisque j'ai restauré les anciens programmes. |
Auteur: | Prehisto [ 04 Déc 2012, 07:58 ] |
Sujet du message: | |
gilles a écrit: et j'ai mis un peu de temps à recompiler à partir de sourceforge car il faut renommer quelques to8.h en teo.h dans le code.
Désolé. Il y a des push que je n'ai pas encore fait. |
Auteur: | Samuel Devulder [ 08 Déc 2012, 23:45 ] |
Sujet du message: | La réponse! |
Bon, au bout d'une semaine, je pense qu'il est temps de fournir la réponse. Bon d'abord le titre: pourquoi 2049bits? Facile: 2049=256*8+1. Les 256 c'est la taille du code en octets et le 1, c'est pour le bit du buzzer qui est utilisé pour produire de la musique. Enfin, je dis musique mais en vrai du "son" serait plus fidèle (comme l'a souligné Gilles). Il n’empêche que ce son peut être produit par tous les thomson, même s'ils ne sont pas équipés de l'extension Musique&Jeux. Ce son est généré à 8khz précisément en utilisant le timer via un algorithme et non pas via une partition (les 256 octets n'y suffiraient pas). Cet algorithme est assez simple puisqu'il tient en une seule ligne de C (affiché par le programme). Il peut être compilé sur les systèmes unix et sa sortie redirigée sur /dev/audio pour produire le même son que sur Thomson. Ce principe provient de la page "Algorithmic synphonies from one line of code" dont le but est de produire des mélodies complexes avec une seule ligne de C. Les résultats obtenus sont très surprenants. C'est d'ailleurs le fait que périphérique audio unix fonctionne par défaut à 8khz qui impose la fréquence du programme. Cette fréquence est intéressante car elle est suffisamment élevée pour produire un son correct mais pas trop de sorte à pouvoir implémenter l'algorithme de calcul multi-précision (jusqu'à 24bits) sur le 6809e. Cet algorithme ne fonctionnant pas en temps constant, le timer est utilisé pour réguler sa vitesse. Il est programmé en mode continu et fait passer à 1 le CTO du 6846 (repris sur le bit 0 de $E7C0) tous les 125 cycles du processeur, c'est à dire tous les 8khz. Il suffit donc de tester ce bit ($9035-$9038) et d'attendre qu'il passe à 1 pour générer un nouvel échantillon. L'algorithme boucle indéfiniment jusqu'à ce le bit 1 de $E7C3 (bouton ligth-pen) passe à 1. Ce test est intéressant car il fonctionne sur toute la gamme TO tout en étant bien plus rapide qu'un appel au moniteur (impossible vu le peu de cycles laissés au programme pour calculer la formule). Toujours pour des raisons de compacité, le code fait l'économie de préserver les registres (code commenté), mais il contient quand même un truc permettant de le faire fonctionner indifféremment sous la cartouche assembler ou le basic: un SWI suivi d'un RTS ($9072-$9073). Le truc est que SWI ne fait rien de spécial en basic (la routine de traitement ne contient qu'un RTI) et donc le basic passe au travers comme s'il n'existait pas. Il tombe ensuite sur le RTS, et puisque DP et SP (ainsi que les registres du timer) ont leur valeur d'entrée du programme, on revient gentiment au basic sans soucis. Maintenant le source (brut de fonderie): Code: ***************************************
* Symphonie en 1 bit. * * Inspiration de: * http://tinyurl.com/72jwuvy * * Code C: * main(t) { * for(t=0;LPIN==0;t++) putchar( * * (t*(t>>9 | t>>13))&16 * * );} * * Compatible tous TO. Sortie par * pression lightpen. * * Les nombres manipulés sont sur 24bits. * * Samuel Devulder Avril 2012 *************************************** org $9F00 *************************************** * Point d'entree *************************************** ini * pshs d,x,y,u,cc,dp *************************************** * message d'into *************************************** ldu #msg ldb ,u+ loop set * jsr $E803 cmpb #13 bne slow ldb #10 bra loop slow leay ,u ; attente pas leay -1,y ; trop petite bne *-2 ldb ,u+ bne loop ; b=0 en sortie *************************************** * Sauv & init timer 8khz *************************************** orcc #$50 ; plus d'int. ldu #$E7C5 ; CTRL 6846 inc ,u ; stop timer pulu a,x ; sauv timer pshs a,x lda #$12 ; continuous ldx #124 ; 1E6/8000-1 pshu a,x leax -5,u ; PIA 6846 *************************************** * t=0 *************************************** clra pshs d ; 0 lda 1,x ; etat buzzer pshs d ; PRA 0 *************************************** * attente timer *************************************** wait lda ,x ; attente TIMER lsra bcc wait ldd 6,x ; clear TCO *************************************** * calcul (t*(t>>9|t>>13))&16 *************************************** ldb 3,s stb ,-s ; t' t ldd 2,s asra rorb stb ,-s ; t>>9 t' t asra rorb asra rorb asra rorb asra rorb ; D=t>>13 orb ,s+ ; B=t>>13|t>>9 lda ,s+ mul ; B=(t>>13|t>>9)*t andb #16 ; B=((t>>13|t>>9)*t) & 16 *************************************** * Sortie buzzer *************************************** lsrb eorb ,s stb 1,x *************************************** * t++ *************************************** inc 3,s ; 7 bne *+8 ; 3 inc 2,s bne *+4 inc 1,s *************************************** * Test clavier + light-pen *************************************** * version longue * lda 8,x ; PRA PIA 6821 * anda #1 ; KTST * beq wait * jsr $E81B * bcc wait * version courte: bouton light-pen seul lda 3,x anda #2 beq wait *************************************** * Restore timer *************************************** leas 4,s puls b,u stu 6,x stb 5,x *************************************** * sortie *************************************** * puls d,x,y,u,cc,dp swi rts *************************************** * il reste de la place pour un petit * message *************************************** msg fcc /$ cat t.c/ fcb 13,13 fcc #/* # fcb $1B,$5C fcc /www.pulsdemos.com/ fcb $1B,$5C fcc # */# fcb 13,13 fcc /main(t) {/ fcb 13 fcc / for(t=0;!LPIN;t++)/ fcb 13 fcc / putchar(/ fcc /(t*(t>>9/ fcb 124 fcc /t>>13))&16/ fcc /);/ fcb 13 fcc /}/ fcb 13 fcc /$ cc t.c/ fcb 13 fcb $1B,$5C,$1B,$5C fcc #$ ./a.out >/dev/audio# fcb 13 fcb 0 end ini |
Auteur: | Samuel Devulder [ 08 Déc 2012, 23:56 ] |
Sujet du message: | Les bonus |
Samuel Devulder a écrit: Ce principe provient de la page "Algorithmic synphonies from one line of code" dont le but est de produire des mélodies complexes avec une seule ligne de C. Les résultats obtenus sont très surprenants.
En bonus, voici d'autres exemples de ce que cela peut donner sur Thomson, ce coup ci non pas avec le seul bit du buzzer, mais l'ensemble des 6 bits de l'extension musique et jeux (quel luxe!). Comme le précédent ces programmes affichent le code C produisant le même son sous unix, mais ce coup ci le 1er programme a la particularité d'être re-logeable n'importe où en RAM. Formule "t*5 & (t>>7) | t*3 & (t>>8)": Code: *************************************** * debut : $9E00 * fin : $9EFF * taille : 256 *************************************** org $9E00 init fcb $33,$8D,$00,$A8,$E6 fcb $C0,$BD,$E8,$03,$C1 fcb $0D,$26,$04,$C6,$0A fcb $20,$F5,$31,$C4,$31 fcb $3F,$26,$FC,$E6,$C0 fcb $26,$EB,$1A,$50,$8E fcb $E7,$C0,$EC,$0E,$34 fcb $06,$CA,$04,$E7,$0F fcb $A6,$0D,$E6,$0F,$C4 fcb $FB,$E7,$0F,$E6,$0D fcb $34,$06,$86,$3F,$A7 fcb $0D,$CC,$04,$04,$ED fcb $0E,$6F,$0D,$A6,$01 fcb $A7,$E2,$8A,$30,$84 fcb $F7,$A7,$01,$E6,$05 fcb $86,$13,$A7,$05,$EE fcb $06,$34,$44,$CE,$00 fcb $7C,$EF,$06,$4A,$A7 fcb $05,$4F,$5F,$34,$06 fcb $34,$06,$A6,$84,$44 fcb $24,$FB,$EC,$06,$A6 fcb $E4,$A4,$62,$A7,$E2 fcb $EC,$63,$58,$49,$A4 fcb $62,$AA,$E0,$44,$44 fcb $A7,$0D,$35,$46,$8B fcb $05,$CB,$03,$33,$41 fcb $34,$46,$A6,$03,$84 fcb $02,$27,$D7,$32,$64 fcb $35,$42,$EF,$06,$A7 fcb $05,$A6,$0F,$84,$FB fcb $A7,$0F,$A6,$E0,$A7 fcb $01,$35,$46,$E7,$0D fcb $E6,$0F,$CA,$04,$E7 fcb $0F,$A7,$0D,$EF,$0E fcb $3F,$39,$6D,$61,$69 fcb $6E,$28,$74,$29,$7B fcb $20,$2F,$2F,$20,$53 fcb $61,$6D,$20,$44,$45 fcb $56,$0D,$20,$66,$6F fcb $72,$28,$74,$3D,$30 fcb $3B,$21,$4C,$50,$49 fcb $4E,$3B,$74,$2B,$2B fcb $29,$70,$75,$74,$63 fcb $68,$61,$72,$28,$0D fcb $0D,$1B,$4D,$20,$20 fcb $74,$2A,$35,$26,$28 fcb $74,$3E,$3E,$37,$29 fcb $7C,$74,$2A,$33,$26 fcb $28,$74,$3E,$3E,$38 fcb $29,$1B,$4C,$0D,$20 fcb $29,$3B,$0D,$7D,$0D fcb $00 end init Formule "t * ((t>>3|t>>9)&82&t>>9)": Code: ***************************************
* debut : $9E00 * fin : $9EFF * taille : 256 *************************************** org $9E00 init fcb $CE,$9E,$A7,$E6,$C0 fcb $BD,$E8,$03,$C1,$0D fcb $26,$04,$C6,$0A,$20 fcb $F5,$31,$C4,$31,$3F fcb $26,$FC,$E6,$C0,$26 fcb $EB,$1A,$50,$CE,$E7 fcb $C5,$EC,$49,$34,$06 fcb $CA,$04,$E7,$4A,$A6 fcb $48,$E6,$4A,$C4,$FB fcb $E7,$4A,$E6,$48,$34 fcb $06,$86,$3F,$A7,$48 fcb $CC,$04,$04,$ED,$49 fcb $6F,$48,$A6,$5C,$A7 fcb $E2,$8A,$30,$84,$F7 fcb $A7,$5C,$6C,$C4,$37 fcb $14,$5A,$34,$14,$C6 fcb $12,$8E,$00,$7F,$36 fcb $14,$4F,$5F,$34,$06 fcb $A6,$5B,$44,$24,$FB fcb $EC,$41,$EC,$E4,$44 fcb $56,$44,$56,$E7,$E2 fcb $E6,$61,$EA,$E0,$C4 fcb $A4,$E4,$E4,$54,$A6 fcb $61,$3D,$54,$54,$E7 fcb $48,$6C,$61,$26,$02 fcb $6C,$E4,$A6,$5E,$84 fcb $02,$27,$D5,$32,$62 fcb $35,$12,$AF,$41,$A7 fcb $C4,$A6,$4A,$84,$FB fcb $A7,$4A,$A6,$E0,$A7 fcb $5C,$35,$16,$E7,$48 fcb $E6,$4A,$CA,$04,$E7 fcb $4A,$A7,$48,$AF,$49 fcb $3F,$39,$6D,$61,$69 fcb $6E,$28,$74,$29,$7B fcb $20,$2F,$2A,$20,$53 fcb $61,$6D,$20,$44,$45 fcb $56,$20,$2A,$2F,$0D fcb $20,$66,$6F,$72,$28 fcb $74,$3D,$30,$3B,$21 fcb $4C,$50,$49,$4E,$3B fcb $74,$2B,$2B,$29,$70 fcb $75,$74,$63,$68,$61 fcb $72,$28,$0D,$0D,$1B fcb $4D,$20,$20,$74,$2A fcb $28,$28,$74,$3E,$3E fcb $33,$7C,$74,$3E,$3E fcb $39,$29,$26,$38,$32 fcb $26,$74,$3E,$3E,$39 fcb $29,$1B,$4C,$0D,$20 fcb $29,$3B,$0D,$7D,$0D fcb $00 end init |
Auteur: | Prehisto [ 09 Déc 2012, 09:52 ] |
Sujet du message: | |
On veut un fichier sonore !!!! Peux-tu nous en faire un pour écouter ce que ça donne ? |
Auteur: | Samuel Devulder [ 09 Déc 2012, 12:18 ] |
Sujet du message: | |
Voici un fichier video pour se faire une idée de ce que ca pourrait donner en vrai (désolé pour les bruits de fond). Code source: Code: *************************************** [EDIT] modif du lien vers le fichier video.
* Symphonie en C. * * Inspiration de: * http://tinyurl.com/72jwuvy * * Code C: * main(t) { * for(t=0;LPIN==0;t++) putchar( * * t*5 & (t>>7) | t*3 & (t>>8) * * );} * * Compatible tous TO avec controleur de * jeu. Sortie par pression lightpen. * * Samuel Devulder Avril 2012 *************************************** org $9E00 *************************************** * Point d'entree *************************************** ini * pshs d,x,y,u,cc,dp *************************************** * message d'into *************************************** leau msg,pcr ldb ,u+ loop set * jsr $E803 cmpb #13 bne slow ldb #10 bra loop slow leay ,u ; attente leay -1,y ; trop petite bne *-2, ldb ,u+ bne loop ; b=0 en sortie *************************************** * Sauv & init son *************************************** orcc #$50 ldx #$E7C0 ldd $e,x ; sauv cont A/B pshs d orb #4 ; acti son PB stb $f,x lda $d,x ; sauv data PB ldb $f,x andb #$fb stb $f,x ; stop son PB ldb $d,x pshs d ; sav dat/dir B lda #$3F ; PA6-PA7=in sta $d,x ; PA0-PA5=out ldd #$0404 ; sortie son std $e,x ; port A et B clr $d,x ; init data B lda $1,x ; sauv port C sta ,-s ora #$30 anda #$F7 ; init port C sta 1,x ; (sortie son) *************************************** * Sauv & init timer 8khz *************************************** ldb 5,x lda #$13 sta 5,x ; stop timer ldu 6,x pshs b,u ldu #124 ; 1e6/8000-1 stu 6,x deca sta 5,x ; reprise timer *************************************** * init registres *************************************** clra clrb pshs d ; pile: pshs d ; t*5 t*3 t *************************************** * attente timer *************************************** wait lda ,x lsra bcc wait ldd 6,x ; clear TCO * t*5 & (t>>7) | t*3 & (t>>8) lda ,s ; A=t*3 anda 2,s ; A=t3&t>>8 sta ,-s ldd 3,s ; A=t lslb rola ; A=t>>7 anda 2,s ; A=t5&t>>7 ora ,s+ ; A=t5&t>>7 | lsra ; t3&t>>8 lsra sta $d,x ; sortie son * t++ (27 cycles) puls d,u adda #5 ; t*5 : 8 bits addb #3 ; t*3 : 8 bits leau 1,u ; t : 16 bits pshs d,u *************************************** * Test bouton light-pen *************************************** lda 3,x anda #2 beq wait leas 4,s *************************************** * Restore timer *************************************** puls a,u stu 6,x sta 5,x *************************************** * Restore port A/B/C *************************************** lda $f,x ; stop son PB anda #$fb sta $f,x lda ,s+ ; reinit PC sta $1,x puls d,u stb $d,x ldb $f,x ; active son PB orb #4 stb $f,x sta $d,x ; init data PB stu $e,x ; init cont PA/PB * puls d,x,y,u,cc,dp swi rts *************************************** * il reste de la place pour un petit * message *************************************** msg fcc #main(t){ // Sam DEV# fcb 13 fcc / for(t=0;!LPIN;t++)/ fcc /putchar(/ fcb 13,13 fcb $1B,$4D fcc / t*5&(t>>7)/ fcb 124 fcc /t*3&(t>>8)/ fcb $1B,$4C fcb 13 fcc / );/ fcb 13 fcc /}/ fcb 13 fcb 0 end ini |
Auteur: | Yoann Riou [ 17 Déc 2012, 04:03 ] |
Sujet du message: | |
Le son du deuxieme example (sf2.bin) me rappel Music3V |
Page 1 sur 1 | Heures au format UTC + 1 heure |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |