[openfirmware] [commit] r2080 - cpu/arm/olpc/1.75

repository service svn at openfirmware.info
Thu Dec 16 07:40:34 CET 2010


Author: quozl
Date: Thu Dec 16 07:40:34 2010
New Revision: 2080
URL: http://tracker.coreboot.org/trac/openfirmware/changeset/2080

Log:
OLPC XO-1.75 - add test instructions image for top face of A1 PCB only

Added:
   cpu/arm/olpc/1.75/testinstructions.fth
Modified:
   cpu/arm/olpc/1.75/fw.bth

Modified: cpu/arm/olpc/1.75/fw.bth
==============================================================================
--- cpu/arm/olpc/1.75/fw.bth	Wed Dec 15 05:00:23 2010	(r2079)
+++ cpu/arm/olpc/1.75/fw.bth	Thu Dec 16 07:40:34 2010	(r2080)
@@ -142,6 +142,7 @@
 fload ${BP}/cpu/x86/pc/olpc/gui.fth
 fload ${BP}/cpu/x86/pc/olpc/strokes.fth
 fload ${BP}/cpu/x86/pc/olpc/plot.fth
+fload ${BP}/cpu/arm/olpc/1.75/testinstructions.fth
 
 \ Pseudo device that appears in the boot order before net booting
 0 0 " " " /" begin-package
@@ -379,7 +380,7 @@
    unfreeze visible cursor-on ( no-banner? )
    if  banner  then  \ Reissue banner if it was suppressed
 
-   blue-letters ." Type 'help' for more information." black-letters
+   blue-letters ." Type 'help' for more information." black-letters cancel
    cr cr
 
    enable-user-aborts

Added: cpu/arm/olpc/1.75/testinstructions.fth
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ cpu/arm/olpc/1.75/testinstructions.fth	Thu Dec 16 07:40:34 2010	(r2080)
@@ -0,0 +1,560 @@
+\ See license at end of file
+purpose: Drawings of OLPC XO-1.75 board and components for test instructions
+
+support-package: test-instructions
+
+decimal
+
+\ Common items
+
+\ FIXME: these might be shared between XO-1.5 and XO-1.75
+
+: headphones-logo
+   24 5 rmove  -6 0  -10 6  -10 13 rcurve
+   10 -13 rmove  6 0  10 6  10 13 rcurve
+   -16 4 rmove  -2 0  -3 -1  -3 -2 rcurve  0 -3  1 -3  3 -3 rcurve  0 5 rline
+   12 -5 rmove  2 0  3 0  3 2  rcurve  0 3  -1 3  -3 3 rcurve  0 -5 rline
+;
+
+: led-symbol  ( x y -- )
+   moveto  5 5 rline  5 -5 rline  -5 -5 rline  -5 5 rline
+;
+: usb-logo
+   14 11  rmove
+   1 1  1 3  0 4  rcurve
+   -1 1  -2 1  -3 0  rcurve
+   -1 -1  -1 -3  0 -4  rcurve
+   1 -1  2 -1  3 0  rcurve
+
+   10 -4  rmove
+   1 -1  1 -2  0 -2  rcurve
+   0 -1  -1 -1  -1 0  rcurve
+   0 0  0 1  0 2  rcurve
+   0 0  1 0  1 0  rcurve
+
+   -12 6  rmove  18 0  rline
+   5 0  rmove   -5 -2  rline  0 4  rline  5 -2  rline
+   -7 6  rmove   2 0  rline  0 3  rline  -2 0  rline  0 -3  rline
+   -11 -6  rmove
+   1 -2  2 -5  3 -6  rcurve
+   1 -2  2 -1  3 -1  rcurve
+
+   -2 7  rmove
+   2 2  2 5  4 7  rcurve
+   1 1  3 0  5 0  rcurve
+;
+: mic-logo
+   -4 0  -6 -3  -6 -5  rcurve
+   6 5  rmove   3 0  6 -3  6 -5  rcurve
+   -4 -8  rmove
+   0  8  rline  0  1  -1  2  -2  2  rcurve  -1 0  -2 -1  -2 -2  rcurve
+   0 -8  rline  0 -1   1 -2   2 -2  rcurve   1 0   2  1   2  2  rcurve
+   -2 13  rmove  0 3  rline   3 0  rmove  -7 0  rline
+;
+
+\ Board bottom items
+
+: rantenna  ( -- )
+   -5 -5 rmove  10 10 rbox  5 5 rmove  rpoint  5 rcircle
+;
+: wlan-card
+   122 6  75 74 boxat
+   10  9 rmove  rantenna
+   55  0 rmove  rantenna
+;
+
+: board-outline
+  \ bottom left corner
+     2 370 moveto
+
+  \ left side cutout
+     2 253 lineto   11 253 lineto   11 236 lineto   6  236 lineto
+
+  \ top left corner
+     6  37 lineto
+  \ wireless cutout
+    60  37 lineto   60   0 lineto  114   0 lineto  114  96 lineto
+   205  96 lineto  205   0 lineto  524   0 lineto  524  37 lineto
+
+  \ top right corner
+   580 37 lineto
+
+  \ right side cutout
+   580 164 lineto  569 164 lineto  569 207 lineto  576 207 lineto
+   576 242 lineto  569 242 lineto  569 259 lineto  580 259 lineto
+
+  \ bottom right corner
+   580 370 lineto
+
+  \ lower cutout
+   495 370 lineto  495 366 lineto  446 366 lineto
+   446 353 lineto  423 353 lineto  423 336 lineto
+   396 336 lineto  396 231 lineto  183 231 lineto  183 333 lineto
+   155 333 lineto  155 349 lineto  132 349 lineto  132 366 lineto
+    95 366 lineto   95 370 lineto
+
+  \ bottom left corner
+     2 370 lineto
+;
+
+: mic-conn
+  535 52  45 28 boxat
+  24 20 rmove  mic-logo
+  580 58   8 16 boxat
+;
+: headphone-conn
+  535 90  45 28 boxat
+  headphones-logo
+  580 96   8 16 boxat
+;
+: ac-conn  553 306  36 27 boxat  ;
+: ext-sd-slot  2 280  81 90 boxat ;
+: kbd-conn   165 300  12 23 boxat  ;
+
+: ext-sd-card
+    9 293 moveto
+    9 379 lineto  76 379 lineto  76 304 lineto  65 293 lineto  9 293 lineto
+;
+
+: usb0-conn
+   537 126  45 27 boxat
+   usb-logo
+;
+: usb1-conn
+   0 54  45 27 boxat
+   usb-logo
+;
+: usb2-conn
+   0 99  45 45 boxat
+   0 9 rmove  usb-logo
+;
+: battery-conn
+   435 321  25 20 boxat
+   435 299  10 12 boxat
+;
+
+: led0  103 356 led-symbol  ;
+: led1  119 356 led-symbol  ;
+: led2  454 356 led-symbol  ;
+: led3  474 356 led-symbol  ;
+: cmos-battery-conn
+   259  47  12 18 boxat
+   261  43   8  4 boxat
+   261  65   8  4 boxat
+;
+
+\ FIXME: find out where this is to go for A2
+: cmos-battery
+   262 60  22 circleat
+   \ Wires
+   243 71 moveto
+     238  75   228  81   229  86 curveto
+     229  90   242  99   249 100 curveto
+     255 100   262  89   269  89 curveto
+     275  89   280 100   286 100 curveto
+     292 100   297  93   303  90 curveto
+   247 76 moveto
+     241  81   231  89   229  93 curveto
+     226  96   230  99   234  99 curveto
+     237  99   244  90   250  91 curveto
+     255  91   261 101   268 101 curveto
+     274 100   280  90   286  90 curveto
+     292  90   298  96   304  99 curveto
+;
+
+: rspkr-conn
+   20 153  18 16 boxat
+   16 157  4 8 boxat
+   38 157  4 8 boxat
+;
+: lspkr-conn
+   544 170  18 16 boxat
+   540 174  4 8 boxat
+   562 174  4 8 boxat
+;
+
+: wlan-conn  109 75  101 28 boxat ;
+
+: serial-conn
+   71 46  18 27 boxat
+   75 42  8 4 boxat
+   75 73  8 4 boxat
+
+   519 154  22 12 boxat
+
+;
+
+: int-sd-slot  115 143 32 37 boxat  ;
+
+: int-sd-card
+    101 146 moveto  43 0 rline  0 27 rline  -13 0 rline  -5 4 rline
+    -5 0 rline  0 -4 rline  -4 0 rline  -2 4 rline  -15 0 rline  0 -31 rline
+;
+
+: basic-layout  ( -- )
+   clear-drawing
+   d# 10 d# 20 offsetat
+   double-drawing
+;
+: draw-board  ( -- )
+   basic-layout
+   board-outline
+   mic-conn
+   headphone-conn
+   ac-conn
+   ext-sd-slot
+   kbd-conn
+   usb0-conn
+   usb1-conn
+   usb2-conn
+   battery-conn
+   led0  led1  led2  led3
+   cmos-battery-conn
+   cmos-battery
+   rspkr-conn
+   lspkr-conn
+   wlan-conn
+   serial-conn
+   int-sd-slot
+
+   wlan-card
+   int-sd-card
+   ext-sd-card
+;
+
+\ Board top items
+\ FIXME: still has XO-1.5 image, yet to update for XO-1.75
+
+: button-symbol  ( x y -- )
+   2dup  18 18 boxat
+   swap 9 +  swap 9 +  6 circleat
+;
+: top-outline
+   153 360 moveto
+   153 324 lineto  441 324 lineto  441 360 lineto  585 360 lineto
+   585  36 lineto  531  36 lineto  531   0 lineto  234   0 lineto
+   234  99 lineto  144  99 lineto  144   0 lineto   63   0 lineto
+    63  36 lineto    9  36 lineto    9 360 lineto  153 360 lineto 
+;
+: headphones-top
+   2 95   7 18  boxat
+   9 91  45 28  boxat
+   headphones-logo
+;
+: mic-top
+   9 54  45 28  boxat
+   24 20 rmove  mic-logo
+   2 59   7 18  boxat
+;
+: acin  0 307  36 27  boxat  ;
+: int-mic-conn
+   70 146  18 18  boxat
+   28 15 rmove  mic-logo
+;
+: usb0
+   7 128  45 27  boxat
+   usb-logo
+;
+: usb1
+   543 55  45 27  boxat
+   usb-logo
+;
+: usb2
+   543 100  45 45  boxat
+   0 9 rmove  usb-logo
+;
+: display-conn  252 1  89 18  boxat  ;
+: camera-conn  540 154  36 18  boxat  ;
+: backlight-conn  63 46  27 17  boxat  ;
+: above-int-mic-conn
+   79 87  18 27  boxat
+   81 82  9 5  boxat
+   81 114  9 5  boxat
+;
+: pwr-but  543 338  button-symbol  ;
+: rotate-but  30 338  button-symbol  ;
+: up-but  37 237  button-symbol  ;
+: down-but  37 278  button-symbol  ;
+: left-but  14 258  button-symbol  ;
+: right-but  57 258  button-symbol  ;
+: o-but  543 239  button-symbol  ;
+: x-but
+   543 279  18 18  boxat
+   548 283 moveto 557 292 lineto 548 292 moveto 557 283 lineto 
+;
+: square-but
+   521 260  18 18  boxat
+   525 264 moveto 534 264 lineto 534 273 lineto 525 273 lineto 525 264 lineto 
+;
+: check-but
+   564 259  18 18  boxat
+   570 269 moveto 573 273 lineto 578 263 lineto 
+;
+: led0-top  518 348  led-symbol  ;
+: led1-top  491 348  led-symbol  ;
+: led2-top  72 348  led-symbol  ;
+: led3-top  99 348  led-symbol  ;
+: mic-led  31 45   led-symbol  ;
+: camera-led  569 45  led-symbol  ;
+: wlan-conn-top  144 82  90 27  boxat  ;
+: wlan-card-top  152 7  75 75  boxat  ;
+: ext-sd-slot-top  497 360  81 9  boxat  ;
+: ext-sd-card-top
+   504 369 moveto  0 -75 rline  11 -11 rline  56 0 rline  0 86 rline  -67 0 rline
+;
+: draw-top  ( -- )
+   basic-layout
+
+   top-outline
+   headphones-top
+   mic-top
+   acin
+   int-mic-conn
+   usb0 usb1 usb2
+   display-conn
+   camera-conn
+   backlight-conn
+   above-int-mic-conn
+   pwr-but
+   rotate-but
+   up-but
+   down-but
+   left-but
+   right-but
+   o-but
+   x-but
+   square-but
+   check-but
+   led0-top
+   led1-top
+   led2-top
+   led3-top
+   mic-led
+   camera-led
+   wlan-conn-top
+   wlan-card-top
+   ext-sd-slot-top
+;
+
+: usb-key  ( -- )
+   95 155 moveto  130 165 lineto 130 155 lineto  95 145 lineto 95 155 lineto
+   130 155 moveto 150 140 lineto 150 150 lineto  130 165 lineto
+   150 140 moveto 115 130 lineto 95 145 lineto
+   146 153 moveto 155 155 lineto 155 135 lineto 110 122 lineto 110 133 lineto
+   110 122 moveto 110 122  171 67  197 54 curveto  229 38 295 42 155 135 curveto
+   155 156 moveto 218 111  229 100 241 81 curveto  248 65 239 51 239 51 curveto
+;
+
+: scanner  ( -- )
+   195 98 moveto
+   195 111  174 121  149 121 curveto
+   123 121  103 111  102  98 curveto
+   103  85  123  75  149  75 curveto
+   174  75  195  85  195  98 curveto
+
+   111 84 moveto
+   193 36 228 48 239 61 curveto
+   261 90 171 122 171 118 curveto
+
+   235 85 moveto
+   281 177 310 177 267 201 curveto
+   251 209 227 200 235 189 curveto
+   243 177 249 179 248 172 curveto
+   239 121 196 109 200 109 curveto
+;
+
+: usb-ethernet
+   130 212 moveto
+   141 218 145 220 145 205 curveto 145 190 145 190 125 180 curveto
+   105 170 105 171 105 185 curveto 105 190 105 185 105 190 curveto
+
+   105 190 moveto
+   106 190 105 192 105 185 curveto 105 170 105 170 135 155 curveto 165 140 165 140 185 150 curveto
+   205 160 205 160 205 175 curveto 205 190 205 190 175 205 curveto 145 220 146 221 130 212 curveto
+
+   125 190 moveto 135 195 lineto 115 205 lineto 95 195 lineto 115 185 lineto 120 188 lineto
+   105 215 moveto 115 220 lineto 115 205 lineto 95 195 lineto 95 206 lineto
+   115 220 moveto 135 210 lineto 135 195 lineto 115 205 lineto 115 220 lineto
+   102 202 moveto  105 201 109 202 110 205 curveto  111 208 111 211 109 213 curveto
+   109 213 moveto  78 232 38 242 38 242 curveto
+   103 202 moveto  76 219 38 230 38 230 curveto
+   130 188 moveto  121 193 lineto  115 190 lineto  125 185 lineto  130 188 lineto
+   130 188 moveto  130 189 130 193 130 193 curveto
+   115 185 moveto  120 188 lineto
+   135 195 moveto  126 191 lineto
+
+   321 96 moveto 321 106 lineto 322 106 308 124 287 118 curveto
+   306 108 moveto 313 105 321 96 321 96 curveto 303 89 lineto 303 89 296 92 289 98 curveto 275 112 291 117 306 108 curveto
+   327 90 moveto  327 96 lineto 321 101 lineto
+   307 90 moveto 315 85 lineto 327 90 lineto 319 95 lineto
+   283 111 moveto 284 114 287 112 288 113 curveto 289 114 289 116 288 117 curveto
+   284 111 moveto 284 110 lineto
+
+   287 111 moveto  250 134  198 157  198 157 curveto
+   288 117 moveto  238 147  203 161  203 161 curveto
+;
+
+
+0 value blink-time
+-1 value blink-state
+0 value blink-color
+h# ff0000 constant red-888
+h# 00ff00 constant green-888
+h# 0000ff constant blue-888
+h# 000000 constant black-888
+h# ffffff constant white-888
+h# ff00ff constant magenta-888
+magenta-888 to blink-color
+
+: set-default-color  ( -- )  black-888 set-fg  ;
+
+defer selected-object  ' noop to selected-object
+
+: idle  ( -- )
+   blink-state -1 =  if  exit  then
+   1 ms
+   get-msecs blink-time -  0>=  if
+      blink-state 1 xor dup to blink-state  ( state )
+      if  blink-color set-fg  else  white-888 set-fg  then
+      selected-object
+      get-msecs d# 400 +  to blink-time
+   then
+;
+
+: highlight  ( xt color -- )
+   to blink-color
+   to selected-object
+   get-msecs to blink-time
+   0 to blink-state
+   idle
+;
+: message-off  ( -- )  d# 2  d# 27  at-xy  kill-line  ;
+: message  ( adr len -- )  cursor-off  message-off  red-letters  type  black-letters  ;
+
+: performed  ( -- )
+   -1 to blink-state
+   message-off
+   set-default-color
+   selected-object
+   cr
+;
+
+: connect-scanner  ( -- )
+   basic-layout
+   " Connect USB barcode scanner to continue.." message
+   ['] scanner green-888 highlight
+;
+
+: connect-usb-key  ( -- )
+   basic-layout
+   " Connect USB stick to continue.." message
+   ['] usb-key green-888 highlight
+;
+
+: connect-usb-ethernet  ( -- )
+   basic-layout
+   " Connect USB Ethernet to continue.." message
+   ['] usb-ethernet green-888 highlight
+;
+
+: connect-headphones  ( -- )
+   draw-top
+   " Connect headphones to continue.." message
+   ['] headphones-top h# 00e000  highlight  \ Green like headphone jack
+;
+: disconnect-headphones  ( -- )
+   draw-top
+   " Disconnect headphones to continue.." message
+   ['] headphones-top red-888 highlight
+;
+: connect-microphone  ( -- )
+   draw-top
+   " Connect microphone to continue.." message
+   ['] mic-top h# ff80c0 highlight \ Close enough to the pink of the mic jack
+;
+: disconnect-microphone  ( -- )
+   draw-top
+   " Disconnect microphone to continue.." message
+   ['] mic-top red-888 highlight
+;
+: mic+phones-top  ( -- )  mic-top headphones-top  ;
+: connect-loopback  ( -- )
+   draw-top
+   " Connect loopback cable to continue.." message
+   ['] mic+phones-top green-888 highlight
+;
+: disconnect-loopback  ( -- )
+   draw-top
+   " Disconnect loopback cable to continue.." message
+   ['] mic+phones-top red-888 highlight
+;
+
+: connect-int-sd  ( -- )
+   draw-board
+   " Connect internal SD card to continue.." message
+   ['] int-sd-card green-888 highlight
+;
+: connect-ext-sd  ( -- )
+   draw-top
+   " Connect external SD card to continue.." message
+   ['] ext-sd-card-top green-888 highlight
+;
+
+: disconnect-int-sd  ( -- )
+   draw-board
+   " Disconnect internal SD card to continue.." message
+   ['] int-sd-card red-888 highlight
+;
+: disconnect-ext-sd  ( -- )
+   draw-top
+   " Disonnect external SD card to continue.." message
+   ['] ext-sd-card-top red-888 highlight
+;
+
+: open  ( -- ok )  true  ;
+: close  ( -- )  ;
+
+end-support-package
+0 value instructions-ih
+
+: ($instructions)  ( name$ -- )
+   instructions-ih 0=  if
+      " "  " test-instructions" $open-package to instructions-ih
+   then
+   instructions-ih $call-method
+;
+' ($instructions) to $instructions
+
+: (instructions-idle)  ( -- )  " idle" $instructions  ;
+' (instructions-idle) to instructions-idle
+
+: (instructions-done)  ( -- )  " performed" $instructions  ;
+' (instructions-done) to instructions-done
+
+: diag-mode  ( -- )  true to diag-switch?  ;
+
+hex
+
+\ LICENSE_BEGIN
+\ Copyright (c) 2010 FirmWorks
+\
+\ Permission is hereby granted, free of charge, to any person obtaining
+\ a copy of this software and associated documentation files (the
+\ "Software"), to deal in the Software without restriction, including
+\ without limitation the rights to use, copy, modify, merge, publish,
+\ distribute, sublicense, and/or sell copies of the Software, and to
+\ permit persons to whom the Software is furnished to do so, subject to
+\ the following conditions:
+\
+\ The above copyright notice and this permission notice shall be
+\ included in all copies or substantial portions of the Software.
+\
+\ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+\ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+\ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+\ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+\ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+\ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+\ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+\
+\ LICENSE_END



More information about the openfirmware mailing list