fork download
  1. \ Picture words give a flag based on x and y.
  2. 0 Value x 0 Value y \ 10000x fixed decimal.
  3.  
  4. : from-sq ( nn-n) swap - dup 10000 */ ;
  5. : disc ( rxy-f) y from-sq swap x from-sq + > ;
  6. : udisc ( -f) 10000 0 0 disc ;
  7.  
  8. : vert ( -f) x -1500 -6000 within ;
  9. : horz ( -f) y -2000 -4000 within ;
  10. : smash ( -f) udisc vert and horz and ;
  11.  
  12. : pair ( r-ff) dup 0 5000 disc swap 0 -5000 disc ;
  13. : wave ( -f) 2500 pair invert x 0< and or ;
  14. : eyes ( -f) 278 pair or ;
  15. : yinyang ( -f) udisc wave xor eyes xor ;
  16.  
  17. : pit ( -f) x 6000 2000 within y 2000 < or ;
  18. : pit+ ( f-f) pit and x negate y to x to y ;
  19. : manji ( -f) true pit+ pit+ pit+ pit+ ;
  20.  
  21.  
  22. \ Emit UTF-8 for Braille U+28XX, given XX.
  23. : emitb8 ( c-) ?dup-0=-IF $40 THEN $E2 emit
  24. dup 6 rshift $A0 or emit $3F and $80 or emit ;
  25.  
  26. : ~ c, ; \ Dot row/col per Braille bit: 0 3
  27. : Dots ( -;i-c) Create does> + c@ ; \ 1 4
  28. Dots dr 0 ~ 1 ~ 2 ~ 0 ~ 1 ~ 2 ~ 3 ~ 3 ~ \ 2 5
  29. Dots dc 0 ~ 0 ~ 0 ~ 1 ~ 1 ~ 1 ~ 0 ~ 1 ~ \ 6 7
  30.  
  31. \ Compute pic x/y from screen row/col/dot.
  32. 0 Value r 0 Value c 0 Value d
  33. 12 dup Constant hgt 2* Constant wid
  34. : axis ( duuuu-dd) * + swap */ 10000 ;
  35. : toy ( -) -5000 hgt d dr 4 r axis + to y ;
  36. : tox ( -) 10000 wid d dc 2 c axis - to x ;
  37.  
  38. Defer pic ( -f) ' false is pic \ '
  39. : dotbit ( -c) toy tox pic 1 and d lshift ;
  40. : calcb8 ( -c) 0 8 0 DO i to d dotbit or LOOP ;
  41. : line ( -) wid 0 DO i to c calcb8 emitb8 LOOP ;
  42. : 3pic ( -xxx) ['] smash ['] manji ;
  43. : 3line ( xxx-) 2 0 DO is pic line 2 spaces LOOP ;
  44. : 3draw ( -) hgt 0 DO i to r cr 3pic 3line LOOP ;
  45. 3draw
  46.  
Success #stdin #stdout 0.01s 5268KB
stdin
Standard input is empty
stdout
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⡀⡀⡀⡀⢸⣿⣿⣿⣿  ⡀⡀⡀⡀⡀⡀⡀⡀⡀⡀⢰⣶⣶⣶⣶⣦⣤⣀⡀⡀⡀⡀⡀⡀  
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⡀⡀⡀⡀⢸⣿⣿⣿⣿  ⡀⡀⡀⡀⣠⡀⡀⡀⡀⡀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣦⡀⡀⡀⡀  
⠛⠛⠛⠛⠛⠛⠛⠛⠛⠛⣿⣿⣿⣿⡇⡀⡀⡀⡀⢸⣿⣿⣿⣿  ⡀⡀⣠⣾⣿⡀⡀⡀⡀⡀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣦⡀⡀  
⡀⡀⡀⡀⡀⡀⡀⡀⡀⡀⣿⣿⣿⣿⡇⡀⡀⡀⡀⢸⣿⣿⣿⣿  ⡀⣰⣿⣿⣿⡀⡀⡀⡀⡀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⡀  
⡀⡀⡀⡀⡀⡀⡀⡀⡀⡀⣿⣿⣿⣿⡇⡀⡀⡀⡀⢸⣿⣿⣿⣿  ⢠⣿⣿⣿⣿⡀⡀⡀⡀⡀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣧  
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿  ⢸⣿⣿⣿⣿⡀⡀⡀⡀⡀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿  
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿  ⢸⣿⣿⣿⣿⡀⡀⡀⡀⡀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿  
⣿⣿⣿⣿⣿⠉⠉⠉⠉⠉⣿⣿⣿⣿⡏⠉⠉⠉⠉⠉⠉⠉⠉⠉  ⠈⠉⠉⠉⠉⡀⡀⡀⡀⡀⠈⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉  
⣿⣿⣿⣿⣿⡀⡀⡀⡀⡀⣿⣿⣿⣿⡇⡀⡀⡀⡀⡀⡀⡀⡀⡀  ⡀⢠⣤⣤⣤⡀⡀⡀⡀⡀⢠⣤⣤⣤⣤⣤⣤⣤⣤⣤⣤⣤⣤⡀  
⣿⣿⣿⣿⣿⡀⡀⡀⡀⡀⣿⣿⣿⣿⣇⣀⣀⣀⣀⣀⣀⣀⣀⣀  ⡀⡀⠻⣿⣿⡀⡀⡀⡀⡀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠃⡀  
⣿⣿⣿⣿⣿⡀⡀⡀⡀⡀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿  ⡀⡀⡀⠈⠻⡀⡀⡀⡀⡀⢸⣿⣿⣿⣿⣿⣿⣿⣿⡿⠋⡀⡀⡀  
⣿⣿⣿⣿⣿⡀⡀⡀⡀⡀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿  ⡀⡀⡀⡀⡀⡀⡀⡀⡀⡀⢸⣿⣿⣿⣿⡿⠿⠛⠉⡀⡀⡀⡀⡀