Tu n'as pas le manuel en japonais ?
il est ICI au besoin
Pour celui du Z80 tu l'as chez le fabriquant Là
4412 résultats trouvés
- 11 déc. 2015 15:56
- Forum : Tous les Pockets
- Sujet : Sharp PC-G850V
- Réponses : 44
- Vues : 28042
- 11 déc. 2015 14:14
- Forum : Tous les Pockets
- Sujet : Sharp PC-G850V
- Réponses : 44
- Vues : 28042
Re: Sharp PC-G850V
En fait le problème c'est qu'il ne faut SURTOUT pas mettre les commentaires.
Tu mets juste CALL LINE
J'avais mis les commentaires .... pour commenter
Tu mets juste CALL LINE
J'avais mis les commentaires .... pour commenter
- 10 déc. 2015 16:37
- Forum : Tous les Pockets
- Sujet : Sharp PC-G850V
- Réponses : 44
- Vues : 28042
Re: Sharp PC-G850V
entre le G850S et G850V
nous avons principalement la fréquence, la lisibilité de l'écran, Les PICs et quelques fonctions/instructions notamment celles de sauvegarde sur cassettes.
Voir ici mais en japonais ICI.
Le VS est la version la plus récente qui n'apporte rien de plus par rapport au V.
nous avons principalement la fréquence, la lisibilité de l'écran, Les PICs et quelques fonctions/instructions notamment celles de sauvegarde sur cassettes.
Voir ici mais en japonais ICI.
Le VS est la version la plus récente qui n'apporte rien de plus par rapport au V.
- 07 déc. 2015 10:14
- Forum : Tous les Pockets
- Sujet : Sharp PC-G850V
- Réponses : 44
- Vues : 28042
Re: Sharp PC-G850V
Des sources en assembleur, soit.
Mais pour le compilateur SDCC. Bref pas du tout en natif.
Autant ne pas commencer par là car c'est encore le niveau d'haut dessus.
Mais pour le compilateur SDCC. Bref pas du tout en natif.
Autant ne pas commencer par là car c'est encore le niveau d'haut dessus.
- 07 déc. 2015 07:34
- Forum : Tous les Pockets
- Sujet : Sharp PC-G850V
- Réponses : 44
- Vues : 28042
Re: Sharp PC-G850V
Le référentiel (0,0) est en haut a droite.
et voilà ce que donne le programme ci-dessus
tu as du voir déjà mon ARTICLE car il le lien était fourni plus haut. Il est loin d'être complet (ni fini) mais ça peut aider ... enfin c'était le but
et voilà ce que donne le programme ci-dessus
En fait c'est sur mon dépotoir WEBLa doc en Japonais, déjà donnée quelque part ici :
http://fr.normand.free.fr/ordipoche/PC-G850VOCR2.pdf
tu as du voir déjà mon ARTICLE car il le lien était fourni plus haut. Il est loin d'être complet (ni fini) mais ça peut aider ... enfin c'était le but
- 06 déc. 2015 20:00
- Forum : Tous les Pockets
- Sujet : Sharp PC-G850V
- Réponses : 44
- Vues : 28042
Re: Sharp PC-G850V
Post au dessus modifié
Si tu ne connais pas l'assembleur.
Commence plutôt par le BASIC
Ensuite le C
ensuite le CASL
Puis l'assembleur en dernier
Si tu ne connais pas l'assembleur.
Commence plutôt par le BASIC
Ensuite le C
ensuite le CASL
Puis l'assembleur en dernier
- 06 déc. 2015 18:59
- Forum : Tous les Pockets
- Sujet : Sharp PC-G850V
- Réponses : 44
- Vues : 28042
Re: Sharp PC-G850V
Tu t'en fout du texte, le code est plus intéressant.
Tu pratique un peu l'assembleur Z80 ?
exemple :
Le programme suivant :
Pour frapper ce programme
tu va sous BASIC
MON [ENTER]
USER 300 [ENTER]
[TEXT]
Edit
Tu frappe le programme ci dessus
[ASMBL]
Assembler
Asm
Normalement 0 error
[BASIC] en mode programme
tu frappe
Mode RUN
RUN [ENTER]
Bon tests
Tu pratique un peu l'assembleur Z80 ?
exemple :
Le programme suivant :
Code : Tout sélectionner
1 ORG 0100H
5GRAPH EQU 093CBH
10 LD HL,100
20 LD DE,4
30 LD IX,120
40 LD IY,31
50 LD A,1
60 LD B,0
70 CALL LINE 'Trace une ligne entre (100,4)-(120,31)
80 LD HL,-3
90 LD DE,-6
100 LD IX,55
110 LD IY,18
120 LD A,1
130 LD B,1
140 CALL LINE 'Trace un rectangle vide entre (-3,-6)-(55,18)
150 LD HL,40
160 LD DE,10
170 LD IX,72
180 LD IY,24
190 LD A,1
200 LD B,2
210 CALL LINE 'Trace un rectangle plein entre (40,10)-(72,24)
220 LD HL,75
230 LD DE,0
240 LD IX,45
250 LD IY,50
260 LD A,2
270 LD B,0
280 CALL LINE 'Trace une ligne en vidéo inversée entre (75,0)-(45,50)
290 RET
1960LINE:LD (7967H),IX
1970 LD (7969H),IY
1980 LD IX,0FFFFH
1990 LD (777DH),IX
2000 LD (777FH),A
2010 LD A,B
2020 CP 1
2030 JR C,LIN
2040 JR Z,BOX
2050FBOX:CALL GRAPH
2060 DB 0DH
2070 DW 0C4CBH
2080 RET
2090LIN: CALL GRAPH
2100 DB 0DH
2110 DW 0C595H
2120 RET
2130BOX: CALL GRAPH
2140 DB 0DH
2150 DW 0C442H
2160 RET
tu va sous BASIC
MON [ENTER]
USER 300 [ENTER]
[TEXT]
Edit
Tu frappe le programme ci dessus
[ASMBL]
Assembler
Asm
Normalement 0 error
[BASIC] en mode programme
tu frappe
Code : Tout sélectionner
10 CLS
20 CALL &H100
30 GOTO 30
RUN [ENTER]
Bon tests
- 06 déc. 2015 14:02
- Forum : Tous les Pockets
- Sujet : Sharp PC-G850V
- Réponses : 44
- Vues : 28042
Re: Sharp PC-G850V
Exemple d'utilisation de PRINT et LINE en assembleur
Code : Tout sélectionner
10 ORG 0100H
20GRAPH EQU 093CBH
30PRINT EQU 0BFF1H
40 JR START
50SC: DB 0,0,0,0
60X: DB 0
70Y: DB 0
80OX: DB 0
90OY: DB 0
100RX: DB 0
110RY: DB 0
120PROV:DB 0,0
130TXT1:DB 'SCORE:'
140START:CALL CLS
150 LD B,6
160 LD DE,0000H
170 LD HL,TXT1
180 CALL PRINT
190 LD HL,59
200 LD DE,0
210 LD IX,135
220 LD IY,30
230 LD A,1
240 LD B,1
250 CALL LINE
260 LD HL,60
270 LD DE,0
280 LD IX,134
290 LD IY,3
300 LD A,1
310 LD B,2
320 CALL LINE
330 LD HL,60
340 LD DE,6
350 LD IX,134
360 LD IY,9
370 LD A,1
380 LD B,2
390 CALL LINE
400 LD A,0
410 LD (SC),A
420 LD A,48
430 LD (SC+1),A
440 LD (SC+2),A
450 LD (SC+3),A
460 LD A,99
470 LD (X),A
480 LD (OX),A
490 LD A,10
500 LD (Y),A
510 LD (OY),A
520 LD A,-3
530 LD (RX),A
540 LD A,2
550 LD (RY),A
560REP: LD A,(RY)
570 LD B,A
580 LD A,(Y)
590 ADD A,B
600 LD (Y),A
610 LD A,(RX)
620 LD B,A
630 LD A,(X)
640 ADD A,B
650 LD (X),A
660 CP 60
670 JR C,OK1
680 CP 133
690 JR C,SU1
700OK1: LD A,(RX)
710 NEG
720 LD (RX),A
730 ADD A,A
740 LD B,A
750 LD A,(X)
760 ADD A,B
770 LD (X),A
780SU1: LD A,(Y)
790 CP 30
800 JR NC,OK2
810 CP -2
820 JR NZ,SU2
830OK2: LD A,(RY)
840 NEG
850 LD (RY),A
860 LD B,A
870 LD A,(OY)
880 ADD A,B
890 LD (Y),A
900SU2: LD A,(X)
910 LD E,A
920 LD A,(Y)
930 LD D,A
940 CALL POI
950 CP 1
960 JR NZ,SU3
970 LD A,(SC)
980 ADD A,5
990 LD (SC),A
1000 CALL SCOR
1010 LD B,3
1020 LD DE,0006H
1030 LD HL,SC+1
1040 CALL PRINT
1050 LD A,(X)
1060 LD H,0
1070 LD L,A
1080 ADD A,2
1090 LD (PROV),A
1100 LD IX,(PROV)
1110 LD A,(Y)
1120 LD D,0
1130 LD E,A
1140 ADD A,1
1150 LD (PROV),A
1160 LD IY,(PROV)
1170 LD A,0
1180 LD B,1
1190 CALL LINE
1200 LD A,(RY)
1210 LD B,A
1220 LD A,(Y)
1230 SUB B
1240 LD (Y),A
1250 LD A,(RY)
1260 NEG
1270 LD (RY),A
1280SU3:LD A,(X)
1290 LD H,0
1300 LD L,A
1310 ADD A,2
1320 LD (PROV),A
1330 LD IX,(PROV)
1340 LD A,(Y)
1350 LD D,0
1360 LD E,A
1370 ADD A,1
1380 LD (PROV),A
1390 LD IY,(PROV)
1400 LD A,1
1410 LD B,1
1420 CALL LINE
1430 LD A,(OX)
1440 LD H,0
1450 LD L,A
1460 ADD A,2
1470 LD (PROV),A
1480 LD IX,(PROV)
1490 LD A,(OY)
1500 LD D,0
1510 LD E,A
1520 ADD A,1
1530 LD (PROV),A
1540 LD IY,(PROV)
1550 LD A,0
1560 LD B,1
1570 CALL LINE
1580 LD A,(X)
1590 LD (OX),A
1600 LD A,(Y)
1610 LD (OY),A
1620 LD A,(SC)
1630 CP 205
1640 JP C,REP
1650 RET
1660CLS: LD A,020H
1670 LD B,144
1680 LD DE,0
1690 CALL 0BFEEH
1700 RET
1710POI: LD H,0
1720 LD L,E
1730 LD E,D
1740 LD D,0
1750 CALL PNT
1760 AND C
1770 RET Z
1780 LD A,1
1790 RET
1800PNT: CALL GRAPH
1810 DB 0EH
1820 DW 0CA08H
1830PSET:LD H,0
1840 LD L,E
1850 LD E,D
1860 LD D,0
1870 LD (7967H),HL
1880 LD (7969H),DE
1890 LD IX,0FFFFH
1900 LD (777DH),IX
1910 LD (777FH),A
1920 CALL GRAPH
1930 DB 0DH
1940 DW 0C595H
1950 RET
1960LINE:LD (7967H),IX
1970 LD (7969H),IY
1980 LD IX,0FFFFH
1990 LD (777DH),IX
2000 LD (777FH),A
2010 LD A,B
2020 CP 1
2030 JR C,LIN
2040 JR Z,BOX
2050FBOX:CALL GRAPH
2060 DB 0DH
2070 DW 0C4CBH
2080 RET
2090LIN: CALL GRAPH
2100 DB 0DH
2110 DW 0C595H
2120 RET
2130BOX: CALL GRAPH
2140 DB 0DH
2150 DW 0C442H
2160 RET
2170SCOR:LD A,(SC+3)
2180 CP 48
2190 JR Z,SCO1
2200 LD A,(SC+2)
2210 CP 57
2220 JR Z,SCO2
2230 INC A
2240 LD (SC+2),A
2250 LD A,48
2260 LD (SC+3),A
2270 RET
2280SCO1:LD A,53
2290 LD (SC+3),A
2300 RET
2310SCO2:LD A,48
2320 LD (SC+2),A
2330 LD (SC+3),A
2340 LD A,(SC+1)
2350 INC A
2360 LD (SC+1),A
2370 RET
- 06 déc. 2015 14:00
- Forum : Tous les Pockets
- Sujet : Sharp PC-G850V
- Réponses : 44
- Vues : 28042
Re: Sharp PC-G850V
Exemple d'injection d'assembleur dans du C
320 /*fonction inkey**/
330 /*****************/
340 unsigned int key(unsigned char* code,unsigned char* ascii){
350 unsigned int touche;
360 touche=call((int)"\xCD\x53\xBE\x6F\xCD\x56\xBE\x67 /*le code assembleur de la routine*/
370 *code=touche; /*le code de la touche*/
380 *ascii=touche>>8; /*sa valeur à ski*/
390 if(touche)return 1; /*on retourne 1 si une touche est pressée*/
400 else return 0; /*sinon 0*/
410 }
Appel exemple :
touche=key(&code,&ascii);
610 if(touche&lache){
620 switch(ascii){
630 case 8: ....
320 /*fonction inkey**/
330 /*****************/
340 unsigned int key(unsigned char* code,unsigned char* ascii){
350 unsigned int touche;
360 touche=call((int)"\xCD\x53\xBE\x6F\xCD\x56\xBE\x67 /*le code assembleur de la routine*/
370 *code=touche; /*le code de la touche*/
380 *ascii=touche>>8; /*sa valeur à ski*/
390 if(touche)return 1; /*on retourne 1 si une touche est pressée*/
400 else return 0; /*sinon 0*/
410 }
Appel exemple :
touche=key(&code,&ascii);
610 if(touche&lache){
620 switch(ascii){
630 case 8: ....
- 06 déc. 2015 13:53
- Forum : Tous les Pockets
- Sujet : Sharp PC-G850V
- Réponses : 44
- Vues : 28042
Re: Sharp PC-G850V
Pour la cartographie mémoire c'est page 384 du manuel
La MEM commence en 8000H
Le MEV en 100H
0~100H : Zone réservée
Instruction ORG pour reservation LM
Quelques appels :
ATTENTE D'UNE TOUCHE
--------------------
10 PRINT "PRESS ANY KEY"
20 CALL 48381
30 PRINT "THANK YOU"
10 CALL 48381
20 PRINT INKEY$ ;
30 GOTO 10
10 CALL 48381
20 K$=INKEY$
30 IF K$="" GOTO 10
40 PRINT K$;
50 GOTO 10
LOGIQUE
-------
A=(B=3)
IF A=1 THEN A=0 ELSE A=1
A=1 XOR A
A=-(A=0)
A=1-A
10 A=0
20 A=1-A
30 PRINT A
40 CALL 48381
50 GOTO 20
A=(A+1) MOD 5
10 A=0
20 A=(A+1) MOD 5
30 PRINT A
40 CALL 48381
50 GOTO 20
TEXTE
-----
10 IF A=0 THEN PRINT "EASY"
20 IF A=1 THEN PRINT "NORMAL"
30 IF A=2 THEN PRINT "HARD"
PRINT MID$("ABCDE",3,2)
PRINT MID$("EASY NORMALHARD",A*6+1,6)
PRINT MID$ ("EASYNORMALHARD",(A=2)*-2+A*4+1,(A=0)*2+6)
AUTRE
-----
10 LCOPY
10 LCOPY
20 ABCDE
----------
ASSEMBLEUR
----------
10 ORG 100H
20 LD B,11
30 LD DE,0204H
40 LD HL,WORD
50 CALL 0BFF1H
60 RET
70WORD:DB 'Hello,world'
10 #define H 0x7800
20 main(){
30 int j;
40 for(j=0;j<8;j++)printf(" %2X",peek(j+H));
50 for(j=0;j<8;j++){gotoxy(j*3+2,1);putchar(peek(j+H));}
60 }
ORG 0100H
; ラストアンサーに文字列を入れるためのフォーマット
LD HL,FORMAT
LD DE,79A0H
LD BC,7
LDIR
; 文字列の長さを設定
LD A,STRL
LD (79A7H),A
RET
FORMAT: DB 0,0,0,0,0D0H
DW STR
STR: DB 'Pocket'
STRL EQU 6
L'ordre du G850 BASIC LINE [[GPRINT 』』 et il ya des instructions graphiques liés, tels que
Ces déclarations sont valables seulement BASIC, et les graphiques des commandes telles que le langage machine
SHARP a été publié dans IOCS n'est pas inclus.
Après la dernière fois, G850 dans le système graphique IOCS introduit les sous-programmes utilisés dans le vent.
Liste des sources pour voir, je me demande pourquoi est-ce? "Et trop penser à
S'il vous plaît essayez de l'utiliser si l'occasion se présente pour le moment.
Vous remarquerez que si vous lisez le dernier
Cette liste des sources, G815 dispose d'un peu plus longtemps que la source de la liste.
Parce que, G850 série G850, G850S, G850V Il existe trois types,
ROM est légèrement différente pour chacune des matières de l'adresse va changer ainsi l'exécution.
Alors, comment fonctionne correctement dès le début dans la série G850
Le programme comprend également la détermination des modèles dans la liste des sources
J'ai longtemps été la source de la liste en conséquence.
Note: Ce sous-programme G850, G850S, G850V seulement!
La série G850 S'il vous plaît ne pas utiliser d'autres modèles.
POINT
Registre d'entrée
E: X coordonnées 0~ 143 (~ 00H 8FH)
D: Y 0 coordonnées 0~ 47 (00H ~ 2FH)
registre de sortie
A: 1=point allumé, 0=point éteint
Commentaire
Coordonnée X registre E, D coordonnées dans le registre Y 』POI [lorsque l'Appel,
Si les feux de point de coordonnées [1 dans le registre d'entrée dans le A,
Non point lumineux champ si vous avez plus ou coordonner les
Un registre contient
POI:LD A,(93CDH) ;┓
CP 0E5H ;┃
JR NZ,S1 ;┃DETERMINATION DU
LD A,0CDH ;┃MODELE DE G850
JR S2 ;┃
S1: LD A,0CBH ;┃
S2: LD (N1+1),A ;┛
LD H,0
LD L,E
LD E,D
LD D,0
CALL N1
AND C
RET Z
LD A,1
RET
N1: CALL 9300H
DB 0EH
DW 0CA08H
RET
PSET / PRESET
Registre d'entrée
E: Coordonné X 0~ 143 (~ 00H 8FH)
D: Coordonné Y 0~ 47 (00H ~ 2FH)
A: Effacement du point= 0, Affichage du point = 1 ; Inversion du point = 2
Commentaire
E coordonner les registres X, Y D registre de mettre les coordonnées [SET 』Puis appelez
Et le point est allumé, et peuvent être effacées.
Un registre des points [0 』off vous
[1 dans le registre un solide point de la
Un certain nombre de deux registres seront mis en évidence à la dot.
SET:PUSH AF
LD A,(93CDH) ;┓
CP 0E5H ;┃
JR NZ,S3 ;┃DETERMINATION DU
LD A,0CDH ;┃MODELE DE G850
JR S4 ;┃
S3: LD A,0CBH ;┃
S4: LD (N2+1),A ;┛
POP AF
LD H,0
LD L,E
LD E,D
LD D,0
LD (7967H),HL
LD (7969H),DE
LD IX,0FFFFH
LD (777DH),IX
LD (777FH),A
CALL N2
RET
N2: CALL 9300H
DB 0DH
DW 0C595H
RET
LINE
Registre d'entrée
HL: Coordonnée X de l’origine de la ligne -32768 X ~ 32767 (8000H ~ 7FFFH)
DE: Coordonnée Y de l’origine de la ligne -32768 ~ 32767 (8000H ~ 7FFFH)
IX: Coordonnée X de la fin de la ligne -32768 32767 (8000H ~ 7FFFH)
IY: Coordonnée Y de la fin de la ligne 32767 (8000H ~ 7FFFH)
A: Effacement du point= 0, Affichage du point = 1 ; Inversion du point = 2
B: Ligne = 0, Rectangle=1, Rectangle= 2
Commentaire
Entrez le numéro de registre et les coordonnées de chaque individu LIN [』puis un appel
Et tracer la ligne entre la source et de destination, vous pouvez décrire un rectangle avec des lignes diagonales début et la fin.
B 』registre tracer une ligne entre 0 [points de début et de fin et à
[B 1 dans le registre de décrire un rectangle en diagonale vers le début et la fin.
registres B en deux, deux et remplir le rectangle avec diagonale représentant le début et la fin.
Un registre des points [0 』off vous
[1 dans le registre un solide point de la
Un registre de numéro deux est mis en évidence lorsque le point.
Notes
BASIC LINE de l'instruction, mais peut être omis de tirer quelques lignes,
Dans ce sous-programme, s'il vous plaît mettez toutes les données de registre d'entrée à chaque fois.
LIN:PUSH AF
LD A,(93CDH) ;┓
CP 0E5H ;┃
JR NZ,S5 ;┃
LD A,0CDH ;┃DETERMINATION DU
JR S6 ;┃MODELE DE G850
S5: LD A,0CBH ;┃
S6: LD (N3+1),A ;┃
LD (N4+1),A ;┃
LD (N5+1),A ;┛
POP AF
LD (7967H),IX
LD (7969H),IY
LD IX,0FFFFH
LD (777DH),IX
LD (777FH),A
LD A,B
CP 1
JR C,P0
JR Z,P1
CALL N5
RET
P0: CALL N3
RET
P1: CALL N4
RET
N3: CALL 9300H
DB 0DH
DW 0C595H
N4: CALL 9300H
DB 0DH
DW 0C442H
N5: CALL 9300H
DB 0DH
DW 0C4CBH
RET
Exemple de programme
LD HL,100 ;┓
LD DE,4 ;┃(1)
LD IX,120 ;┃Tracer une ligne
LD IY,31 ;┃ Entre (100,4)et(120,31)
LD A,1 ;┃
LD B,0 ;┃
CALL LIN ;┛
LD HL,-3 ;┓
LD DE,-6 ;┃(2)
LD IX,55 ;┃(-3,-6)と(55,18)を対角線とする
LD IY,18 ;┃ 四角形を書く
LD A,1 ;┃
LD B,1 ;┃
CALL LIN ;┛
LD HL,40 ;┓
LD DE,10 ;┃(3)
LD IX,72 ;┃(40,10)と(72,24)を対角線とする
LD IY,24 ;┃ 四角形を書き、中を塗りつぶす
LD A,1 ;┃
LD B,2 ;┃
CALL LIN ;┛
LD HL,75 ;┓
LD DE,0 ;┃(4)
LD IX,45 ;┃(75,0)と(45,50)を結ぶ
LD IY,50 ;┃ 直線を引く
LD A,2 ;┃ ただし直線は画面に対して反転する
LD B,0 ;┃
CALL LIN ;┛
RET
GCURSOR / GPRINT
Registre d'entrée
IX: GCURSOR la coordonnée X de -32768 ~ 32767 (8000H ~ 7FFFH)
IY: GCURSOR coordonnée Y de -32768 ~ 32767 (8000H ~ 7FFFH)
HL: Lieu de départ des données graphiques
B: points horizontaux Gurafukkudeta 1 ~ 144 (~ 01H 90H)
Commentaire
Mettez l'adresse HL début du registre que vous souhaitez afficher des données graphiques,
Les instructions de la même manière GCURSOR BASIC IX, IY s'inscrire et d'entrer les coordonnées
GPR [CALL 』pour voir les graphiques alors.
Notes
Les coordonnées des GCURSOR, affichage graphique de base ainsi que l'instruction sera [』inférieure gauche.
Le modèle de données graphiques en format peu
BASIC GPRINT qu'ils respectent l'ordre, montrent que joue dans [CALL 0BFD0H
S'il vous plaît noter le motif de bits, les formats de données différents.
Pour plus d'informations, des instructions écrites sur le G850, GPRINT S'il vous plaît lisez la description de l'instruction.
GPR:LD A,(93CDH) ;┓
CP 0E5H ;┃
JR NZ,S7 ;┃DETERMINATION DU
LD A,0CDH ;┃MODELE DE G850
JR S8 ;┃
S7: LD A,0CBH ;┃
S8: LD (N6+1),A ;┛
LD (79DBH),IX
LD (79DDH),IY
L1: XOR A
LD (777FH),A
LD A,(HL)
PUSH BC
PUSH HL
CALL N6
POP HL
INC HL
POP BC
DJNZ L1
RET
N6: CALL 9300H
DB 0EH
DW 0C92EH
RET
Exemple de programme
LD IX,20 ;X座標は20
LD IY,17 ;Y座標は17
LD B,12 ;グラフィックの横の長さは12ドット
LD HL,BOX ;グラフィックデータの開始アドレスを読み込む
CALL GPR ;『GPRINT』IOCSをCALL
RET ;
BOX:DB 1EH ;┓
DB 9CH ;┃
DB 5CH ;┃
DB 3CH ;┃
DB 5CH ;┃
DB 9CH ;┃グラフィックのデータ
DB 1CH ;┃CALL 0BFD0H用とは異なるので注意!
DB 88H ;┃
DB 0EBH ;┃
DB 3FH ;┃
DB 0BCH ;┃
DB 0F0H ;┛
La MEM commence en 8000H
Le MEV en 100H
0~100H : Zone réservée
Instruction ORG pour reservation LM
Quelques appels :
ATTENTE D'UNE TOUCHE
--------------------
10 PRINT "PRESS ANY KEY"
20 CALL 48381
30 PRINT "THANK YOU"
10 CALL 48381
20 PRINT INKEY$ ;
30 GOTO 10
10 CALL 48381
20 K$=INKEY$
30 IF K$="" GOTO 10
40 PRINT K$;
50 GOTO 10
LOGIQUE
-------
A=(B=3)
IF A=1 THEN A=0 ELSE A=1
A=1 XOR A
A=-(A=0)
A=1-A
10 A=0
20 A=1-A
30 PRINT A
40 CALL 48381
50 GOTO 20
A=(A+1) MOD 5
10 A=0
20 A=(A+1) MOD 5
30 PRINT A
40 CALL 48381
50 GOTO 20
TEXTE
-----
10 IF A=0 THEN PRINT "EASY"
20 IF A=1 THEN PRINT "NORMAL"
30 IF A=2 THEN PRINT "HARD"
PRINT MID$("ABCDE",3,2)
PRINT MID$("EASY NORMALHARD",A*6+1,6)
PRINT MID$ ("EASYNORMALHARD",(A=2)*-2+A*4+1,(A=0)*2+6)
AUTRE
-----
10 LCOPY
10 LCOPY
20 ABCDE
----------
ASSEMBLEUR
----------
10 ORG 100H
20 LD B,11
30 LD DE,0204H
40 LD HL,WORD
50 CALL 0BFF1H
60 RET
70WORD:DB 'Hello,world'
10 #define H 0x7800
20 main(){
30 int j;
40 for(j=0;j<8;j++)printf(" %2X",peek(j+H));
50 for(j=0;j<8;j++){gotoxy(j*3+2,1);putchar(peek(j+H));}
60 }
ORG 0100H
; ラストアンサーに文字列を入れるためのフォーマット
LD HL,FORMAT
LD DE,79A0H
LD BC,7
LDIR
; 文字列の長さを設定
LD A,STRL
LD (79A7H),A
RET
FORMAT: DB 0,0,0,0,0D0H
DW STR
STR: DB 'Pocket'
STRL EQU 6
L'ordre du G850 BASIC LINE [[GPRINT 』』 et il ya des instructions graphiques liés, tels que
Ces déclarations sont valables seulement BASIC, et les graphiques des commandes telles que le langage machine
SHARP a été publié dans IOCS n'est pas inclus.
Après la dernière fois, G850 dans le système graphique IOCS introduit les sous-programmes utilisés dans le vent.
Liste des sources pour voir, je me demande pourquoi est-ce? "Et trop penser à
S'il vous plaît essayez de l'utiliser si l'occasion se présente pour le moment.
Vous remarquerez que si vous lisez le dernier
Cette liste des sources, G815 dispose d'un peu plus longtemps que la source de la liste.
Parce que, G850 série G850, G850S, G850V Il existe trois types,
ROM est légèrement différente pour chacune des matières de l'adresse va changer ainsi l'exécution.
Alors, comment fonctionne correctement dès le début dans la série G850
Le programme comprend également la détermination des modèles dans la liste des sources
J'ai longtemps été la source de la liste en conséquence.
Note: Ce sous-programme G850, G850S, G850V seulement!
La série G850 S'il vous plaît ne pas utiliser d'autres modèles.
POINT
Registre d'entrée
E: X coordonnées 0~ 143 (~ 00H 8FH)
D: Y 0 coordonnées 0~ 47 (00H ~ 2FH)
registre de sortie
A: 1=point allumé, 0=point éteint
Commentaire
Coordonnée X registre E, D coordonnées dans le registre Y 』POI [lorsque l'Appel,
Si les feux de point de coordonnées [1 dans le registre d'entrée dans le A,
Non point lumineux champ si vous avez plus ou coordonner les
Un registre contient
POI:LD A,(93CDH) ;┓
CP 0E5H ;┃
JR NZ,S1 ;┃DETERMINATION DU
LD A,0CDH ;┃MODELE DE G850
JR S2 ;┃
S1: LD A,0CBH ;┃
S2: LD (N1+1),A ;┛
LD H,0
LD L,E
LD E,D
LD D,0
CALL N1
AND C
RET Z
LD A,1
RET
N1: CALL 9300H
DB 0EH
DW 0CA08H
RET
PSET / PRESET
Registre d'entrée
E: Coordonné X 0~ 143 (~ 00H 8FH)
D: Coordonné Y 0~ 47 (00H ~ 2FH)
A: Effacement du point= 0, Affichage du point = 1 ; Inversion du point = 2
Commentaire
E coordonner les registres X, Y D registre de mettre les coordonnées [SET 』Puis appelez
Et le point est allumé, et peuvent être effacées.
Un registre des points [0 』off vous
[1 dans le registre un solide point de la
Un certain nombre de deux registres seront mis en évidence à la dot.
SET:PUSH AF
LD A,(93CDH) ;┓
CP 0E5H ;┃
JR NZ,S3 ;┃DETERMINATION DU
LD A,0CDH ;┃MODELE DE G850
JR S4 ;┃
S3: LD A,0CBH ;┃
S4: LD (N2+1),A ;┛
POP AF
LD H,0
LD L,E
LD E,D
LD D,0
LD (7967H),HL
LD (7969H),DE
LD IX,0FFFFH
LD (777DH),IX
LD (777FH),A
CALL N2
RET
N2: CALL 9300H
DB 0DH
DW 0C595H
RET
LINE
Registre d'entrée
HL: Coordonnée X de l’origine de la ligne -32768 X ~ 32767 (8000H ~ 7FFFH)
DE: Coordonnée Y de l’origine de la ligne -32768 ~ 32767 (8000H ~ 7FFFH)
IX: Coordonnée X de la fin de la ligne -32768 32767 (8000H ~ 7FFFH)
IY: Coordonnée Y de la fin de la ligne 32767 (8000H ~ 7FFFH)
A: Effacement du point= 0, Affichage du point = 1 ; Inversion du point = 2
B: Ligne = 0, Rectangle=1, Rectangle= 2
Commentaire
Entrez le numéro de registre et les coordonnées de chaque individu LIN [』puis un appel
Et tracer la ligne entre la source et de destination, vous pouvez décrire un rectangle avec des lignes diagonales début et la fin.
B 』registre tracer une ligne entre 0 [points de début et de fin et à
[B 1 dans le registre de décrire un rectangle en diagonale vers le début et la fin.
registres B en deux, deux et remplir le rectangle avec diagonale représentant le début et la fin.
Un registre des points [0 』off vous
[1 dans le registre un solide point de la
Un registre de numéro deux est mis en évidence lorsque le point.
Notes
BASIC LINE de l'instruction, mais peut être omis de tirer quelques lignes,
Dans ce sous-programme, s'il vous plaît mettez toutes les données de registre d'entrée à chaque fois.
LIN:PUSH AF
LD A,(93CDH) ;┓
CP 0E5H ;┃
JR NZ,S5 ;┃
LD A,0CDH ;┃DETERMINATION DU
JR S6 ;┃MODELE DE G850
S5: LD A,0CBH ;┃
S6: LD (N3+1),A ;┃
LD (N4+1),A ;┃
LD (N5+1),A ;┛
POP AF
LD (7967H),IX
LD (7969H),IY
LD IX,0FFFFH
LD (777DH),IX
LD (777FH),A
LD A,B
CP 1
JR C,P0
JR Z,P1
CALL N5
RET
P0: CALL N3
RET
P1: CALL N4
RET
N3: CALL 9300H
DB 0DH
DW 0C595H
N4: CALL 9300H
DB 0DH
DW 0C442H
N5: CALL 9300H
DB 0DH
DW 0C4CBH
RET
Exemple de programme
LD HL,100 ;┓
LD DE,4 ;┃(1)
LD IX,120 ;┃Tracer une ligne
LD IY,31 ;┃ Entre (100,4)et(120,31)
LD A,1 ;┃
LD B,0 ;┃
CALL LIN ;┛
LD HL,-3 ;┓
LD DE,-6 ;┃(2)
LD IX,55 ;┃(-3,-6)と(55,18)を対角線とする
LD IY,18 ;┃ 四角形を書く
LD A,1 ;┃
LD B,1 ;┃
CALL LIN ;┛
LD HL,40 ;┓
LD DE,10 ;┃(3)
LD IX,72 ;┃(40,10)と(72,24)を対角線とする
LD IY,24 ;┃ 四角形を書き、中を塗りつぶす
LD A,1 ;┃
LD B,2 ;┃
CALL LIN ;┛
LD HL,75 ;┓
LD DE,0 ;┃(4)
LD IX,45 ;┃(75,0)と(45,50)を結ぶ
LD IY,50 ;┃ 直線を引く
LD A,2 ;┃ ただし直線は画面に対して反転する
LD B,0 ;┃
CALL LIN ;┛
RET
GCURSOR / GPRINT
Registre d'entrée
IX: GCURSOR la coordonnée X de -32768 ~ 32767 (8000H ~ 7FFFH)
IY: GCURSOR coordonnée Y de -32768 ~ 32767 (8000H ~ 7FFFH)
HL: Lieu de départ des données graphiques
B: points horizontaux Gurafukkudeta 1 ~ 144 (~ 01H 90H)
Commentaire
Mettez l'adresse HL début du registre que vous souhaitez afficher des données graphiques,
Les instructions de la même manière GCURSOR BASIC IX, IY s'inscrire et d'entrer les coordonnées
GPR [CALL 』pour voir les graphiques alors.
Notes
Les coordonnées des GCURSOR, affichage graphique de base ainsi que l'instruction sera [』inférieure gauche.
Le modèle de données graphiques en format peu
BASIC GPRINT qu'ils respectent l'ordre, montrent que joue dans [CALL 0BFD0H
S'il vous plaît noter le motif de bits, les formats de données différents.
Pour plus d'informations, des instructions écrites sur le G850, GPRINT S'il vous plaît lisez la description de l'instruction.
GPR:LD A,(93CDH) ;┓
CP 0E5H ;┃
JR NZ,S7 ;┃DETERMINATION DU
LD A,0CDH ;┃MODELE DE G850
JR S8 ;┃
S7: LD A,0CBH ;┃
S8: LD (N6+1),A ;┛
LD (79DBH),IX
LD (79DDH),IY
L1: XOR A
LD (777FH),A
LD A,(HL)
PUSH BC
PUSH HL
CALL N6
POP HL
INC HL
POP BC
DJNZ L1
RET
N6: CALL 9300H
DB 0EH
DW 0C92EH
RET
Exemple de programme
LD IX,20 ;X座標は20
LD IY,17 ;Y座標は17
LD B,12 ;グラフィックの横の長さは12ドット
LD HL,BOX ;グラフィックデータの開始アドレスを読み込む
CALL GPR ;『GPRINT』IOCSをCALL
RET ;
BOX:DB 1EH ;┓
DB 9CH ;┃
DB 5CH ;┃
DB 3CH ;┃
DB 5CH ;┃
DB 9CH ;┃グラフィックのデータ
DB 1CH ;┃CALL 0BFD0H用とは異なるので注意!
DB 88H ;┃
DB 0EBH ;┃
DB 3FH ;┃
DB 0BCH ;┃
DB 0F0H ;┛
- 05 déc. 2015 22:55
- Forum : Tous les Pockets
- Sujet : Sharp PC-G850V
- Réponses : 44
- Vues : 28042
Re: Sharp PC-G850V
Tu peux toujours poser des questions ici.
Quelques uns ont bien planché sur cette machine et peuvent répondre.
Quelques uns ont bien planché sur cette machine et peuvent répondre.
- 29 nov. 2015 15:04
- Forum : Tous les Pockets
- Sujet : demande d'information sur Sharp PC-1500A
- Réponses : 10
- Vues : 9316
Re: demande d'information sur Sharp PC-1500A
Bonjour,
j'ai un module similaire qui fonctionne sur n'importe quel PC 1500.
On note quand même qu'il à des pistes en plus (et un truc jaune en bas à gauche)
Maintenant à part l'extension mémoire je ne sais pas ce qu'il est sensé faire.
j'ai un module similaire qui fonctionne sur n'importe quel PC 1500.
On note quand même qu'il à des pistes en plus (et un truc jaune en bas à gauche)
Maintenant à part l'extension mémoire je ne sais pas ce qu'il est sensé faire.
- 15 oct. 2015 11:37
- Forum : Tous les Pockets
- Sujet : Étrange
- Réponses : 3
- Vues : 3611
Re: Étrange
Pas très étonnant, et ces le cas de beaucoup de Pocket.
La gestion de la pile d'affichage, du scroll met à genoux
La gestion de la pile d'affichage, du scroll met à genoux
- 02 oct. 2015 07:58
- Forum : Tous les Pockets
- Sujet : Misez Rapide–Accélérez n°2 : La suite des nombres de Hamming
- Réponses : 46
- Vues : 28879
Re: Misez Rapide–Accélérez n°2 : La suite des nombres de Ham
L'idée :
un nombre de haming est défini par 3 composantes X,Y,Z.
Bref pour faire imager ... la masse de blocs de ciment.
On les calcule un par un et on les balance dans une solution visqueuse.
Ensuite on part en plongée et on a les blocs triés suivant leur profondeur.
Problème :
Si pour les premiers blocs on trouve de suite. Plus on avance et moins c'est dense !
Il faudrait donc un liquide avec une densité évoluante et suffisamment discriminante.
Bref.
J'ai mon liquide visqueux (l'écran). Je me penche sur la densité maintenant.
un nombre de haming est défini par 3 composantes X,Y,Z.
Bref pour faire imager ... la masse de blocs de ciment.
On les calcule un par un et on les balance dans une solution visqueuse.
Ensuite on part en plongée et on a les blocs triés suivant leur profondeur.
Problème :
Si pour les premiers blocs on trouve de suite. Plus on avance et moins c'est dense !
Il faudrait donc un liquide avec une densité évoluante et suffisamment discriminante.
Bref.
J'ai mon liquide visqueux (l'écran). Je me penche sur la densité maintenant.
- 01 oct. 2015 17:31
- Forum : Tous les Pockets
- Sujet : Misez Rapide–Accélérez n°2 : La suite des nombres de Hamming
- Réponses : 46
- Vues : 28879
Re: Misez Rapide–Accélérez n°2 : La suite des nombres de Ham
Pour diminuer le nombre de boucles
52s
Code : Tout sélectionner
10 CLS
20 FOR A=0 TO 5
25 D=5^A
30 FOR B=0 TO 8
35 E=D*3^B
40 FOR C=0 TO 12
50 F=E*2^C-1
60 IF D<6912 THEN PSET (D MOD 144, D/144) ELSE C=13
70 NEXT C
80 NEXT B
90 NEXT A
100 DIM S(160)
140 I=1
150 FOR Y=0 TO 47
160 FOR X=0 TO 143
170 IF POINT (X,Y) LET S(I)=X+1+Y*144,I=I+1
180 NEXT X
190 NEXT Y