福野泰介の一日一創 - create every day

How to make the Inclusive City - Learn Braille (点字を学ぼう) on IchigoJam / Alphabet(+和文)

2018/05/15
#IchigoJam #IoT #js #africa #codefor #nerima 

インクルーシブシティとは、いろんな壁を越えて誰もが豊かに暮らせる都市。
The Inclusive City makes everyone happy.

「はじめのいっぽ」は関心。
The first step is the interest.

見えなくても聞こえなくても伝わる、点字を学習するプログラムを作りました。
I made a program to learn braille, characters for everyone.


キーボードで打つと、対応する点字が表示されます。(A-Z版とひらがな版、プログラムは後半に)
You can check the braille with typing A-Z or Kana of Japanese.
(RUN on Ichigojam web)


アフリカ各国からのインターン生と、お互いの紹介とIT使った社会発展に向けたディスカッション。
Mutual introduction and discussion to improve this society with IT with interns from Africa.


アフリカと日本、つなぎましょう!
Let's connect Africa to Japan.


Code for Nerima では、体表点字の開発者、長谷川さんに見てもらえました。
I met Mr. Hasegawa, an inventer of braille with motors at Code for Nerima.


コードでつながる練馬と鯖江。
Sabae(Fukui) connected Nerima(Tokyo) with the code.


Code for Nerima 青木さん作のデジタルメガネ体験。メガネ新ジャンル、熱い!
I enjoyed the digital eye-glasses by Mr. Aoki. It's hot to create new glasses!


インクルーシブシティづくり、ぜひご一緒に!
Let's create the inclusive city!

点字学習プログラムのつくりかた on IchigoJam
How to make to learn braille on IchigoJam

点字をデータ化する(点字 - Wikipedia
Make the code(number) from the braille (braille - Wikipedia)

?`100000 32

10 00 00 - braille in binary (2進数化した点字) → 32

10 LET[0],32,40,48,52,36,56,60,44,24,28,34,42,50,54,38,58,62,46,26,30,35,43,29,51,55,39 100 K=INKEY():IF K=0 CONT 105 ?CHR$(K) 110 IF K<65 OR K>90 GOTO100 120 B=[K-65] 300 ?BIN$(B,6) 390 GOTO 100

タイプすると対応する点字コードを表示
Show the code by typed character.

300 FORI=0TO5 310 LC 5+I%2*4,2+I/2*4 320 ?CHR$(232+B>>(5-I)&1) 330 NEXT 60 CLS 70 VIDEO3 105 LC5,0:?CHR$(24,K);

点字っぽく表示を工夫してできあがり!(24=特殊キーコード、行削除)
Make up the display to finishi!(24=special key code, delete line)

ひらがなバージョン。
Japanese Kana version.
(RUN on IchigoJam web)

10 LET[0],`100,`101,`110,`111,`011:'AIUEO 20 LET[5],`001,`101,`110,`010,`011,`111,`100:'KSTNHMR 30 LET[12],`010010,`010011,`010110:'YYY 40 LET[15],`0010,`0110,`0111:'W 50 S="AIUEOKSTNHMRYYYW" 100 K=INKEY():IF K=0 CONT 105 ?CHR$(K); 110 N=-1:FORI=0TOLEN(S)-1:IF ASC(S+I)=K N=I:NEXT:ELSE NEXT 120 IF N<0 GOTO100 130 IF N<5 B=[N]<<3:GOTO300 140 K=INKEY():IF K=0 CONT 145 ?CHR$(K) 150 IF N=8 AND K=ASC("N") B=[17]:GOTO300 160 M=-1:FORI=0TO4:IF ASC(S+I)=K M=I:NEXT:ELSE NEXT 170 IF M<0 GOTO100 180 IF N<12 B=[M]<<3+[N] 190 IF N=14 B=[12+M/2] 200 IF N=15 B=[15+M/4] 300 ?BIN$(B,6) 390 GOTO100 60 CLS 70 VIDEO3 105 LC5,0:?CHR$(24,K); 300 FORI=0TO5 310 LC 5+I%2*4,2+I/2*4 320 ?CHR$(232+B>>(5-I)&1) 330 NEXT

ローマ字で打つと対応する点字が出ます。
This program shows in braille by your type in Roman letters.

濁点半濁点などへ拡張してみましょう。容量不足対策はこちら。
Let's make extension versions! If you want to more memory...

?FREE() 362 ?"10 LET[0]";:FORI=0TO17:?",";[I];:NEXT:? 10 LET[0],4,5,6,7,3,1,5,6,2,3,7,4,18,19,22,2,6,7 20 30 40 ?FREE() 480

118byte縮みます。
You can save 118byte.

links
- Programming for Rwandan kids! Open Teaching Materials
- デジタル指点字はじめのいっぽ「数字」の点字表現を体得する読み上げ学習マシーン

Tweet
クリエイティブ・コモンズ・ライセンス
この作品は「Creative Commons — CC BY 4.0」の下に提供されています。
CC BY 福野泰介 - Taisuke Fukuno / @taisukef / high-res profile image