| LG KS 360
|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |

| Avec le kit MidletPASCAL 2.02, on peut se passer du JAVA et écrire directement en Pascal une application pour portables. Cet environnement de programmation
génère directement du code JAVA à partir d'une programmation Pascal classique. Vous obtenez les deux fichiers JAD et JAR pour faire tourner votre application
sur le téléphone. Pour profiter de l'option RUN vous aurez besoin de l'émulateur de téléphone qui se trouve intégré au WTK de SUN et téléchargeable ici! |
![]() |
![]() L'écran de titre de mon Master Mind |
Exemple avec le Master Mind J'ai écrit une petite application dont je vous livre ici le projet complet:
Voir le code source. |
![]() Le plateau du jeu |
![]() |
Voici l'écran de démarrage du CellularBASIC enfin adapté!
Le menu est complet, il permet d'éditer un programme, de le sauver, de le charger et bien sûr, de l'exécuter. |
| Une petite image de l'édition d'un programme. Sur ce portable, il est certain que le clavier complet est un atout non négligeable.
On regrettera pourtant que certains symboles soient un peu difficiles à taper (=, ", parenthèses). Sinon, préparer le source sur PC (fichier format texte) et le sauvegarder sur la MicroSD dans le répertoire ZAM avec l'extention *.ZAM! Ainsi l'édition sera facilitée. Il se chargera sans problème dans le CellularBASIC. L'éditeur du Basic pose problème sur le KS360 car il semblerait que le source soit limité à 512 octets lors de l'édition (même si le texte chergé peut atteindre plusieurs Ko, dès qu'on édite seules les 512 premiers restent à l'écran). J'ai résolu ce problème en écrivant un petit éditeur en MidletPascal (voir plus bas). |
![]() |
![]() |
Un exemple de programme: sub main CLS FOR I = 1 TO 50 X = INT(RND * width) Y = INT(RND * height) R = INT(RND * 50) if R < 17 then FILLON else FILLOFF end if color(rnd*256,rnd*256,rnd*256) CIRCLE (X, Y, R) NEXT I end sub |
Le fameux problème des huit reines: Cliquer pour le source.
sub main
t=timemilli
q=0 : i=0 : sol=0
cls : print "Recherche..."
while i<>-2
q=q+1
if q=9 then
call dessin
else
r(q)=1
end if
i=-1
while i=-1
if q<9 then
s(q)=q+r(q) : d(q)=q-r(q)
i=1 : p=q
while i<p
if r(i)=r(p) or s(i)=s(p) or d(i)=d(p) then
i=-1 : p=-1
else
|
(l'écran affiche 311 pour une précédente version). |
i=i+1
end if
wend
else
q=8
end if
if i=-1 then
p=1
while p=1
if r(q)<8 then p=0
else q=q-1
if q=0 then p=0 end if
end if
wend
if q=0 then
i=-2
else
r(q)=r(q)+1
end if
end if
wend
wend
end sub
|
sub dessin
cls : sol=sol+1
x=(width-160)/2 : y=(height-160)/2
color(255,0,0) : filloff : box(x-1,y-1,162,162)
color(200,200,200) : fillon : box(x,y,160,160)
color(120,0,0) : c=0
for k=x to x+140 step 20
for j=y to y+140 step 20
if c=0 then
box(k,j,20,20)
end if
c=1-c
next j
c=1-c
next k
color(0,0,255) : x=x-10 : y=y-10
for k=1 to 8
circle(x+k*20,y+r(k)*20,7)
next k
color(255,255,255)
clt : print sol
print int((timemilli-t)/100)/10
end sub
|
![]() |
A l'AIDE! Ce BASIC n'a pas d'instruction INKEY$! J'ai été incapable d'en ajouter une malgré mes recherches sur les Canvas de Java. Si quelqu'un pouvait s'y atteler... |
| Pour pallier aux défauts de l'éditeur du CellularBASIC, et notemment la limite des 512 octets, voici un petit éditeur de textes
que j'ai écrit en MidletPASCAL. Il est basé sur le principe d'un éditeur russe TextEditor (ce dernier posait d'énormes problèmes
car on devait confirmer les opérations de fichiers à tout bout de champ): Le code source apparait, on peut naviguer dedans et lorsqu'on choisit EDIT, seules les 6 lignes à partir du curseur sont chargées dans une boite d'édition. On peut écrire, corriger, effacer, puis ce bloc est réinséré avec la commande ACCEPT. |
![]() |
![]() |
Vous pouvez télécharger MPedit. L'archive contient le dossier complet du projet:
|