<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-6222086929913602205</id><updated>2011-10-10T21:13:14.129-07:00</updated><category term='IA64'/><category term='OpenVMS distribution pictures Netscape Enterprise Server'/><category term='instructables seven segment charlieplexing maxim'/><category term='ADSL connection monitor monitoring gnuplot bash cron'/><category term='Debian'/><category term='DIGITAL Compaq HP Alpha Powered Logos'/><category term='OpenVMS Digital Unix OSF1 Linux Home Networking'/><category term='JRE'/><category term='ZX6000'/><category term='openvms vnc remote cde xwindow linux suse'/><category term='VAX VAX/VMS Alpha OpenVMS Volume Shadowing System Disk RAID RAID-1'/><category term='netbeans 6.5'/><category term='Itanium'/><category term='Java 1.6.0'/><category term='Java'/><category term='netboot netbsd 5.0 vax dhcp configuration mop'/><category term='create video dvd linux command line cli automatic ubuntu suse opensuse'/><category term='Transcoding AVCHD Linux DVD mpg mpeg command line panasonic HDC-HS300 ubuntu suse opensuse'/><category term='Epson PX-8 Serial RS/232 RS232 Cable PC DB9 Mini DIN 8'/><category term='Sun'/><category term='DEC Meet UK North West Autumn 2009'/><category term='Update 12'/><category term='vax macro syntax highlighter alex gorbatchev'/><category term='retrochallenge 2009 vax macro macro-32 fractals allin1 cafepress'/><category term='Java. JDK'/><category term='VAX APL LK201 LK201-EC VT320 HOOLEON KEYBOARD STICKERS'/><category term='Java 1.6'/><category term='cufon javascript apl embedded font'/><category term='java swing mirrorbow remote control lcd application'/><category term='power consumption computer electrical equipment'/><category term='HP LK464 XModmap OpenVMS Keyboard Map Ubuntu Linux'/><category term='Java 6'/><category term='Volvo XC90 Towbar Fitting Tips'/><title type='text'>Lakeland Developer</title><subtitle type='html'>A collection of notes about things that interest me, projects I'm working on and about being a developer.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://lakesdev.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://lakesdev.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Mark Wickens</name><uri>http://www.blogger.com/profile/09254729882677406339</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_Uo-3VIq5czQ/SJ4Nk-iSlqI/AAAAAAAAAAU/3x0G72EISl8/s1600-R/profile-photo.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>28</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6222086929913602205.post-6722695586050357492</id><published>2011-03-01T23:25:00.000-08:00</published><updated>2011-03-01T23:28:02.565-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='HP LK464 XModmap OpenVMS Keyboard Map Ubuntu Linux'/><title type='text'>HP LK464 XModmap OpenVMS Keyboard Map for Ubuntu Linux</title><content type='html'>Save the following entries to a file, for example .xmodmap-lk464, then run&lt;br /&gt;&lt;br /&gt;$ xmodmap .xmodmap-lk464&lt;br /&gt;&lt;br /&gt;File contents:&lt;br /&gt;&lt;br /&gt;keycode 9=grave asciitilde&lt;br /&gt;keycode 49 = less greater&lt;br /&gt;keycode 199 = KP_F1&lt;br /&gt;keycode 200 = KP_F2&lt;br /&gt;keycode 201 = KP_F3&lt;br /&gt;keycode 202 = KP_F4&lt;br /&gt;keycode 110 = Find&lt;br /&gt;keycode 115 = Select&lt;br /&gt;keycode 191 = F13&lt;br /&gt;keycode 192 = F14&lt;br /&gt;keycode 142 = F16&lt;br /&gt;keycode 195 = F17&lt;br /&gt;keycode 196 = F18&lt;br /&gt;keycode 197 = F19&lt;br /&gt;keycode 198 = F20&lt;br /&gt;keycode 108 = Alt_R&lt;br /&gt;keycode 90 = KP_0&lt;br /&gt;keycode 87 = KP_1&lt;br /&gt;keycode 88 = KP_2&lt;br /&gt;keycode 89 = KP_3&lt;br /&gt;keycode 83 = KP_4&lt;br /&gt;keycode 84 = KP_5&lt;br /&gt;keycode 85 = KP_6&lt;br /&gt;keycode 79 = KP_7&lt;br /&gt;keycode 80 = KP_8&lt;br /&gt;keycode 81 = KP_9&lt;br /&gt;keycode 91 = KP_Decimal&lt;br /&gt;keycode 129 = KP_Separator&lt;br /&gt;keycode 22 = Delete&lt;br /&gt;keycode 119 = 0x1000FF00&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6222086929913602205-6722695586050357492?l=lakesdev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lakesdev.blogspot.com/feeds/6722695586050357492/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6222086929913602205&amp;postID=6722695586050357492' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/6722695586050357492'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/6722695586050357492'/><link rel='alternate' type='text/html' href='http://lakesdev.blogspot.com/2011/03/g.html' title='HP LK464 XModmap OpenVMS Keyboard Map for Ubuntu Linux'/><author><name>Mark Wickens</name><uri>http://www.blogger.com/profile/09254729882677406339</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_Uo-3VIq5czQ/SJ4Nk-iSlqI/AAAAAAAAAAU/3x0G72EISl8/s1600-R/profile-photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6222086929913602205.post-2281818812523326766</id><published>2010-08-13T15:02:00.001-07:00</published><updated>2010-08-13T15:19:12.908-07:00</updated><title type='text'>Successful install of OpenBSD 4.7 on a SPARCbook 3</title><content type='html'>Here is the proof:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;ZS is initialized                                                         &lt;br /&gt;OBP CRC check: OK                                                         &lt;br /&gt;Clearing TLB Entries                                                      &lt;br /&gt;Initializing Tsunami Cache                                                &lt;br /&gt;Probing for RAM @ 0x06000000                                              &lt;br /&gt;Probing for RAM @ 0x04000000                                              &lt;br /&gt;Probing for RAM @ 0x02000000                                              &lt;br /&gt;Top RAM bank @ 0x02000000                                                 &lt;br /&gt;Available Memory 0x04000000                                               &lt;br /&gt;Context Table allocated, Available Memory 0x03ffc000                      &lt;br /&gt;RAMsize allocated, Available Memory 0x03fec000                            &lt;br /&gt;Level 1 Table allocated, Available Memory 0x03febc00                      &lt;br /&gt;Mapping RAM @ 0xffef0000                                                  &lt;br /&gt;RAMbase --&gt; RAMsize mapped, Available Memory 0x03feba00                         &lt;br /&gt;Mapping ROM @ 0xffd00000                                                        &lt;br /&gt;ROMbase --&gt; ROMsize mapped, Available Memory 0x03feb800                         &lt;br /&gt;Mapping ROM @ 0x00000000                                                        &lt;br /&gt;0 --&gt; ROMsize mapped, Available Memory 0x03feb500                               &lt;br /&gt;Available Memory 0x03feb000                                                     &lt;br /&gt;                                                                                &lt;br /&gt;ttya initialized                                                                &lt;br /&gt;Probing Memory Bank #0 32 Megabytes                                             &lt;br /&gt;Probing Memory Bank #1 32 Megabytes                                             &lt;br /&gt;Probing Memory Bank #2 Nothing there                                            &lt;br /&gt;Probing Memory Bank #3 Nothing there                                            &lt;br /&gt;Incorrect configuration checksum;                                               &lt;br /&gt;Setting NVRAM parameters to default values.                                     &lt;br /&gt;Setting diag-switch? NVRAM parameter to true                                    &lt;br /&gt;Probing /iommu@0,10000000/sbus@0,10001000 at 0,0  p9000                         &lt;br /&gt;Probing /iommu@0,10000000/sbus@0,10001000 at 4,0  espdma esp sd st SUNW,bpp led &lt;br /&gt;Probing /iommu@0,10000000/sbus@0,10001000 at 1,0  ts102                         &lt;br /&gt;Probing /iommu@0,10000000/sbus@0,10001000 at 2,0  SUNW,DBRIs3                   &lt;br /&gt;Probing /iommu@0,10000000/sbus@0,10001000 at 3,0  Nothing there                 &lt;br /&gt;                                                                                &lt;br /&gt;ZS is initialized                                                               &lt;br /&gt;OBP CRC check: OK                                                               &lt;br /&gt;Clearing TLB Entries                                                            &lt;br /&gt;Initializing Tsunami Cache                                                      &lt;br /&gt;Probing for RAM @ 0x06000000                                                    &lt;br /&gt;Probing for RAM @ 0x04000000                                                    &lt;br /&gt;Probing for RAM @ 0x02000000                                                    &lt;br /&gt;Top RAM bank @ 0x02000000                                                       &lt;br /&gt;Available Memory 0x04000000                                                     &lt;br /&gt;Context Table allocated, Available Memory 0x03ffc000                            &lt;br /&gt;RAMsize allocated, Available Memory 0x03fec000                                 &lt;br /&gt;Level 1 Table allocated, Available Memory 0x03febc00                            &lt;br /&gt;Mapping RAM @ 0xffef0000                                                        &lt;br /&gt;RAMbase --&gt; RAMsize mapped, Available Memory 0x03feba00                         &lt;br /&gt;Mapping ROM @ 0xffd00000                                                        &lt;br /&gt;ROMbase --&gt; ROMsize mapped, Available Memory 0x03feb800                         &lt;br /&gt;Mapping ROM @ 0x00000000                                                        &lt;br /&gt;0 --&gt; ROMsize mapped, Available Memory 0x03feb500                               &lt;br /&gt;Available Memory 0x03feb000                                                     &lt;br /&gt;                                                                                &lt;br /&gt;ttya initialized                                                                &lt;br /&gt;Probing Memory Bank #0 32 Megabytes                                             &lt;br /&gt;Probing Memory Bank #1 32 Megabytes                                             &lt;br /&gt;Probing Memory Bank #2 Nothing there                                            &lt;br /&gt;Probing Memory Bank #3 Nothing there                                            &lt;br /&gt;Probing /iommu@0,10000000/sbus@0,10001000 at 0,0  p9000                         &lt;br /&gt;Probing /iommu@0,10000000/sbus@0,10001000 at 4,0  espdma esp sd st SUNW,bpp led &lt;br /&gt;Probing /iommu@0,10000000/sbus@0,10001000 at 1,0  ts102                         &lt;br /&gt;Probing /iommu@0,10000000/sbus@0,10001000 at 2,0  SUNW,DBRIs3                   &lt;br /&gt;Probing /iommu@0,10000000/sbus@0,10001000 at 3,0  Nothing there                 &lt;br /&gt;Tadpole S3 SPARCbook, Keyboard Present                                          &lt;br /&gt;ROM Rev. 2.9 V1.00                                                              &lt;br /&gt;64 MB memory installed, Serial #10690881.                                       &lt;br /&gt;Ethernet address 0:0:83:a3:21:41, Host ID: 80a32141.                            &lt;br /&gt;                                                                                 &lt;br /&gt;Spinning discs down .. done                                                     &lt;br /&gt;Boot device: /iommu/sbus/ledma@4,8400010/le@4,8c00000   File and args:          &lt;br /&gt;Automatic network cable selection succeeded : Using AUI Ethernet Interface      &lt;br /&gt;                                                                                &lt;br /&gt;Type  help  for more information                                                &lt;br /&gt;ok boot /iommu/sbus/espdma@4,8400000/esp/sd@5,0 bsd                             &lt;br /&gt;Boot device: /iommu/sbus/espdma@4,8400000/esp/sd@5,0   File and args: bsd       &lt;br /&gt;&gt;&gt; OpenBSD BOOT 2.3                                                             &lt;br /&gt;Booting bsd @ 0x4000                                                            &lt;br /&gt;3145804+437948 [52+149536+131969]                                               &lt;br /&gt;[ using 281932 bytes of bsd ELF symbol table ]                                  &lt;br /&gt;console is ttya                                                                 &lt;br /&gt;Copyright (c) 1982, 1986, 1989, 1991, 1993                                      &lt;br /&gt;        The Regents of the University of California.  All rights reserved.      &lt;br /&gt;Copyright (c) 1995-2010 OpenBSD. All rights reserved.  http://www.OpenBSD.org   &lt;br /&gt;                                                                                &lt;br /&gt;OpenBSD 4.7 (GENERIC) #152: Fri Mar 19 02:33:48 MDT 2010                        &lt;br /&gt;    deraadt@sparc.openbsd.org:/usr/src/sys/arch/sparc/compile/GENERIC           &lt;br /&gt;real mem = 66699264 (63MB)                                                &lt;br /&gt;avail mem = 59355136 (56MB)                                                     &lt;br /&gt;mainbus0 at root: Tadpole_S3                                                    &lt;br /&gt;cpu0 at mainbus0: TMS390S10 @ 50 MHz, on-chip FPU                               &lt;br /&gt;cpu0: physical 4K instruction (32 b/l), 2K data (16 b/l) cache enabled          &lt;br /&gt;obio0 at mainbus0                                                               &lt;br /&gt;clock0 at obio0 addr 0x71200000: mk48t08 (eeprom)                               &lt;br /&gt;timer0 at obio0 addr 0x71d00000 delay constant 23                               &lt;br /&gt;zs0 at obio0 addr 0x71100000 pri 12, softpri 6                                  &lt;br /&gt;zstty0 at zs0 channel 0: console                                                &lt;br /&gt;zstty1 at zs0 channel 1                                                         &lt;br /&gt;zs1 at obio0 addr 0x71000000 pri 12, softpri 6                                  &lt;br /&gt;zskbd0 at zs1 channel 0: keyboard, type 5, layout 0x2e                          &lt;br /&gt;wskbd0 at zskbd0 mux 1                                                          &lt;br /&gt;zsms0 at zs1 channel 1                                                          &lt;br /&gt;wsmouse0 at zsms0 mux 0                                                         &lt;br /&gt;slavioconfig at obio0 addr 0x71800000 not configured                            &lt;br /&gt;auxreg0 at obio0 addr 0x71900000                                                &lt;br /&gt;auxreg1 at obio0 addr 0x71910000                                                &lt;br /&gt;tctrl0 at obio0 addr 0x42000020 pri 11                                          &lt;br /&gt;tctrl0: main power available, lid down                                   &lt;br /&gt;clk-ctrl at obio0 addr 0x713c0000 not configured                                &lt;br /&gt;btcham0 at obio0 addr 0x71380000: id 0x3a, revision 0xa0                        &lt;br /&gt;com0 at obio0 addr 0x713a0000 pri 13: ns16550a, 16 byte fifo                    &lt;br /&gt;com0: probed fifo depth: 0 bytes                                                &lt;br /&gt;iommu0 at mainbus0 addr 0x10000000: version 0x1/0x4, page-size 4096, range 64MB &lt;br /&gt;sbus0 at iommu0: clock = 25 MHz                                                 &lt;br /&gt;"p9000" at sbus0 class display slot 0 offset 0x100000 not configured            &lt;br /&gt;dma0 at sbus0 slot 4 offset 0x8400000: rev 2                                    &lt;br /&gt;esp0 at dma0 offset 0x8800000 pri 4: ESP200, 40MHz                              &lt;br /&gt;scsibus0 at esp0: 8 targets, initiator 7                                        &lt;br /&gt;probe(esp0:3:0): max sync rate 10.00MB/s                                        &lt;br /&gt;sd0 at scsibus0 targ 3 lun 0: &lt;IBM, DVAS-2810, S120&gt; SCSI2 0/direct fixed       &lt;br /&gt;sd0: drive offline                                                              &lt;br /&gt;sd1 at scsibus0 targ 5 lun 0: &lt;QUANTUM, FIREBALL_TM3200S, 300X&gt; SCSI2 0/direct d&lt;br /&gt;sd1: 3067MB, 512 bytes/sec, 6281856 sec total                                   &lt;br /&gt;cd0 at scsibus0 targ 6 lun 0: &lt;PLEXTOR, CD-ROM PX-40TS, 1.12&gt; SCSI2 5/cdrom reme&lt;br /&gt;bpp0 at sbus0 slot 4 offset 0xc800000: DMA2  &lt;br /&gt;ledma0 at sbus0 slot 4 offset 0x8400010: rev 2                                  &lt;br /&gt;le0 at ledma0 offset 0x8c00000 pri 6: address 00:00:83:a3:21:41                 &lt;br /&gt;le0: 16 receive buffers, 4 transmit buffers                                     &lt;br /&gt;tslot0 at sbus0 slot 1 offset 0x2000000 pri 11: 2 slots                         &lt;br /&gt;pcmcia0 at tslot0 socket 0                                                      &lt;br /&gt;pcmcia1 at tslot0 socket 1                                                      &lt;br /&gt;"SUNW,DBRIs3" at sbus0 class ISDN slot 2 offset 0x40 not configured             &lt;br /&gt;vscsi0 at root                                                                  &lt;br /&gt;scsibus1 at vscsi0: 256 targets                                                 &lt;br /&gt;softraid0 at root                                                               &lt;br /&gt;bootpath: /iommu@0,10000000/sbus@0,10001000/espdma@4,8400000/esp@4,8800000/sd@50&lt;br /&gt;root on sd1a swap on sd1b dump on sd1b                                          &lt;br /&gt;WARNING: / was not properly unmounted                                           &lt;br /&gt;Automatic boot in progress: starting file system checks.                        &lt;br /&gt;/dev/rsd1a: 2695 files, 32121 used, 810934 free (78 frags, 101357 blocks, 0.0% )&lt;br /&gt;/dev/rsd1a: MARKING FILE SYSTEM CLEAN                                           &lt;br /&gt;/dev/rsd1e: 9 files, 8 used, 164293 free (21 frags, 20534 blocks, 0.0% fragment)&lt;br /&gt;/dev/rsd1e: MARKING FILE SYSTEM CLEAN                                           &lt;br /&gt;/dev/rsd1d: 22231 files, 288694 used, 569387 free (1787 frags, 70950 blocks, 0.)&lt;br /&gt;/dev/rsd1d: MARKING FILE SYSTEM CLEAN                                           &lt;br /&gt;setting tty flags                                                               &lt;br /&gt;pf enabled                                                                       &lt;br /&gt;starting network                                                                &lt;br /&gt;starting system logger                                                          &lt;br /&gt;starting initial daemons: ntpd.                                                 &lt;br /&gt;savecore: no core dump                                                          &lt;br /&gt;checking quotas: done.                                                          &lt;br /&gt;building ps databases: kvm dev.                                                 &lt;br /&gt;clearing /tmp                                                                   &lt;br /&gt;starting pre-securelevel daemons:.                                              &lt;br /&gt;setting kernel security level: kern.securelevel: 0 -&gt; 1                         &lt;br /&gt;creating runtime link editor directory cache.                                   &lt;br /&gt;preserving editor files.                                                        &lt;br /&gt;ssh-keygen: generating new DSA host key... &lt;br /&gt;ssh-keygen: generating new RSA host key... done. &lt;br /&gt;ssh-keygen: generating new RSA1 host key... done.                               &lt;br /&gt;starting network daemons: sshd sendmail inetd.                                  &lt;br /&gt;starting local daemons:.                                                        &lt;br /&gt;standard daemons: cron.                                                         &lt;br /&gt;Thu Dec 31 12:09:33 GMT 1987                                                    &lt;br /&gt;                                                                                &lt;br /&gt;OpenBSD/sparc (tadpole.hecnet.eu) (console)                                     &lt;br /&gt;                                                                                &lt;br /&gt;login:                                                                                            &lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6222086929913602205-2281818812523326766?l=lakesdev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lakesdev.blogspot.com/feeds/2281818812523326766/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6222086929913602205&amp;postID=2281818812523326766' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/2281818812523326766'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/2281818812523326766'/><link rel='alternate' type='text/html' href='http://lakesdev.blogspot.com/2010/08/successful-install-of-openbsd-47-on.html' title='Successful install of OpenBSD 4.7 on a SPARCbook 3'/><author><name>Mark Wickens</name><uri>http://www.blogger.com/profile/09254729882677406339</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_Uo-3VIq5czQ/SJ4Nk-iSlqI/AAAAAAAAAAU/3x0G72EISl8/s1600-R/profile-photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6222086929913602205.post-4047058342212317574</id><published>2010-08-05T12:58:00.000-07:00</published><updated>2010-08-05T13:13:43.499-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Epson PX-8 Serial RS/232 RS232 Cable PC DB9 Mini DIN 8'/><title type='text'>Epson Geneva PX-8 Portable Computer Serial RS/232 Cable</title><content type='html'>Thought it was worth posting this as there doesn't appear to be a reference for how to wire up a serial cable or RS/232 cable for the Epson PX-8 Mini DIN-8 to a PC DB9 female connector.&lt;br /&gt;&lt;table border="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;PX-8&lt;/th&gt;&lt;th&gt;PC-DB9&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;5&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;2&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;3&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;4,5&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;6&lt;/td&gt;&lt;td&gt;4&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;7&lt;/td&gt;&lt;td&gt;6&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;8&lt;/td&gt;&lt;td&gt;7,8&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;/tbody&gt;&lt;br /&gt;&lt;/table&gt;If the cable you're using contains a CG/E Common Ground wire you can connect this to the shell of the DB9. It's best to scratch the shell just above the connections then solder the wire directly onto the shell.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6222086929913602205-4047058342212317574?l=lakesdev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lakesdev.blogspot.com/feeds/4047058342212317574/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6222086929913602205&amp;postID=4047058342212317574' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/4047058342212317574'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/4047058342212317574'/><link rel='alternate' type='text/html' href='http://lakesdev.blogspot.com/2010/08/epson-geneva-px-8-portable-computer.html' title='Epson Geneva PX-8 Portable Computer Serial RS/232 Cable'/><author><name>Mark Wickens</name><uri>http://www.blogger.com/profile/09254729882677406339</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_Uo-3VIq5czQ/SJ4Nk-iSlqI/AAAAAAAAAAU/3x0G72EISl8/s1600-R/profile-photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6222086929913602205.post-2551360791769829992</id><published>2009-11-21T11:53:00.000-08:00</published><updated>2009-11-21T11:55:09.568-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='DEC Meet UK North West Autumn 2009'/><title type='text'>DEC Legacy Event, April 17th &amp; 18th 2010, Windermere, UK</title><content type='html'>&lt;p&gt;I am organising a DEC Legacy Event on the 17th &amp;amp; 18th April 2010 in Windermere, UK.&lt;/p&gt; &lt;p&gt;The event's purpose is to bring together people with an interest in the company Digital Equipment Corporation and their legacy of hardware, software and ethos. I am hoping to attract people willing to exhibit their DEC computer hardware and software at the event. There will be tables setup around the main hall on which equipment can be presented.&lt;/p&gt; &lt;p&gt;Whilst the format for the event is still fluid, I envisage that it will involve a mixture of the following:&lt;/p&gt; &lt;ul&gt;&lt;li&gt;Walkabout sessions giving the opportunity to talk to owners of DEC hardware and to 'have a play'&lt;/li&gt;&lt;li&gt;Demonstrations of equipment or software by their owners (languages, applications, games etc)&lt;/li&gt;&lt;li&gt;Sit down presentations about specific topics of interest&lt;/li&gt;&lt;li&gt;A programming competition (if there is enough interest)&lt;/li&gt;&lt;li&gt;Buy &amp;amp; sell hardware, software, relevant items&lt;/li&gt;&lt;li&gt;Raffle (with suitably themed items) on behalf of the National Museum of Computing&lt;/li&gt;&lt;/ul&gt;For more information please visit the webpage at: &lt;a href="http://declegacy.org.uk/"&gt;http://declegacy.org.uk&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6222086929913602205-2551360791769829992?l=lakesdev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lakesdev.blogspot.com/feeds/2551360791769829992/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6222086929913602205&amp;postID=2551360791769829992' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/2551360791769829992'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/2551360791769829992'/><link rel='alternate' type='text/html' href='http://lakesdev.blogspot.com/2009/11/dec-legacy-event-april-17th-18th-2010.html' title='DEC Legacy Event, April 17th &amp; 18th 2010, Windermere, UK'/><author><name>Mark Wickens</name><uri>http://www.blogger.com/profile/09254729882677406339</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_Uo-3VIq5czQ/SJ4Nk-iSlqI/AAAAAAAAAAU/3x0G72EISl8/s1600-R/profile-photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6222086929913602205.post-2553643378241914720</id><published>2009-10-03T14:02:00.000-07:00</published><updated>2009-10-03T16:29:43.214-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OpenVMS Digital Unix OSF1 Linux Home Networking'/><title type='text'>The Home Network</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Uo-3VIq5czQ/SsfeYI9pAYI/AAAAAAAAADo/H5j4WVzCAqc/s1600-h/homenet.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 349px; height: 400px;" src="http://3.bp.blogspot.com/_Uo-3VIq5czQ/SsfeYI9pAYI/AAAAAAAAADo/H5j4WVzCAqc/s400/homenet.png" alt="" id="BLOGGER_PHOTO_ID_5388519985476338050" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;This is when you know it's time to 'consolidate'.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6222086929913602205-2553643378241914720?l=lakesdev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lakesdev.blogspot.com/feeds/2553643378241914720/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6222086929913602205&amp;postID=2553643378241914720' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/2553643378241914720'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/2553643378241914720'/><link rel='alternate' type='text/html' href='http://lakesdev.blogspot.com/2009/10/home-network.html' title='The Home Network'/><author><name>Mark Wickens</name><uri>http://www.blogger.com/profile/09254729882677406339</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_Uo-3VIq5czQ/SJ4Nk-iSlqI/AAAAAAAAAAU/3x0G72EISl8/s1600-R/profile-photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_Uo-3VIq5czQ/SsfeYI9pAYI/AAAAAAAAADo/H5j4WVzCAqc/s72-c/homenet.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6222086929913602205.post-1628591147114559944</id><published>2009-09-23T11:58:00.000-07:00</published><updated>2009-09-23T13:03:01.350-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='VAX VAX/VMS Alpha OpenVMS Volume Shadowing System Disk RAID RAID-1'/><title type='text'>Simple Volume Shadowing of the System Disk under OpenVMS</title><content type='html'>I am not an OpenVMS expert. I had to read the manual a couple of times and consult with the &lt;a href="http://www.hoffmanlabs.com/"&gt;Hoff&lt;/a&gt; to get the commands sorted to do this, so hopefully it will save you some time.&lt;br /&gt;&lt;br /&gt;Volume Shadowing on OpenVMS at it's very simplest can be used to provide RAID-1 mirroring using two or more locally attached hard drives. In my case I have a single hard drive (&lt;span style="font-style: italic;"&gt;DKA300:&lt;/span&gt;) which acts as my system and data disk. I wanted a complete hot mirror of this drive in case of hardware failure. I have used two identical drives to do this.&lt;br /&gt;&lt;br /&gt;If you are an OpenVMS hobbyist you will have the license required for volume shadowing. You can easily check:&lt;br /&gt;&lt;pre class="brush:bash"&gt;&lt;br /&gt;$ SHOW LICENSE VOLSHAD&lt;br /&gt;Active licenses on node ORAC:&lt;br /&gt;&lt;br /&gt;------- Product ID --------    ---- Rating ----- -- Version --&lt;br /&gt;Product            Producer    Units Avail Activ Version Release    Termination&lt;br /&gt;VOLSHAD            DEC             0  0     100    0.0  (none)      16-OCT-2009&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;You then need to setup the system parameters so that when you reboot OpenVMS your current system disk is included in a shadow set to which another drive (or drives) can then be added. Edit the file &lt;span style="font-weight: bold;"&gt;SYS$SYSTEM:MODPARAMS.DAT&lt;/span&gt; and add the following lines:&lt;br /&gt;&lt;pre class="brush:bash"&gt;&lt;br /&gt;ALLOCLASS=100&lt;br /&gt;SHADOWING=2&lt;br /&gt;SHADOW_SYS_DISK=1&lt;br /&gt;SHADOW_SYS_UNIT=0&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;A sensible value for &lt;span style="font-weight: bold;"&gt;ALLOCLASS&lt;/span&gt; is &lt;span style="font-style: italic;"&gt;100&lt;/span&gt;, but it can be anything from 1 to 255. If you have previously added the box to a cluster this parameter may already be defined. &lt;span style="font-weight: bold;"&gt;SHADOWING&lt;/span&gt; must be &lt;span style="font-style: italic;"&gt;2&lt;/span&gt; to enable shadowing. &lt;span style="font-weight: bold;"&gt;SHADOW_SYS_DISK&lt;/span&gt; must be &lt;span style="font-style: italic;"&gt;1&lt;/span&gt; to enable shadowing for the system disk, and &lt;span style="font-weight: bold;"&gt;SHADOW_SYS_UNIT&lt;/span&gt; defines the virtual unit number which is appended to the virtual drive name &lt;span style="font-weight: bold;"&gt;DUAx&lt;/span&gt;:&lt;br /&gt;&lt;br /&gt;You then need to run &lt;span style="font-weight: bold;"&gt;AUTOGEN&lt;/span&gt; to save these parameters. I used the following two commands:&lt;br /&gt;&lt;pre class="brush:bash"&gt;&lt;br /&gt;$ @SYS$UPDATE:AUTOGEN SAVPARAMS GENPARAMS&lt;br /&gt;$ @SYS$UPDATE:AUTOGEN GENPARAMS REBOOT&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;The second command may fail on errors, if this is the case and you are happy to proceed add the keyword &lt;span style="font-weight: bold;"&gt;FEEDBACK&lt;/span&gt; to the end.&lt;br /&gt;&lt;br /&gt;This will reboot the system and (hopefully) when it's started up you should see the virtual unit when you run the &lt;span style="font-weight: bold;"&gt;SHOW DEVICE&lt;/span&gt; command:&lt;br /&gt;&lt;pre class="brush:bash"&gt;&lt;br /&gt;$ show dev d&lt;br /&gt;&lt;br /&gt;Device                  Device           Error    Volume         Free  Trans Mnt&lt;br /&gt;Name                   Status           Count     Label        Blocks Count Cnt&lt;br /&gt;DSA0:                   Mounted              0  OVMSVAXSYS    16637880   337   1&lt;br /&gt;$100$DKA200:    (ORAC)  Online wrtlck        0&lt;br /&gt;$100$DKA300:    (ORAC)  ShadowSetMember      0  (member of DSA0:)&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;To add a new member to the volume set use the &lt;span style="font-weight: bold;"&gt;MOUNT&lt;/span&gt; command, like this:&lt;br /&gt;&lt;br /&gt;MOUNT/CONFIRM/SYSTEM &lt;span style="font-style: italic;"&gt;DSA0:&lt;/span&gt; /SHADOW=(&lt;span style="font-style: italic;"&gt;$100$DKA300&lt;/span&gt;,&lt;span style="font-style: italic;"&gt;$100$DKA400&lt;/span&gt;) OVMSVAXSYS&lt;br /&gt;&lt;br /&gt;This command specifies the existing system disk &lt;span style="font-style: italic;"&gt;$100$DKA300&lt;/span&gt; and the new disk &lt;span style="font-style: italic;"&gt;$100$DKA400&lt;/span&gt;. You will need to confirm that you want to overwrite the contents of the new drive. The command initiates a copy of the data on the system disk to the new drive. &lt;span style="font-weight: bold;"&gt;SHOW DEVICE&lt;/span&gt; will indicate the copy progress:&lt;br /&gt;&lt;pre class="brush:bash"&gt;&lt;br /&gt;$ show dev d&lt;br /&gt;&lt;br /&gt;Device                  Device           Error    Volume         Free  Trans Mnt&lt;br /&gt;Name                   Status           Count     Label        Blocks Count Cnt&lt;br /&gt;DSA0:                   Mounted              0  OVMSVAXSYS    16637880   337   1&lt;br /&gt;$100$DKA200:    (ORAC)  Online wrtlck        0&lt;br /&gt;$100$DKA300:    (ORAC)  ShadowSetMember      0  (member of DSA0:)&lt;br /&gt;$100$DKA400:    (ORAC)  ShadowCopying        0  (copy trgt DSA0:  43% copied)&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;After the copy is complete the two shadow set members will contain identical data, so that if one of the drives should fail it can be replaced without losing any data.&lt;br /&gt;&lt;br /&gt;I encourage you to consult the &lt;a href="http://h71000.www7.hp.com/doc/73final/5423/5423pro.html"&gt;Volume Shadowing for OpenVMS manual&lt;/a&gt; for more information.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6222086929913602205-1628591147114559944?l=lakesdev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lakesdev.blogspot.com/feeds/1628591147114559944/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6222086929913602205&amp;postID=1628591147114559944' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/1628591147114559944'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/1628591147114559944'/><link rel='alternate' type='text/html' href='http://lakesdev.blogspot.com/2009/09/volume-shadowing-system-disk-on-vax.html' title='Simple Volume Shadowing of the System Disk under OpenVMS'/><author><name>Mark Wickens</name><uri>http://www.blogger.com/profile/09254729882677406339</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_Uo-3VIq5czQ/SJ4Nk-iSlqI/AAAAAAAAAAU/3x0G72EISl8/s1600-R/profile-photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6222086929913602205.post-6391482607193579563</id><published>2009-09-06T03:06:00.001-07:00</published><updated>2009-09-06T03:31:22.718-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='VAX APL LK201 LK201-EC VT320 HOOLEON KEYBOARD STICKERS'/><title type='text'>VAX APL LK201 Keyboard</title><content type='html'>From the &lt;a href="http://www.softwarepreservation.org/projects/apl/book/199106_VAX%20APL%20Users%20Guide_AA-P142E-TE.pdf/view"&gt;VAX APL Users Guide&lt;/a&gt; page 1-3 comes an image of the LK201-EC variant with APL keycaps:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Uo-3VIq5czQ/SqONDGEG-JI/AAAAAAAAACY/l91kR1ol6hg/s1600-h/lk201-ec.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 139px;" src="http://4.bp.blogspot.com/_Uo-3VIq5czQ/SqONDGEG-JI/AAAAAAAAACY/l91kR1ol6hg/s400/lk201-ec.jpg" alt="" id="BLOGGER_PHOTO_ID_5378297464317474962" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;With this image as a reference I designed a set of replacement keycaps for an existing LK201 using the Open Office Drawing tool (&lt;a href="http://www.wickensonline.co.uk/images/apl-dec-overlay-v6.odg"&gt;source file&lt;/a&gt;) and the excellent Simpl APL Unicode Font:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Uo-3VIq5czQ/SqONY7bmipI/AAAAAAAAACg/XM5C8CSfz58/s1600-h/apl-dec-overlay-v6.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 126px;" src="http://3.bp.blogspot.com/_Uo-3VIq5czQ/SqONY7bmipI/AAAAAAAAACg/XM5C8CSfz58/s400/apl-dec-overlay-v6.png" alt="" id="BLOGGER_PHOTO_ID_5378297839420344978" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;These were printed out using a laser printer on the self-adhesive transparency paper provided as part of the &lt;a href="http://hooleon.com/miva/merchant.mvc?Screen=PROD&amp;amp;Product_Code=OV-0576&amp;amp;Category_Code=A-KBMYO&amp;amp;Product_Count=2"&gt;Hooleon Keyboard Sticker Label Making Kit&lt;/a&gt;. These were then cut out using a scalpel and mounted on backing stickers which are opaque. A final top sticker adds a textured finish and protects the printed label.This is the resulting keyboard:&lt;br /&gt;&lt;br /&gt;Left Hand Side:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Uo-3VIq5czQ/SqOOAIJZOSI/AAAAAAAAACo/r79rgtQ6dDk/s1600-h/vax-lk201-apl-lhs.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 267px;" src="http://3.bp.blogspot.com/_Uo-3VIq5czQ/SqOOAIJZOSI/AAAAAAAAACo/r79rgtQ6dDk/s400/vax-lk201-apl-lhs.jpg" alt="" id="BLOGGER_PHOTO_ID_5378298512848533794" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Right Hand Side:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Uo-3VIq5czQ/SqOOIc6PrKI/AAAAAAAAACw/j-gwT-azaHk/s1600-h/vax-lk201-apl-rhs.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 267px;" src="http://2.bp.blogspot.com/_Uo-3VIq5czQ/SqOOIc6PrKI/AAAAAAAAACw/j-gwT-azaHk/s400/vax-lk201-apl-rhs.jpg" alt="" id="BLOGGER_PHOTO_ID_5378298655861091490" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;I've also uploaded a &lt;a href="http://www.youtube.com/watch?v=zqtWqmEmqEA"&gt;short video&lt;/a&gt; to YouTube demonstrating how you interact with VAX APL V4.0 using this keyboard together with a VT320 terminal.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6222086929913602205-6391482607193579563?l=lakesdev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lakesdev.blogspot.com/feeds/6391482607193579563/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6222086929913602205&amp;postID=6391482607193579563' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/6391482607193579563'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/6391482607193579563'/><link rel='alternate' type='text/html' href='http://lakesdev.blogspot.com/2009/09/vax-apl-lk201-keyboard.html' title='VAX APL LK201 Keyboard'/><author><name>Mark Wickens</name><uri>http://www.blogger.com/profile/09254729882677406339</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_Uo-3VIq5czQ/SJ4Nk-iSlqI/AAAAAAAAAAU/3x0G72EISl8/s1600-R/profile-photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_Uo-3VIq5czQ/SqONDGEG-JI/AAAAAAAAACY/l91kR1ol6hg/s72-c/lk201-ec.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6222086929913602205.post-2078116373952667005</id><published>2009-08-12T14:22:00.000-07:00</published><updated>2009-09-23T14:02:02.846-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cufon javascript apl embedded font'/><title type='text'>Embedding the SimPL APL font on a web page using Cufón</title><content type='html'>I came across &lt;a href="http://cufon.shoqolate.com/generate/"&gt;Cufón&lt;/a&gt; a while ago whilst browsing the excellent &lt;a href="http://net.tutsplus.com/"&gt;nettuts+&lt;/a&gt; website.&lt;br /&gt;&lt;br /&gt;Having started coding in &lt;a href="http://en.wikipedia.org/wiki/APL_%28programming_language%29"&gt;APL&lt;/a&gt; I was wondering about the best way to present developed code on my blog. One option is to use my java transcoding technique to load my &lt;a href="http://www.soliton.com/solutions-linux.html"&gt;Soliton Sharp APL&lt;/a&gt; code into &lt;a href="http://www.jedit.org"&gt;jEdit&lt;/a&gt; (my favourite editor) using my &lt;a href="http://www.wickensonline.co.uk/apl-transcoding.html"&gt;custom character set transcoder&lt;/a&gt; to convert the &lt;a href="http://www.wickensonline.co.uk/apl/aplcharset.png"&gt;custom eight-bit ASCII encoding&lt;/a&gt; used by Soliton into standard Unicode APL characters.&lt;br /&gt;&lt;br /&gt;Cufón allows you to embed any arbitrary truetype font or fonts into a webpage via javascript and then use the font directly within the html by replacing a standard html tag. You can either download the utility or use their website to process a truetype font located on your hard disk to generate a javascript file containing your selected truetype glyphs. The generated file in this example is &lt;a href="http://www.wickensonline.co.uk/styles/simpl_400.font.js"&gt;simpl_400.font.js&lt;/a&gt; (see code below).&lt;br /&gt;&lt;br /&gt;I chose the excellent free font created by Phil Chasney called &lt;a href="http://www.vector.org.uk/resource/simpl02.zip"&gt;SImPL&lt;/a&gt; to embed within this blog.&lt;br /&gt;&lt;br /&gt;The code required within the head tag of this page to embed the font is very simple:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;  &amp;lt;script src="http://www.wickensonline.co.uk/styles/cufon-yui.js" type="text/javascript"&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;  &amp;lt;script src="http://www.wickensonline.co.uk/styles/simpl_400.font.js" type="text/javascript"&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;  &amp;lt;script type="text/javascript"&amp;gt;&lt;br /&gt;   Cufon.replace('h1');&lt;br /&gt;  &amp;lt;/script&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;The results can be seen with the following APL characters above ASCII location 127 in the SOLITON-APL encoding:&lt;br /&gt;&lt;h1&gt;&lt;br /&gt;¨¯≤≥≠∨×⍪⌹∵⌿&lt;br /&gt;⍲¡€£¥¬⍱⌻⍂≡⌷¿&lt;br /&gt;⍺⊥∩⌊∊∇∆⍳∘⎕∣⊤○&lt;br /&gt;⍴⌈↓∪⍵⊃↑⊂⊢⍀⊣÷&lt;br /&gt;⌶⊖⍎⍝⍷⍫⍒⍋⍸⍤⍞⍕⍥&lt;br /&gt;⍟⍉⌽⍧←⍙→⋄&lt;br /&gt;&lt;/h1&gt;&lt;br /&gt;&lt;br /&gt;and an example of some APL code: &lt;br /&gt;&lt;h1&gt;&lt;br /&gt;      ∇mbrt1[⎕]∇&lt;br /&gt;[0]   z←mbrt1&lt;br /&gt;[1]   rrz←(0.1×⍳21)−1    ⍝ array from ¯1 to +1 stepsize 0.1&lt;br /&gt;[2]   iiz←(0.1×⍳21)−1    ⍝ array from ¯1 to +1 stepsize 0.1&lt;br /&gt;&lt;br /&gt;      &lt;br /&gt;      ∇cmplsq[⎕]∇&lt;br /&gt;[0]   z← cmplsq ⍵&lt;br /&gt;[1]   &lt;br /&gt;[2]   ⍝ Function: Complex Square&lt;br /&gt;[3]   ⍝ Perform a complex square of the argument ⍵, returning array r,i in z&lt;br /&gt;[4]   &lt;br /&gt;[5]   r←⍵[0]             ⍝ extract real part into r&lt;br /&gt;[6]   i←⍵[1]             ⍝ extract imaginary part into i&lt;br /&gt;[7]   rn←(r⋆2)−(i⋆2)     ⍝ real result&lt;br /&gt;[8]   in←r×i×2           ⍝ imaginary result&lt;br /&gt;[9]   z←rn,in            ⍝ z is array of real and imaginary results&lt;br /&gt;&lt;/h1&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6222086929913602205-2078116373952667005?l=lakesdev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lakesdev.blogspot.com/feeds/2078116373952667005/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6222086929913602205&amp;postID=2078116373952667005' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/2078116373952667005'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/2078116373952667005'/><link rel='alternate' type='text/html' href='http://lakesdev.blogspot.com/2009/08/embedding-simpl-apl-font-on-web-page.html' title='Embedding the SimPL APL font on a web page using Cufón'/><author><name>Mark Wickens</name><uri>http://www.blogger.com/profile/09254729882677406339</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_Uo-3VIq5czQ/SJ4Nk-iSlqI/AAAAAAAAAAU/3x0G72EISl8/s1600-R/profile-photo.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6222086929913602205.post-1508336641208222444</id><published>2009-08-08T01:26:00.001-07:00</published><updated>2009-08-08T01:32:27.641-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='DIGITAL Compaq HP Alpha Powered Logos'/><title type='text'>DIGITAL and Alpha Powered Logos</title><content type='html'>I created a couple of high-resolution logos for &lt;a href="http://www.wickensonline.co.uk/images/declogo-2-red-compressed.png"&gt;DIGITAL&lt;/a&gt; and &lt;a href="http://www.wickensonline.co.uk/images/alpha-powered-compressed.png"&gt;Alpha Powered&lt;/a&gt; from existing sources with transparent backgrounds as PNG files that someone might find useful! Below are two scaled images - be sure to use the links above to get the full resolution version.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.wickensonline.co.uk/images/declogo-2-red-compressed-small.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 95px;" src="http://www.wickensonline.co.uk/images/declogo-2-red-compressed-small.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.wickensonline.co.uk/images/alpha-powered-compressed-small.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 218px;" src="http://www.wickensonline.co.uk/images/alpha-powered-compressed-small.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6222086929913602205-1508336641208222444?l=lakesdev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lakesdev.blogspot.com/feeds/1508336641208222444/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6222086929913602205&amp;postID=1508336641208222444' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/1508336641208222444'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/1508336641208222444'/><link rel='alternate' type='text/html' href='http://lakesdev.blogspot.com/2009/08/digital-and-alpha-powered-logos.html' title='DIGITAL and Alpha Powered Logos'/><author><name>Mark Wickens</name><uri>http://www.blogger.com/profile/09254729882677406339</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_Uo-3VIq5czQ/SJ4Nk-iSlqI/AAAAAAAAAAU/3x0G72EISl8/s1600-R/profile-photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6222086929913602205.post-1748394675313874209</id><published>2009-08-08T00:48:00.000-07:00</published><updated>2009-08-08T01:23:50.439-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='retrochallenge 2009 vax macro macro-32 fractals allin1 cafepress'/><title type='text'>Retrochallenge 2009 Summer Challenge Entry</title><content type='html'>I participate in &lt;a href="http://retrochallenge.net/"&gt;retrochallenge&lt;/a&gt; - a convenient excuse to utilise retro technology for a month. For the summer 2009 challenge I coded up a fractal generator in &lt;a href="http://en.wikipedia.org/wiki/VAX_Macro"&gt;VAX Macro-32&lt;/a&gt;. You can check out the challenge blog at &lt;a href="http://www.wickensonline.co.uk/rc2009sc"&gt;http://www.wickensonline.co.uk/rc2009sc&lt;/a&gt;. I produce this blog on my main website because it is created using &lt;a href="http://www.wickensonline.co.uk/retro/allin1.html"&gt;ALLIN1&lt;/a&gt; on the VAX by a set of scripts I created for my &lt;a href="http://www.wickensonline.co.uk/retro"&gt;winter warmup 2009 entry&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;One of the &lt;a href="http://www.wickensonline.co.uk/rc2009sc/images-2.html"&gt;images &lt;/a&gt;I produced has been used by the competition organiser for the winners mousemat. It can also be ordered in t-shirt format from &lt;a href="http://www.cafepress.co.uk/Retrochallenge"&gt;cafepress&lt;/a&gt;.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Uo-3VIq5czQ/Sn0wK7IX4fI/AAAAAAAAACQ/JvNBZCWUDd0/s1600-h/retrochallenge-mouse-mat.jpeg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 400px;" src="http://2.bp.blogspot.com/_Uo-3VIq5czQ/Sn0wK7IX4fI/AAAAAAAAACQ/JvNBZCWUDd0/s400/retrochallenge-mouse-mat.jpeg" alt="" id="BLOGGER_PHOTO_ID_5367499295125135858" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.wickensonline.co.uk/images/mbrt1c-small.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 320px;" src="http://www.wickensonline.co.uk/images/mbrt1c-small.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The above image is also available at &lt;a href="http://www.wickensonline.co.uk/images/mbrt1c.jpg"&gt;4800x4800 resolution&lt;/a&gt;, which shows the recursive nature of the image much more clearly.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6222086929913602205-1748394675313874209?l=lakesdev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lakesdev.blogspot.com/feeds/1748394675313874209/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6222086929913602205&amp;postID=1748394675313874209' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/1748394675313874209'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/1748394675313874209'/><link rel='alternate' type='text/html' href='http://lakesdev.blogspot.com/2009/08/retrochallenge-2009-summer-challenge.html' title='Retrochallenge 2009 Summer Challenge Entry'/><author><name>Mark Wickens</name><uri>http://www.blogger.com/profile/09254729882677406339</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_Uo-3VIq5czQ/SJ4Nk-iSlqI/AAAAAAAAAAU/3x0G72EISl8/s1600-R/profile-photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_Uo-3VIq5czQ/Sn0wK7IX4fI/AAAAAAAAACQ/JvNBZCWUDd0/s72-c/retrochallenge-mouse-mat.jpeg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6222086929913602205.post-3430280815722110814</id><published>2009-08-07T23:50:00.001-07:00</published><updated>2009-08-10T01:49:20.105-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Transcoding AVCHD Linux DVD mpg mpeg command line panasonic HDC-HS300 ubuntu suse opensuse'/><title type='text'>Transcoding AVCHD into DVD and Web Formats using the Command Line under Linux</title><content type='html'>I needed a way of transcoding output from my &lt;a href="http://www.panasonic.co.uk/html/en_GB/Products/Camcorders/HD+Camcorders/HDC-HS300/Overview/1972809/index.html"&gt;Panasonic HDC-HS300&lt;/a&gt; into a DVD and web viewable format under linux. There are webpages out there that tell you how to do it, but I had to edit some of the scripts to perform this task automatically from the command line.&lt;br /&gt;&lt;br /&gt;I've created two scripts, &lt;span style="font-family:courier new;"&gt;convert-mts-dvd.sh&lt;/span&gt; and &lt;span style="font-family:courier new;"&gt;convert-mts-web.sh&lt;/span&gt; which can be downloaded in the archive &lt;a href="http://www.wickensonline.co.uk/convert-mts.tgz"&gt;&lt;span style="font-family:courier new;"&gt;convert-mts.tgz&lt;/span&gt;&lt;/a&gt;. The scripts unpack into a &lt;span style="font-family:courier new;"&gt;bin &lt;/span&gt;directory.&lt;br /&gt;&lt;br /&gt;In order to use the scripts you need to ensure you have the latest version of mplayer installed. My version reports:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;MPlayer SVN-r29328-4.3 (C) 2000-2009 MPlayer Team&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;so I would suggest this version or later. The packaged version in the OpenSUSE 11.0 repository is not recent enough - I downloaded the latest source code using subversion and built it locally. The following commands download the latest version, configure and build it to &lt;span style="font-family:courier new;"&gt;/usr/local&lt;/span&gt;. The mplayer binary can then be found under &lt;span style="font-family:courier new;"&gt;/usr/local/bin&lt;/span&gt; so the last command ensures that you pick that version up in preference to a pre-packaged version that might be installed under &lt;span style="font-family:courier new;"&gt;/usr/bin&lt;/span&gt; for example.&lt;br /&gt;&lt;pre class="brush: bash"&gt;&lt;br /&gt;svn checkout svn://svn.mplayerhq.hu/mplayer/trunk mplayer&lt;br /&gt;cd mplayer&lt;br /&gt;svn update&lt;br /&gt;./configure --prefix=/usr/local/&lt;br /&gt;make install&lt;br /&gt;export PATH=/usr/local/bin:$PATH&lt;br /&gt;&lt;/pre&gt;The &lt;span style="font-family:courier new;"&gt;convert-mts-dvd.sh&lt;/span&gt; script is used to convert your HD video into DVD quality, suitable for directly burning to a DVD (for example using my command line tools described in a previous blog post). It contains the following commands:&lt;br /&gt;&lt;pre class="brush: bash"&gt;rm -rf dvd/*&lt;br /&gt;mkdir dvd&lt;br /&gt;for f in *.mts&lt;br /&gt;do&lt;br /&gt;echo $f&lt;br /&gt;mencoder -oac copy -ovc lavc -of mpeg -mpegopts format=dvd -vf scale=720:576,hh&lt;br /&gt;arddup -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=55&lt;br /&gt;000:keyint=15:aspect=16/9:threads=4 $f -ofps 25 -fps 50 -o dvd/`basename $f .mts&lt;br /&gt;`.mpg -demuxer lavf &gt;&gt;`basename $f .mts`.log 2&gt;&amp;amp;1 &amp;amp;&lt;br /&gt;done&lt;br /&gt;wait&lt;br /&gt;&lt;/pre&gt;Once you have this command on your path, cd to a directory containing the files you wish to convert (which have the extension &lt;span style="font-family:courier new;"&gt;.mts&lt;/span&gt;) and run the command. Note that with the Panasonic Camcorder you can copy the files directly off the camera - you don't need to use the Windows utility provided. It will create a sub-directory called &lt;span style="font-family:courier new;"&gt;dvd&lt;/span&gt; and proceed to convert all the &lt;span style="font-family:courier new;"&gt;.mts&lt;/span&gt; files into DVD format. It creates a log file for each of the converted files giving any output or error messages.&lt;br /&gt;&lt;br /&gt;Note the ampersand on the end and the wait command - this script is multi-threaded and will utilise all cores on a mult-core processor. I did some experimentation with versions of this script and found that on a machine with a decent amount of memory the most efficient way of transcoding the videos was to spawn off all the transcode commands at the same time, even when transcoding several tens of mpeg. On my quad-core machine this command completes the process almost exactly four times quicker than processing the command sequentially.&lt;br /&gt;&lt;br /&gt;The only disadvantage of spawning all the transcodes at once is that you might impact other processes on the box (I noticed that video streaming would be interrupted for example). You could always use the &lt;span style="font-family:courier new;"&gt;nice&lt;/span&gt; command infront of the call to &lt;span style="font-family:courier new;"&gt;mencoder&lt;/span&gt; to run it at a lower priority, giving preference to existing tasks.&lt;br /&gt;&lt;br /&gt;The &lt;span style="font-family:courier new;"&gt;convert-mts-web.sh&lt;/span&gt; provides the appropriate command line arguments for generating a video size 360x288 - it creates a directory called &lt;span style="font-family:courier new;"&gt;web&lt;/span&gt; &lt;span style="font-family:courier new;"&gt;&lt;/span&gt;and places the transcoded video files there.&lt;br /&gt;&lt;pre class="brush:bash"&gt;&lt;br /&gt;rm -rf web/*&lt;br /&gt;mkdir web&lt;br /&gt;for f in *.mts&lt;br /&gt;do&lt;br /&gt;echo $f&lt;br /&gt;mencoder -oac copy -ovc lavc -of mpeg -mpegopts format=dvd -vf scale=360:288,harddup -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=1250:vbitrate=625:keyint=15:aspect=16/9:threads=4 $f -ofps 25 -fps 50 -o web/`basename $f .mts`.mpg -demuxer lavf &gt;&gt;`basename $f .mts`.log 2&gt;&amp;amp;1 &amp;amp;&lt;br /&gt;done&lt;br /&gt;wait&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6222086929913602205-3430280815722110814?l=lakesdev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lakesdev.blogspot.com/feeds/3430280815722110814/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6222086929913602205&amp;postID=3430280815722110814' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/3430280815722110814'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/3430280815722110814'/><link rel='alternate' type='text/html' href='http://lakesdev.blogspot.com/2009/08/transcoding-avchd-into-dvd-and-web.html' title='Transcoding AVCHD into DVD and Web Formats using the Command Line under Linux'/><author><name>Mark Wickens</name><uri>http://www.blogger.com/profile/09254729882677406339</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_Uo-3VIq5czQ/SJ4Nk-iSlqI/AAAAAAAAAAU/3x0G72EISl8/s1600-R/profile-photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6222086929913602205.post-9144212449400074834</id><published>2009-08-07T23:25:00.000-07:00</published><updated>2009-08-10T01:47:47.874-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='create video dvd linux command line cli automatic ubuntu suse opensuse'/><title type='text'>Automatic Video DVD Creation under Linux using command line tools</title><content type='html'>Doing DVD creation properly is a pain. Firstly, you have to master a GUI creation tool. Secondly, every DVD you create seems to involve too much manual work. Wouldn't it be nice if you could just throw a load of mpeg files into a directory and run a couple of commands.&lt;br /&gt;&lt;br /&gt;I couldn't find anything out there to fit the bill, so I rolled my own. You can download everything you need in &lt;a style="font-family: courier new;" href="http://www.wickensonline.co.uk/dvd-create.tgz"&gt;dvd-create.tgz&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The prerequisites are the &lt;span style="font-family:courier new;"&gt;dvdauthor,&lt;/span&gt; &lt;span style="font-family:courier new;"&gt;cdrtools &lt;/span&gt;and &lt;span style="font-family:courier new;"&gt;MPlayer&lt;/span&gt; packages. Use your linux distros' package manager to ensure they are installed and up-to-date.&lt;br /&gt;&lt;br /&gt;Unpacking &lt;span style="font-family:courier new;"&gt;dvd-create.tgz&lt;/span&gt; gives you a directory &lt;span style="font-family:courier new;"&gt;dvd-create&lt;/span&gt;. Within the directory are three main control scripts: &lt;span style="font-family:courier new;"&gt;create.sh&lt;/span&gt;, &lt;span style="font-family:courier new;"&gt;burn.sh&lt;/span&gt; and &lt;span style="font-family:courier new;"&gt;play.sh&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Start by copying the mpeg files you want on your DVD into the &lt;span style="font-family:courier new;"&gt;dvd-create&lt;/span&gt; directory. The files will appear on the DVD in alphabetical order, so if required rename (or numerically prefix) them so that the directory listing shows them in the correct order. Then use the &lt;span style="font-family:courier new;"&gt;create.sh&lt;/span&gt; script to process the mpeg files, generate a &lt;span style="font-family:courier new;"&gt;dvd.xml&lt;/span&gt; control script for &lt;span style="font-family:courier new;"&gt;dvdauthor &lt;/span&gt;then run &lt;span style="font-family:courier new;"&gt;dvdauthor &lt;/span&gt;to create the DVD structure within the subdirectory &lt;span style="font-family:courier new;"&gt;dvd&lt;/span&gt;.&lt;br /&gt;&lt;pre class="brush: bash"&gt;&lt;br /&gt;#!/bin/bash&lt;br /&gt;rm -f dvd.xml dvd-body.xml&lt;br /&gt;chapter=$(( 0 ))&lt;br /&gt;for f in *.mpg&lt;br /&gt;do&lt;br /&gt;echo "          &lt;vob file="\&amp;quot;$f\&amp;quot;" chapters="\&amp;quot;$chapter,0\&amp;quot;/"&gt;" &gt;&gt; dvd-body.xml&lt;br /&gt;chapter=$(( $chapter+1 ))&lt;br /&gt;done&lt;br /&gt;cat dvd-head.xml dvd-body.xml dvd-foot.xml &gt; dvd.xml&lt;br /&gt;dvdauthor -o dvd -x dvd.xml&lt;br /&gt;&lt;/vob&gt;&lt;/pre&gt;The second step is to burn the generated DVD structure to a DVD using the &lt;span style="font-family:courier new;"&gt;burn.sh&lt;/span&gt; script. If you dvd device is not located at &lt;span style="font-family:courier new;"&gt;/dev/cdrom&lt;/span&gt; you will need to edit the script to use the appropriate device.&lt;br /&gt;&lt;pre class="brush: bash"&gt;&lt;br /&gt;#!/bin/bash&lt;br /&gt;growisofs -dvd-compat -Z /dev/cdrom -dvd-video ./dvd/&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;The last step is to test the DVD you've just created using the play script, &lt;span style="font-family:courier new;"&gt;play.sh&lt;/span&gt;. This fires up the &lt;span style="font-family:courier new;"&gt;mplayer &lt;/span&gt;media player to view the contents of the freshly created DVD.&lt;br /&gt;&lt;pre class="brush: bash"&gt;&lt;br /&gt;#!/bin/bash&lt;br /&gt;mplayer dvd:// -dvd-device ./dvd&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;How quick was that!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6222086929913602205-9144212449400074834?l=lakesdev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lakesdev.blogspot.com/feeds/9144212449400074834/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6222086929913602205&amp;postID=9144212449400074834' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/9144212449400074834'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/9144212449400074834'/><link rel='alternate' type='text/html' href='http://lakesdev.blogspot.com/2009/08/automatic-dvd-creation-under-linux.html' title='Automatic Video DVD Creation under Linux using command line tools'/><author><name>Mark Wickens</name><uri>http://www.blogger.com/profile/09254729882677406339</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_Uo-3VIq5czQ/SJ4Nk-iSlqI/AAAAAAAAAAU/3x0G72EISl8/s1600-R/profile-photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6222086929913602205.post-3168961206979863829</id><published>2009-08-07T13:34:00.000-07:00</published><updated>2009-08-07T23:06:51.852-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ADSL connection monitor monitoring gnuplot bash cron'/><title type='text'>Monitor your ADSL Connection for Outages &amp; Uptime</title><content type='html'>I had the misfortune of choosing demon as my ISP and for the first couple of months managed to exceed my fair use policy and experience extended outages. In an effort to document my issues I wrote a couple of scripts on a NetBSD box that monitor the connection and automatically create a graph using gnuplot of the uptime. &lt;br /&gt;&lt;br /&gt;The scripts are driven by a crontab script:&lt;br /&gt;&lt;pre class="brush:bash"&gt;&lt;br /&gt;        $ crontab -l&lt;br /&gt;        SHELL=/bin/sh&lt;br /&gt;        MAILTO=msw&lt;br /&gt;        @hourly /home/msw/router/getstats&lt;br /&gt;        5,10,15,20,25,30,35,40,45,50,55 * * * * /home/msw/router/ping-internet.sh&lt;br /&gt;        5,10,15,20,25,30,35,40,45,50,55 * * * * /home/msw/router/plot-stats.sh&lt;br /&gt;        0,15,30,45 * * * *      /home/msw/router/upload-stats.sh&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Every five minutes the &lt;b&gt;ping-internet.sh&lt;/b&gt; script attempts to ping one of the demon nameservers using its' IP address:&lt;br /&gt;&lt;pre class="brush:bash"&gt;&lt;br /&gt;        #!/usr/pkg/bin/bash&lt;br /&gt;        LOGFILE=/home/msw/router/ping-stats.txt&lt;br /&gt;        TIME="`date +%C%y%m%d%H%M`"&lt;br /&gt;        /sbin/ping -c 1 158.152.1.58 &gt; /dev/null 2&gt;&amp;1&lt;br /&gt;        if [ "$?" == "0" ]&lt;br /&gt;        then&lt;br /&gt;                STATUS=1&lt;br /&gt;        else&lt;br /&gt;                STATUS=0&lt;br /&gt;        fi&lt;br /&gt;        echo "$TIME $STATUS" &gt;&gt; $LOGFILE&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;This generates a line in the LOGFILE which looks like this:&lt;br /&gt;&lt;pre class="brush:bash"&gt;&lt;br /&gt;        200907091945 1&lt;br /&gt;        200907091950 1&lt;br /&gt;        200907091955 1&lt;br /&gt;        200907092005 1&lt;br /&gt;        200907092010 1&lt;br /&gt;        200907092015 1&lt;br /&gt;        200907092020 1&lt;br /&gt;        200907092025 1&lt;br /&gt;        200907092030 1&lt;br /&gt;        200907092035 1&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;where the first number is the date and time and the second number is a '1' if the ping was successful, or a '0' if it was not.&lt;br /&gt;&lt;br /&gt;The &lt;b&gt;plot-stats.sh&lt;/b&gt; script turns these numbers into a nice graph with the help of GnuPlot then puts the resulting jpeg onto the local apache webserver:&lt;br /&gt;&lt;pre class="brush:bash"&gt;&lt;br /&gt;        #!/usr/pkg/bin/bash&lt;br /&gt;        sleep 30&lt;br /&gt;        export PATH=/bin:/sbin:/usr/pkg/bin&lt;br /&gt;        export RS=/home/msw/router&lt;br /&gt;        export HTDOCS=/usr/pkg/share/httpd/htdocs&lt;br /&gt;        export STATS_FILE=$RS/ping-stats.txt&lt;br /&gt;        export JPG_FILE=ping-stats.jpg&lt;br /&gt;        export SHARE_DIR=/usr/local/archive&lt;br /&gt;        export HTTPD_DIR=/usr/pkg/share/httpd/htdocs&lt;br /&gt;        cp $STATS_FILE $RS/ping-stats-copy.txt&lt;br /&gt;        gnuplot $RS/plot-stats.gnuplot &gt; $SHARE_DIR/$JPG_FILE&lt;br /&gt;        cp $SHARE_DIR/$JPG_FILE $HTTPD_DIR&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;The gnuplot script &lt;b&gt;plot-stats.gnuplot&lt;/b&gt; that works the magic:&lt;br /&gt;&lt;pre class="brush:bash"&gt;&lt;br /&gt;        set terminal jpeg large size 1024, 600&lt;br /&gt;        #set terminal dumb&lt;br /&gt;        set title "Demon Internet HomeOffice 8000, hostname: waldo"&lt;br /&gt;        set lmargin 10&lt;br /&gt;        set rmargin 10&lt;br /&gt;        set tmargin 5&lt;br /&gt;        set bmargin 8&lt;br /&gt;        set xdata time&lt;br /&gt;        set format x "%d/%m"&lt;br /&gt;        set xlabel "Date, 2009" offset 0,-2&lt;br /&gt;        set ylabel "ADSL Status"&lt;br /&gt;        set yrange [-1:2]&lt;br /&gt;        set ytics 0,1,1 ("Off" 0, "On" 1)&lt;br /&gt;        set mxtics 6&lt;br /&gt;        set timefmt "%Y%m%d%H%M%S"&lt;br /&gt;        plot "/home/msw/router/ping-stats-copy.txt" using 1:2 with lines title&lt;br /&gt;        "Status at `date`"&lt;br /&gt;        #set title "ADSL status" offset 0,-10&lt;br /&gt;        # - generated on %Y%m%d %H%M"&lt;br /&gt;        show title&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Then once every 1/4 hour the &lt;b&gt;upload-stats.sh&lt;/b&gt; script pushes the stats up to my remote web host (assuming the connection is up of course!)&lt;br /&gt;&lt;pre class="brush:bash"&gt;&lt;br /&gt;        #!/usr/pkg/bin/bash&lt;br /&gt;        cp /usr/local/archive/ping-stats.jpg /tmp&lt;br /&gt;        cd /tmp&lt;br /&gt;        ftp ftp://username:password@ftp.wickensonline.co.uk &lt;&lt;-END_OF_INPUT&lt;br /&gt;                bin&lt;br /&gt;                cd public_html&lt;br /&gt;                put ping-stats.jpg&lt;br /&gt;                dir&lt;br /&gt;                bye&lt;br /&gt;        END_OF_INPUT&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;The end result being this lovely image:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.wickensonline.co.uk/ping-stats.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 1024px; height: 600px;" src="http://www.wickensonline.co.uk/ping-stats.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6222086929913602205-3168961206979863829?l=lakesdev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lakesdev.blogspot.com/feeds/3168961206979863829/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6222086929913602205&amp;postID=3168961206979863829' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/3168961206979863829'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/3168961206979863829'/><link rel='alternate' type='text/html' href='http://lakesdev.blogspot.com/2009/08/monitoring-your-adsl-connection-for.html' title='Monitor your ADSL Connection for Outages &amp; Uptime'/><author><name>Mark Wickens</name><uri>http://www.blogger.com/profile/09254729882677406339</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_Uo-3VIq5czQ/SJ4Nk-iSlqI/AAAAAAAAAAU/3x0G72EISl8/s1600-R/profile-photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6222086929913602205.post-3188552064610422336</id><published>2009-08-07T12:21:00.000-07:00</published><updated>2009-08-07T14:09:09.808-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java swing mirrorbow remote control lcd application'/><title type='text'>Java/Swing Mirrorbow Remote Control Program</title><content type='html'>I wrote an application a while ago that I thought would be worth sharing with the world - it's a Java/Swing Application to drive a &lt;br /&gt;&lt;a href="http://www.mirrorbow.com/catalog/product_info.php?cPath=1&amp;products_id=41"&gt;Mirrorbow Ethernet IO Interface&lt;/a&gt;. I use the interface to control the power to a number of computers and peripherals in my attic, both to make remote operation possible and also to physically isolate them from the mains supply when not in use. I noted a while back that the VAX and Alpha both drew significant power from the mains even when the power supply switch was turned off.&lt;br /&gt;&lt;br /&gt;The application looks like this when running:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Uo-3VIq5czQ/Snx_1hg73SI/AAAAAAAAABw/p5kRy251cSg/s1600-h/mirrorbow-java-app.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 289px; height: 191px;" src="http://4.bp.blogspot.com/_Uo-3VIq5czQ/Snx_1hg73SI/AAAAAAAAABw/p5kRy251cSg/s400/mirrorbow-java-app.png" alt="" id="BLOGGER_PHOTO_ID_5367305413425093922" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;You simply click on the button to toggle the power. The application mirrors the information displayed in this Swing panel on the built in LCD display of the mirrorbow:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Uo-3VIq5czQ/SnyAwDXCwKI/AAAAAAAAACA/6X7vklcZ_Ho/s1600-h/mirrorbow-display.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 178px;" src="http://1.bp.blogspot.com/_Uo-3VIq5czQ/SnyAwDXCwKI/AAAAAAAAACA/6X7vklcZ_Ho/s400/mirrorbow-display.jpg" alt="" id="BLOGGER_PHOTO_ID_5367306418942820514" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The application is configured using an XML file:&lt;br /&gt;&lt;pre class="brush: xml"&gt;&lt;br /&gt;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;yes&amp;quot;?&amp;gt;&lt;br /&gt;&amp;lt;controller&amp;gt;&lt;br /&gt; &amp;lt;name&amp;gt;mirrorbow&amp;lt;/name&amp;gt;&lt;br /&gt; &amp;lt;address&amp;gt;192.168.1.199&amp;lt;/address&amp;gt;&lt;br /&gt; &amp;lt;port&amp;gt;&lt;br /&gt;  &amp;lt;number&amp;gt;4&amp;lt;/number&amp;gt;&lt;br /&gt;  &amp;lt;pin&amp;gt;&lt;br /&gt;   &amp;lt;number&amp;gt;1&amp;lt;/number&amp;gt;&lt;br /&gt;   &amp;lt;equipment&amp;gt;&lt;br /&gt;    &amp;lt;name&amp;gt;DS10L&amp;lt;/name&amp;gt;&lt;br /&gt;   &amp;lt;/equipment&amp;gt;&lt;br /&gt;  &amp;lt;/pin&amp;gt;&lt;br /&gt;  &amp;lt;pin&amp;gt;&lt;br /&gt;   &amp;lt;number&amp;gt;2&amp;lt;/number&amp;gt;&lt;br /&gt;   &amp;lt;equipment&amp;gt;&lt;br /&gt;    &amp;lt;name&amp;gt;DEC3K600&amp;lt;/name&amp;gt;&lt;br /&gt;   &amp;lt;/equipment&amp;gt;&lt;br /&gt;  &amp;lt;/pin&amp;gt;&lt;br /&gt;  &amp;lt;pin&amp;gt;&lt;br /&gt;   &amp;lt;number&amp;gt;3&amp;lt;/number&amp;gt;&lt;br /&gt;   &amp;lt;equipment&amp;gt;&lt;br /&gt;    &amp;lt;name&amp;gt;VAX4K90&amp;lt;/name&amp;gt;&lt;br /&gt;   &amp;lt;/equipment&amp;gt;&lt;br /&gt;  &amp;lt;/pin&amp;gt;&lt;br /&gt;  &amp;lt;pin&amp;gt;&lt;br /&gt;   &amp;lt;number&amp;gt;4&amp;lt;/number&amp;gt;&lt;br /&gt;   &amp;lt;equipment&amp;gt;&lt;br /&gt;    &amp;lt;name&amp;gt;VAX4K60&amp;lt;/name&amp;gt;&lt;br /&gt;   &amp;lt;/equipment&amp;gt;&lt;br /&gt;  &amp;lt;/pin&amp;gt;&lt;br /&gt;  &amp;lt;pin&amp;gt;&lt;br /&gt;   &amp;lt;number&amp;gt;5&amp;lt;/number&amp;gt;&lt;br /&gt;   &amp;lt;equipment&amp;gt;&lt;br /&gt;    &amp;lt;name&amp;gt;EXTSCSI&amp;lt;/name&amp;gt;&lt;br /&gt;   &amp;lt;/equipment&amp;gt;&lt;br /&gt;  &amp;lt;/pin&amp;gt;&lt;br /&gt;  &amp;lt;pin&amp;gt;&lt;br /&gt;   &amp;lt;number&amp;gt;6&amp;lt;/number&amp;gt;&lt;br /&gt;   &amp;lt;equipment&amp;gt;&lt;br /&gt;    &amp;lt;name&amp;gt;ZX6000&amp;lt;/name&amp;gt;&lt;br /&gt;   &amp;lt;/equipment&amp;gt;&lt;br /&gt;  &amp;lt;/pin&amp;gt;&lt;br /&gt;  &amp;lt;pin&amp;gt;&lt;br /&gt;   &amp;lt;number&amp;gt;7&amp;lt;/number&amp;gt;&lt;br /&gt;   &amp;lt;equipment&amp;gt;&lt;br /&gt;    &amp;lt;name&amp;gt;LINUX&amp;lt;/name&amp;gt;&lt;br /&gt;   &amp;lt;/equipment&amp;gt;&lt;br /&gt;  &amp;lt;/pin&amp;gt;&lt;br /&gt;  &amp;lt;pin&amp;gt;&lt;br /&gt;   &amp;lt;number&amp;gt;8&amp;lt;/number&amp;gt;&lt;br /&gt;   &amp;lt;equipment&amp;gt;&lt;br /&gt;    &amp;lt;name&amp;gt;ANCIL&amp;lt;/name&amp;gt;&lt;br /&gt;   &amp;lt;/equipment&amp;gt;&lt;br /&gt;  &amp;lt;/pin&amp;gt;&lt;br /&gt; &amp;lt;/port&amp;gt;&lt;br /&gt;&amp;lt;/controller&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;I tried to make the implementation as generic as possible. The source code, compiled classes and Windows/Unix command line scripts can be found in &lt;a href="http://www.wickensonline.co.uk/mirrorbow.zip"&gt;mirrorbow.zip&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The unit all this controls was hand built using a equipment box, eight IDC connectors, a relay board bought off ebay, a 12 volt power module extracted from a plug in adapter and a mains lead:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Uo-3VIq5czQ/SnyB33xSzQI/AAAAAAAAACI/w19U2Wg4mYA/s1600-h/powerunit.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 329px;" src="http://4.bp.blogspot.com/_Uo-3VIq5czQ/SnyB33xSzQI/AAAAAAAAACI/w19U2Wg4mYA/s400/powerunit.jpg" alt="" id="BLOGGER_PHOTO_ID_5367307652782279938" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6222086929913602205-3188552064610422336?l=lakesdev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lakesdev.blogspot.com/feeds/3188552064610422336/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6222086929913602205&amp;postID=3188552064610422336' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/3188552064610422336'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/3188552064610422336'/><link rel='alternate' type='text/html' href='http://lakesdev.blogspot.com/2009/08/javaswing-mirrorbow-remote-control.html' title='Java/Swing Mirrorbow Remote Control Program'/><author><name>Mark Wickens</name><uri>http://www.blogger.com/profile/09254729882677406339</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_Uo-3VIq5czQ/SJ4Nk-iSlqI/AAAAAAAAAAU/3x0G72EISl8/s1600-R/profile-photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_Uo-3VIq5czQ/Snx_1hg73SI/AAAAAAAAABw/p5kRy251cSg/s72-c/mirrorbow-java-app.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6222086929913602205.post-3107055334660686069</id><published>2009-07-14T12:16:00.000-07:00</published><updated>2009-07-14T12:52:28.612-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vax macro syntax highlighter alex gorbatchev'/><title type='text'>VAX Macro in the 21st Century</title><content type='html'>My good friend and work colleague Andrew Beacock posted a recent blog update &lt;a href="http://blog.andrewbeacock.com/"&gt;http://blog.andrewbeacock.com/&lt;/a&gt; with some very nice formatted code which turned out to be a Javascript based syntax highlighter by Alex Gorbatchev which you can find at &lt;a href="http://alexgorbatchev.com/wiki/SyntaxHighlighter"&gt;http://alexgorbatchev.com/wiki/SyntaxHighlighter&lt;/a&gt;. Seeing as how I couldn't sleep after about 5:30 this morning, I thought I'd follow Alex's excellent instructions to create a new syntax highlighter for VAX Macro. I'd previously created a VAX Macro mode for &lt;a href="http://www.jedit.org/"&gt;jEdit &lt;/a&gt;and it was fairly straightforward to cut and paste the opcodes, macros and operands.&lt;br /&gt;&lt;br /&gt;The syntax highlighter script file can be found here: &lt;a href="http://www.wickensonline.co.uk/scripts/shBrushVAXMacro32.js"&gt;http://www.wickensonline.co.uk/scripts/shBrushVAXMacro32.js&lt;/a&gt;. Your source code must have open and close angle brackets converted into their html ampersand escaped equivalents. Just add this to your installation of Syntax Highlighter then you can call upon it to format you code, such as &lt;a href="http://www.wickensonline.co.uk/test-macro32.html"&gt;in this example&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6222086929913602205-3107055334660686069?l=lakesdev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lakesdev.blogspot.com/feeds/3107055334660686069/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6222086929913602205&amp;postID=3107055334660686069' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/3107055334660686069'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/3107055334660686069'/><link rel='alternate' type='text/html' href='http://lakesdev.blogspot.com/2009/07/vax-macro-in-21st-century.html' title='VAX Macro in the 21st Century'/><author><name>Mark Wickens</name><uri>http://www.blogger.com/profile/09254729882677406339</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_Uo-3VIq5czQ/SJ4Nk-iSlqI/AAAAAAAAAAU/3x0G72EISl8/s1600-R/profile-photo.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6222086929913602205.post-1401893446272946932</id><published>2009-06-26T15:34:00.000-07:00</published><updated>2009-06-26T15:42:38.399-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OpenVMS distribution pictures Netscape Enterprise Server'/><title type='text'>OpenVMS distros...</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Uo-3VIq5czQ/SkVOsFmYexI/AAAAAAAAABg/vw1fKTl-_Kw/s1600-h/OpenVMS-distros.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 322px;" src="http://4.bp.blogspot.com/_Uo-3VIq5czQ/SkVOsFmYexI/AAAAAAAAABg/vw1fKTl-_Kw/s400/OpenVMS-distros.jpg" alt="" id="BLOGGER_PHOTO_ID_5351770251524078354" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;I managed to secure a large collection of OpenVMS distribution media from a University Lab who no longer wanted them - a large box arrived with what must have been about 20 boxes of shrink wrapped software - mostly quarterly updates of the Software Product Library, but also including a Compaq branded distribution of OpenVMS itself, and also one branded HP (7.3.2 for VAX and Alpha).&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Uo-3VIq5czQ/SkVOrzSnOuI/AAAAAAAAABY/0qFhNtC64nc/s1600-h/OpenVMS-CD-Case.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 268px; height: 400px;" src="http://2.bp.blogspot.com/_Uo-3VIq5czQ/SkVOrzSnOuI/AAAAAAAAABY/0qFhNtC64nc/s400/OpenVMS-CD-Case.jpg" alt="" id="BLOGGER_PHOTO_ID_5351770246609320674" border="0" /&gt;&lt;/a&gt;I had sold a few of the SPL packages without really looking in them and the remaining were still shrink wrapped until this evening when curiosity got the better of me. I'm glad I did, as you can see from the pictures the HP and Compaq OpenVMS packages contain a very nice CDROM case. The HP one is branded HP OpenVMS, the Compaq one Compaq OpenVMS.&lt;br /&gt;&lt;br /&gt;I also had a copy of Netscape Enterprise Server from 1998 that I opened up, and you can see the contents. It was amazing to see so many 'modern' terms described in a product that is now 10 years old, although I can't say I liked the look of server-side Javascript that much! This box contains Windows NT and Unix versions, including Digital Unix 4.x which I happen to have running on my DEC AXP 3000/600. Possibly too much of a coincidence...&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Uo-3VIq5czQ/SkVOsUwtZEI/AAAAAAAAABo/WoILH8t-1zA/s1600-h/Netscape-ES.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 323px;" src="http://2.bp.blogspot.com/_Uo-3VIq5czQ/SkVOsUwtZEI/AAAAAAAAABo/WoILH8t-1zA/s400/Netscape-ES.jpg" alt="" id="BLOGGER_PHOTO_ID_5351770255593923650" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6222086929913602205-1401893446272946932?l=lakesdev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lakesdev.blogspot.com/feeds/1401893446272946932/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6222086929913602205&amp;postID=1401893446272946932' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/1401893446272946932'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/1401893446272946932'/><link rel='alternate' type='text/html' href='http://lakesdev.blogspot.com/2009/06/openvms-distros.html' title='OpenVMS distros...'/><author><name>Mark Wickens</name><uri>http://www.blogger.com/profile/09254729882677406339</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_Uo-3VIq5czQ/SJ4Nk-iSlqI/AAAAAAAAAAU/3x0G72EISl8/s1600-R/profile-photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_Uo-3VIq5czQ/SkVOsFmYexI/AAAAAAAAABg/vw1fKTl-_Kw/s72-c/OpenVMS-distros.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6222086929913602205.post-7980356330382052596</id><published>2009-04-29T12:24:00.001-07:00</published><updated>2009-08-08T01:11:50.810-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='netboot netbsd 5.0 vax dhcp configuration mop'/><title type='text'>NetBSD, BBS and VAXen...</title><content type='html'>&lt;span style="font-family:verdana;"&gt;NetBSD intrigues me. It runs on like a zillion platforms, and has supported VAX hardware for a lot of years. After several failed attempts I finally got my VAXstation 4000/90 to netboot. A triumph of bloody minded configuration. The problem is that the documentation, whilst very good, is out of date and doesn't quite get you far enough. So I thought I'd add my brief information to the mix.&lt;br /&gt;&lt;br /&gt;First up, if you're serious about making this work then you'll need another platform to run NetBSD on which is easier to install from. For this read: doesn't require netbooting. I had my hand forced by my recent agreement to host the &lt;a href="telnet://bbs.retrochallenge.net"&gt;Retrochallenge BBS&lt;/a&gt;. The tarball that I was given wouldn't compile up under my SuSE 11 linux box without some serious hacking (within the nitty-gritty of the terminal-based IO code) so I enlisted the help of my aging but still solid Dell Inspiron 7500 laptop as a new host. The choice of the platform was driven by thee criteria: I own it already, it is small and it consumes little power. My wife is a little frazzled with my hardward collection. That covers the first two. Our electricity bill is obscene (but on a par with the neighbours). The Dell laptop consumes 15 watts when idle. I consider this very reasonable given that it will have to be on 24/7.&lt;br /&gt;&lt;br /&gt;Anyway, the bit I was missing when netbooting the vax was that you need to have a custom DHCP server to tell the target VAX where it can find its' root NFS mount. This means turning off the DHCP server in your router and turning on the dhcp server on a suitable box - in this case my Dell 7500 which now runs all the time.&lt;br /&gt;&lt;br /&gt;My dhcp.conf file looks like this:&lt;br /&gt;&lt;pre class="brush:bash"&gt;&lt;br /&gt;      # Setting DHCPD global parameters&lt;br /&gt;            allow unknown-clients;&lt;br /&gt;&lt;br /&gt;            ddns-update-style ad-hoc;&lt;br /&gt;&lt;br /&gt;            # Set parameters for the 192.168.1.0/24 subnet.&lt;br /&gt;            subnet 192.168.1.0 netmask 255.255.255.0 {&lt;br /&gt;                    range 192.168.1.21 192.168.1.70;&lt;br /&gt;                    default-lease-time 604800;&lt;br /&gt;                    option subnet-mask 255.255.255.0;&lt;br /&gt;                    option domain-name-servers 158.152.1.58, 158.152.1.43;&lt;br /&gt;                    option domain-name "appsoftint.co.uk";&lt;br /&gt;                    option routers 192.168.1.20;&lt;br /&gt;&lt;br /&gt;                    host aleph {&lt;br /&gt;                            hardware ethernet 08:00:2b:34:4d:6f;&lt;br /&gt;                            fixed-address 192.168.1.248;&lt;br /&gt;                            next-server 192.168.1.252;&lt;br /&gt;                            option root-path "/export/aleph/root";&lt;br /&gt;                    }&lt;br /&gt;&lt;br /&gt;                    host mirrorbow {&lt;br /&gt;                            hardware ethernet 00:04:a3:00:00:00;&lt;br /&gt;                            fixed-address 192.168.1.199;&lt;br /&gt;                    }&lt;br /&gt;&lt;br /&gt;                    host netfs1020d {&lt;br /&gt;                            hardware ethernet 00:c0:ee:d5:6c:ae;&lt;br /&gt;                            fixed-address 192.168.1.198;&lt;br /&gt;                    }&lt;br /&gt;&lt;br /&gt;                    host xpsgen2 {&lt;br /&gt;                            hardware ethernet 00:12:3F:D1:CA:46;&lt;br /&gt;                            fixed-address 192.168.1.42;&lt;br /&gt;                    }&lt;br /&gt;            }&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;The host entry &lt;b&gt;aleph&lt;/b&gt; is the VAX. The name aleph comes from a VAX connected to a cluster I worked with when I worked for &lt;a href="http://www.cyberscience.com/"&gt;Cyberscience Corporation&lt;/a&gt; between 1991 and 1993. I'm sure a wikipedia search will throw some light (well I thought this, but maybe not. The name aleph comes from a computer featured in the classic/cult TV show &lt;a href="http://en.wikipedia.org/wiki/Blakes_seven"&gt;Blakes-7&lt;/a&gt;. There were three nodes in the cluster named after computers in Blakes-7: orac, aleph &amp;amp; zen). Host mirrorbow is documented in my other post about the Java/Swing controller app I use, netfs1020d is my Kyocera FS-1020D connected to the network and xpsgen2 is the Dell laptop I'm using right now.&lt;br /&gt;&lt;br /&gt;I mention all this because it took several aborted attempts at net installing NetBSD on a VAX before I hit this piece of knowledge (a quick email exchange which, by its' very nature might not have happened).&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6222086929913602205-7980356330382052596?l=lakesdev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lakesdev.blogspot.com/feeds/7980356330382052596/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6222086929913602205&amp;postID=7980356330382052596' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/7980356330382052596'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/7980356330382052596'/><link rel='alternate' type='text/html' href='http://lakesdev.blogspot.com/2009/04/netbsd-bbs-and-vaxen.html' title='NetBSD, BBS and VAXen...'/><author><name>Mark Wickens</name><uri>http://www.blogger.com/profile/09254729882677406339</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_Uo-3VIq5czQ/SJ4Nk-iSlqI/AAAAAAAAAAU/3x0G72EISl8/s1600-R/profile-photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6222086929913602205.post-4398106113301734554</id><published>2009-02-26T06:46:00.000-08:00</published><updated>2009-02-26T07:22:28.551-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Update 12'/><category scheme='http://www.blogger.com/atom/ns#' term='Java 1.6'/><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='JRE'/><category scheme='http://www.blogger.com/atom/ns#' term='Itanium'/><category scheme='http://www.blogger.com/atom/ns#' term='Sun'/><category scheme='http://www.blogger.com/atom/ns#' term='Java. JDK'/><category scheme='http://www.blogger.com/atom/ns#' term='Java 6'/><category scheme='http://www.blogger.com/atom/ns#' term='Java 1.6.0'/><category scheme='http://www.blogger.com/atom/ns#' term='IA64'/><title type='text'>Sun Java SE JRE/JDK 1.6.0 Update 12 Available for Itanium (IA64)</title><content type='html'>Sun have just released Update 12 of the 1.6.0 Java SE JRE and JDK for Linux and Windows Itanium (IA64) platforms. &lt;br /&gt;&lt;br /&gt;The installation packages can be downloaded from the main Update 12 download page &lt;a href="http://java.sun.com/javase/downloads/?intcmp=1281"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;It installs and runs successfully on the Debian 5.0 IA64 port.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.wickensonline.co.uk/java-160u12.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 665px; height: 204px;" src="http://www.wickensonline.co.uk/java-160u12.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6222086929913602205-4398106113301734554?l=lakesdev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lakesdev.blogspot.com/feeds/4398106113301734554/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6222086929913602205&amp;postID=4398106113301734554' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/4398106113301734554'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/4398106113301734554'/><link rel='alternate' type='text/html' href='http://lakesdev.blogspot.com/2009/02/sun-java-se-jrejdk-160-update-12.html' title='Sun Java SE JRE/JDK 1.6.0 Update 12 Available for Itanium (IA64)'/><author><name>Mark Wickens</name><uri>http://www.blogger.com/profile/09254729882677406339</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_Uo-3VIq5czQ/SJ4Nk-iSlqI/AAAAAAAAAAU/3x0G72EISl8/s1600-R/profile-photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6222086929913602205.post-5287729476659196265</id><published>2009-02-26T06:39:00.000-08:00</published><updated>2009-08-03T04:31:03.269-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='netbeans 6.5'/><category scheme='http://www.blogger.com/atom/ns#' term='JRE'/><category scheme='http://www.blogger.com/atom/ns#' term='Itanium'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><category scheme='http://www.blogger.com/atom/ns#' term='Java. JDK'/><category scheme='http://www.blogger.com/atom/ns#' term='Java 6'/><category scheme='http://www.blogger.com/atom/ns#' term='IA64'/><title type='text'>Netbeans 6.5 on Itanium (IA64) Debian 5.0</title><content type='html'>Netbeans 6.5 installs and runs successfully on a Debian 5.0 Itanium distribution.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.wickensonline.co.uk/IA64-Netbeans6.5-About.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 561px; height: 583px;" src="http://www.wickensonline.co.uk/IA64-Netbeans6.5-About.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.wickensonline.co.uk/IA64-NetBeans6.5-1.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 384px; height: 307px;" src="http://www.wickensonline.co.uk/IA64-NetBeans6.5-1-small.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.wickensonline.co.uk/IA64-NetBeans6.5-2.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 384px; height: 307px;" src="http://www.wickensonline.co.uk/IA64-NetBeans6.5-2-small.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6222086929913602205-5287729476659196265?l=lakesdev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lakesdev.blogspot.com/feeds/5287729476659196265/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6222086929913602205&amp;postID=5287729476659196265' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/5287729476659196265'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/5287729476659196265'/><link rel='alternate' type='text/html' href='http://lakesdev.blogspot.com/2009/02/netbeans-65-on-itanium-ia64-debian-50.html' title='Netbeans 6.5 on Itanium (IA64) Debian 5.0'/><author><name>Mark Wickens</name><uri>http://www.blogger.com/profile/09254729882677406339</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_Uo-3VIq5czQ/SJ4Nk-iSlqI/AAAAAAAAAAU/3x0G72EISl8/s1600-R/profile-photo.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6222086929913602205.post-2711778273623945281</id><published>2009-02-26T05:50:00.001-08:00</published><updated>2009-02-26T12:24:56.912-08:00</updated><title type='text'>Debian 5.0 on Itanium IA64</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.debian.org/Pics/lennybanner_indexed.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 380px; height: 310px;" src="http://www.debian.org/Pics/lennybanner_indexed.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Debian 5.0 was released on February 14th, 2009. I believe it represents the state-of-the-art linux distribution that supports machines based around the Itanium processor family. Other distros including SuSE, Red Hat and Fedora are at least one major release behind with an IA64 based port.&lt;br /&gt;&lt;br /&gt;I installed Debian 5.0 on my HP ZX6000 workstation which has two 1.3 GHz Madison-class Itanium 2 processors, an Ultra SCSI 320 storage backbone and 16GB of RAM. The installation was via a DVD image downloaded by Bittorrent (took about 7 hours to download the complete image). The installation was painless, and even initially could be driven via a serial terminal connected to the console port.&lt;br /&gt;&lt;br /&gt;I have tested the distribution for two days and so far it has been flawless. It works out-of-the-box with both an ATI 7500 PCI video card and the originally supplied ATI Fire GL AGP graphics card.&lt;br /&gt;&lt;br /&gt;Well done DEBIAN! Please keep up the good work...&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;msw@zx6000:~$ uname -a&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Linux zx6000 2.6.26-1-mckinley #1 SMP Sat Jan 10 19:19:15 UTC 2009 ia64 GNU/Linux&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.wickensonline.co.uk/IA64-Debian-5.0.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 427px; height: 341px;" src="http://www.wickensonline.co.uk/IA64-Debian-5.0-small.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6222086929913602205-2711778273623945281?l=lakesdev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lakesdev.blogspot.com/feeds/2711778273623945281/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6222086929913602205&amp;postID=2711778273623945281' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/2711778273623945281'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/2711778273623945281'/><link rel='alternate' type='text/html' href='http://lakesdev.blogspot.com/2009/02/debian-50-on-itanium-ia64.html' title='Debian 5.0 on Itanium IA64'/><author><name>Mark Wickens</name><uri>http://www.blogger.com/profile/09254729882677406339</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_Uo-3VIq5czQ/SJ4Nk-iSlqI/AAAAAAAAAAU/3x0G72EISl8/s1600-R/profile-photo.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6222086929913602205.post-1360096825870928831</id><published>2009-02-26T05:07:00.000-08:00</published><updated>2009-02-26T06:52:41.219-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JRE'/><category scheme='http://www.blogger.com/atom/ns#' term='Itanium'/><category scheme='http://www.blogger.com/atom/ns#' term='Sun'/><category scheme='http://www.blogger.com/atom/ns#' term='ZX6000'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><category scheme='http://www.blogger.com/atom/ns#' term='Java. JDK'/><title type='text'>Sun Releases Java 6 JDK on Itanium</title><content type='html'>&lt;span style="font-weight: bold;"&gt;25th February 2009&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;After an announcement earlier last year that Sun and HP had teamed together to produce a fresh version of the SUN Java JRE &amp;amp; JDK, and a somewhat longer than predicted wait, a version is finally available.&lt;br /&gt;&lt;br /&gt;The release notes are &lt;a href="http://java.sun.com/javase/6/webnotes/ItaniumReleaseNotes.html"&gt;here&lt;/a&gt;. It can be downloaded by following the Java 6 Update 11 download &lt;a href="http://java.sun.com/javase/downloads/?intcmp=1281"&gt;link&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The latest version is Java 6 Update 11, although information on the Sun website indicates that an Update 12 version will be available shortly.&lt;br /&gt;&lt;br /&gt;I downloaded the JDK and installed it on my recent Debian 5.0 installation, which is running on a HP ZX6000 2 x 1.3 Ghz Madison based box.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.wickensonline.co.uk/java-version.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 665px; height: 133px;" src="http://www.wickensonline.co.uk/java-version.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The JDK appears to be working correctly, and has been used to run various test programs, culminating in Netbeans 6.5 (see separate post).&lt;br /&gt;&lt;br /&gt;Well done HP and SUN!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6222086929913602205-1360096825870928831?l=lakesdev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lakesdev.blogspot.com/feeds/1360096825870928831/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6222086929913602205&amp;postID=1360096825870928831' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/1360096825870928831'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/1360096825870928831'/><link rel='alternate' type='text/html' href='http://lakesdev.blogspot.com/2009/02/sun-releases-java-6-jdk-on-itanium.html' title='Sun Releases Java 6 JDK on Itanium'/><author><name>Mark Wickens</name><uri>http://www.blogger.com/profile/09254729882677406339</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_Uo-3VIq5czQ/SJ4Nk-iSlqI/AAAAAAAAAAU/3x0G72EISl8/s1600-R/profile-photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6222086929913602205.post-7855290333927091806</id><published>2008-12-24T05:53:00.000-08:00</published><updated>2009-02-26T07:09:00.456-08:00</updated><title type='text'>Retrochallenge 2009 Winter Warmup Entry</title><content type='html'>&lt;span style="font-weight:bold;"&gt;I'm participating in the Retrochallenge 2009 Winter Warmup!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I will be using a VAX 4000/90 as my only computer during January 2009 and am planning on writing a character-cell terminal application. &lt;br /&gt;&lt;br /&gt;The entry diary: &lt;a href="http://www.wickensonline.co.uk/retro/index.html"&gt;http://www.wickensonline.co.uk/retro/index.html&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.wickensonline.co.uk/retro/images/KEYFRONT-CLOSEUPS.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 640px; height: 175px;" src="http://www.wickensonline.co.uk/retro/images/KEYFRONT-CLOSEUPS.JPG" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The main Retrochallenge website: &lt;a href="http://retrochallenge.net"&gt;http://retrochallenge.net&lt;br /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6222086929913602205-7855290333927091806?l=lakesdev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lakesdev.blogspot.com/feeds/7855290333927091806/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6222086929913602205&amp;postID=7855290333927091806' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/7855290333927091806'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/7855290333927091806'/><link rel='alternate' type='text/html' href='http://lakesdev.blogspot.com/2008/12/retrochallenge-2009-winter-warmup-entry.html' title='Retrochallenge 2009 Winter Warmup Entry'/><author><name>Mark Wickens</name><uri>http://www.blogger.com/profile/09254729882677406339</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_Uo-3VIq5czQ/SJ4Nk-iSlqI/AAAAAAAAAAU/3x0G72EISl8/s1600-R/profile-photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6222086929913602205.post-1732898153883332205</id><published>2008-12-08T07:57:00.000-08:00</published><updated>2009-08-12T14:55:24.001-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='DEC Meet UK North West Autumn 2009'/><title type='text'>UK DEC Meeting in North West, Autumn 2009 - expression of interest please</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.wickensonline.co.uk/images/declogo-2-red-compressed-small.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 95px;" src="http://www.wickensonline.co.uk/images/declogo-2-red-compressed-small.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;I'm going to use my blog as a source of news on the UK DEC Meeting I'm trying to get sorted out.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Well, I've been banding this idea around to a few fellow DECheads in the UK, and thought it was about time I moved on to stage 2.&lt;br /&gt;&lt;br /&gt;I am thinking about organising a meeting for people interested in the lines of computers created by Digital Equipment Corporation. It is likely that the meeting will be autumn next year, and would be run over a Saturday and Sunday in Windermere, Cumbria, UK.&lt;br /&gt;&lt;br /&gt;This is in the very early stages of planning, and I'm initially looking to get an idea of numbers who might be interested. This is to ensure that I can organise the event without loss. In terms of numbers I would be looking for between 10 and 20 people to exhibit computers, and then another up to maybe 50 people as non-exhibitors. I'm sure we could get some interesting speakers involved.&lt;br /&gt;&lt;br /&gt;Cost is likely to be in the order of GBP 10 for the two days, although we can discuss the option of providing catering if there is interest. I would be looking for firm commitment to buy a ticket say 3 months in advance.&lt;br /&gt;&lt;br /&gt;So in the first instance, could anyone interested email me at: mark at wickensonline dot co dot uk. By emailing you agree for me to keep your email address on file so that I can inform you of any progress.&lt;br /&gt;&lt;br /&gt;Please feel free to make suggestions either on this blog or direct by email.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.wickensonline.co.uk/retro/images/vaxstation.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 716px; height: 168px;" src="http://www.wickensonline.co.uk/retro/images/vaxstation.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6222086929913602205-1732898153883332205?l=lakesdev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lakesdev.blogspot.com/feeds/1732898153883332205/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6222086929913602205&amp;postID=1732898153883332205' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/1732898153883332205'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/1732898153883332205'/><link rel='alternate' type='text/html' href='http://lakesdev.blogspot.com/2008/12/uk-dec-meeting-in-north-west-autumn.html' title='UK DEC Meeting in North West, Autumn 2009 - expression of interest please'/><author><name>Mark Wickens</name><uri>http://www.blogger.com/profile/09254729882677406339</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_Uo-3VIq5czQ/SJ4Nk-iSlqI/AAAAAAAAAAU/3x0G72EISl8/s1600-R/profile-photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6222086929913602205.post-4442274095856361342</id><published>2008-12-01T13:56:00.000-08:00</published><updated>2008-12-01T14:55:42.789-08:00</updated><title type='text'>Setting up OpenVMS DCPS for wide 132 column portrait printing to an LPD network printer</title><content type='html'>Summary: by using DCPS and a custom ANSI setup you can print 132 column in portait mode to a postscript LPD printer. My Kyocera FS1020D has a network card installed and is setup as an LPD printer server. 132 column portrait is useful for printing compiler or assembler list files.&lt;br /&gt;&lt;br /&gt;Install DCPS. For hobbyists the license is included: DCPS-OPEN&lt;br /&gt;&lt;br /&gt;Configure DCPS by copying the template: SYS$STARTUP:DCPS$STARTUP.TEMPLATE to SYS$STARTUP:DCPS$STARTUP.COM&lt;br /&gt;&lt;br /&gt;I made the following alterations:&lt;br /&gt;&lt;br /&gt;Define the DCPS_LIB logical to point to the standard control library located in SYS$LIBRARY:DCPS$DEVCTL.TLB, and a user defined library (to be created in a minute) called SYS$LIBRARY:DCPS$SITE.TLB. The directory and file extensions are not specified in the logical, but we must specify that our custom library contains ANSI control sequences:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$ DEFINE /SYSTEM /EXECUTIVE DCPS_LIB DCPS$DEVCTL, "DCPS$SITE /DATA=ANSI"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;If in Europe define the default paper size as A4:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$ DEFINE /SYSTEM /EXECUTIVE DCPS$SHEET_SIZE A4&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Then define the printer execution queue:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$  IF .NOT. SETUP_MODE THEN @SYS$STARTUP:DCPS$EXECUTION_QUEUE -&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;        SYS$PRINT -                     ! P1 - Execution queue name&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;        "IP_LPD/192.168.1.198:lp1"     -! P2 - Interconnect protocol/device name&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;        DCPS_LIB -                      ! P3 - Logical name for library(ies)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;        "SIDES=2" -                     ! P4 - Default queue parameters&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;        "/SEPARATE=(NOBURST,FLAG)" -    ! P5 - Default queue qualifiers&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;        "" -                            ! P6 - Communication speed (serial only)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;        "" -                            ! P7 - Device characteristics&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;        ""                              ! P8 - Verify on/off&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Significant parts of this file are the parameters:&lt;br /&gt;&lt;br /&gt;P1 - if you specify this as SYS$PRINT you'll not need to specify a queue name when printing&lt;br /&gt;P2 - protocol of IP_LPD specifies we are printing to an LPD printer - followed by the IP address and the name of the print queue (the default remote queue name is normally lp)&lt;br /&gt;P3 - this is the logical name defining the form library(s) the queue users (the one we defined earlier in this file)&lt;br /&gt;P4 - SIDES-2 my FS1020D is a duplex printer - this specifies duplex printing&lt;br /&gt;&lt;br /&gt;You need to define a setup module and add it to a text library. The setup module is a string of ANSI control sequences that are interpreted by the DCPS print engine. The setup module can either be defined directly in the PRINT command using the /SETUP parameter or via a FORM definition.&lt;br /&gt;&lt;br /&gt;The following text file sets up the printer for 132 character portrait printing:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$ type sys$library:wide132.txt&lt;/span&gt;&lt;br /&gt;&lt;esc&gt;&lt;span style="font-family:courier new;"&gt;ESC[15m&lt;/span&gt;&lt;esc&gt;&lt;span style="font-family:courier new;"&gt;ESC[11wESC&lt;/span&gt;&lt;esc&gt;&lt;span style="font-family:courier new;"&gt;[1;132s&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;where ESC is the escape code Ctrl-[. You can create escape&lt;esc&gt; characters within EVE by typing Ctrl-V Ctrl-[&lt;br /&gt;&lt;br /&gt;Breakdown of the ANSI control string:&lt;br /&gt;&lt;br /&gt;&lt;esc&gt;ESC[15m - select line printer font&lt;br /&gt;&lt;esc&gt;ESC[11w - select horizontal pitch&lt;br /&gt;&lt;esc&gt;ESC[1;132s - select left and right margins&lt;br /&gt;&lt;br /&gt;To create the custom control library (initially empty):&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$ library/create/text sys$library:dcps$site.tlb&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;To replace the module in the custom control library (note that the library extension .TLB and text file containing the ANSI control sequence .TXT are not specified):&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$ set def sys$library&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$ library/replace/text dcps$site wide132&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;(If previously created) delete the form to use:&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$ delete/form wide132&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Create a form using the /setup parameter to define the module to use. The /stock-default is required unless you are using a specific stock:&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$ define/form/width=132/setup=wide132/stock=default wide132 2&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;You should now be able to print using the following:&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$ print/form=wide132 myfile.lst&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The DCPS$STARTUP.COM and form definition commands needs to be added to the SYS$STARTUP:SYSTARTUP_VMS.COM file to get run automatically at startup.&lt;br /&gt;&lt;br /&gt;Note: the only reference I could find to setting the horizontal pitch in relation to DCPS used the command ESC&lt;esc&gt;[4w which sets a pitch of 16.5 characters/inch. This apparently works on dot matrix printers but not on my Kyocera FS1020D because of the minimum margins imposed by the printable area (probably true of a number of laser printers). You get 131 character lines - very frustrating! The setting of ESC&lt;esc&gt;[11w uses a slighter tighter pitch of 17.1 characters/inch (which seems designed for this purpose in my opinion).&lt;br /&gt;&lt;br /&gt;This is an excerpt from the the Digital ANSI-Compliant Printing Protocol Level 2 Programming Reference describing the horizontal pitch command:&lt;br /&gt;&lt;br /&gt;DECSHORP—Set Horizontal Pitch&lt;br /&gt;Selects character spacing for monospaced fonts.&lt;br /&gt;Source: Application Destination: Levels 1, 2, 3&lt;br /&gt;Format&lt;br /&gt;CSI Ps w&lt;br /&gt;9/11 *** 7/7&lt;br /&gt;Description&lt;br /&gt;The DECSHORP command determines the number of characters/inch (pitch)&lt;br /&gt;that the device uses. This establishes the Horizontal Advance Increment&lt;br /&gt;(HAI).&lt;br /&gt;The selective parameters for DECSHORP are as follows:&lt;br /&gt;Ps HAI Pitch&lt;br /&gt;0 720 centipoints 10 characters/inch&lt;br /&gt;1 720 centipoints 10 characters/inch&lt;br /&gt;2 600 centipoints 12 characters/inch&lt;br /&gt;3 545 centipoints 13.2 characters/inch&lt;br /&gt;4 436 centipoints 16.5 characters/inch&lt;br /&gt;5 1440 centipoints 5 characters/inch&lt;br /&gt;6 1200 centipoints 6 characters/inch&lt;br /&gt;7 1090 centipoints 6.6 characters/inch&lt;br /&gt;8 872 centipoints 8.25 characters/inch&lt;br /&gt;9 480 centipoints 15 characters/inch&lt;br /&gt;11 420 centipoints Approximately 17.1 characters/inch or, more&lt;br /&gt;accurately, 14/240 in.&lt;br /&gt;12 840 centipoints Approximately 8.55 characters/inch or, more&lt;br /&gt;accurately, 28/240 in.&lt;br /&gt;13 400 centipoints 18 characters/inch&lt;br /&gt;14 800 centipoints 9 characters/inch&lt;br /&gt;15 720 centipoints 10 characters/inch&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Links: &lt;/span&gt;&lt;br /&gt;my &lt;a href="http://www.wickensonline.co.uk/dcps$startup.com"&gt;DCPS$STARTUP.COM file&lt;/a&gt;&lt;br /&gt;my &lt;a href="http://www.wickensonline.co.uk/wide132.txt"&gt;WIDE132.TXT file&lt;/a&gt;&lt;br /&gt;&lt;/esc&gt;&lt;/esc&gt;&lt;/esc&gt;&lt;/esc&gt;&lt;/esc&gt;&lt;/esc&gt;&lt;/esc&gt;&lt;/esc&gt;&lt;/esc&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6222086929913602205-4442274095856361342?l=lakesdev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lakesdev.blogspot.com/feeds/4442274095856361342/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6222086929913602205&amp;postID=4442274095856361342' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/4442274095856361342'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/4442274095856361342'/><link rel='alternate' type='text/html' href='http://lakesdev.blogspot.com/2008/12/setting-up-dcps-for-wide-132-column.html' title='Setting up OpenVMS DCPS for wide 132 column portrait printing to an LPD network printer'/><author><name>Mark Wickens</name><uri>http://www.blogger.com/profile/09254729882677406339</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_Uo-3VIq5czQ/SJ4Nk-iSlqI/AAAAAAAAAAU/3x0G72EISl8/s1600-R/profile-photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6222086929913602205.post-3888535245872935114</id><published>2008-09-06T23:45:00.000-07:00</published><updated>2010-06-04T15:43:46.105-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='power consumption computer electrical equipment'/><title type='text'>Power Consumption of Computer Equipment and Household Appliances</title><content type='html'>Here is a list of the power consumed by random computer equipment and appliances littering the house:&lt;br /&gt;&lt;br /&gt;&lt;table border="0" cellpadding="1" cellspacing="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;AG Neovo F-419 19" LCD&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;30 W&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Netgear Gigabit Switch&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;6 W&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Vigor 2800 Router&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;10 W&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;IBM X60 power supply&lt;/td&gt;&lt;td&gt;disconnected&lt;/td&gt;&lt;td&gt;2 W&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;IBM X60 Tablet&lt;/td&gt;&lt;td&gt;charging&lt;/td&gt;&lt;td&gt;35 W&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;booting&lt;/td&gt;&lt;td&gt;60 W&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;idle&lt;/td&gt;&lt;td&gt;20 W&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;80% CPU&lt;/td&gt;&lt;td&gt;35 W&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;standby&lt;/td&gt;&lt;td&gt;3 W&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;VT520 terminal&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;30 W&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Core 2 Duo 1.6Gz/3HD Server&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;100 W&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;HP ZX6000 2xItanium Workstation&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;370 W&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Cambridge Audio Subwoofer&lt;/td&gt;&lt;td&gt;normal&lt;/td&gt;&lt;td&gt;15 W&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Cambridge Audio Amp&lt;/td&gt;&lt;td&gt;normal&lt;/td&gt;&lt;td&gt;30-40 W&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Arcam Alpha 9 Amp&lt;/td&gt;&lt;td&gt;quiet to loud&lt;/td&gt;&lt;td&gt;20-65 W&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Sky+&lt;/td&gt;&lt;td&gt;standby&lt;/td&gt;&lt;td&gt;18 W&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;on&lt;/td&gt;&lt;td&gt;22 W&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Playstation 3&lt;/td&gt;&lt;td&gt;standby&lt;/td&gt;&lt;td&gt;4 W&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;idle&lt;/td&gt;&lt;td&gt;110 W&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;in game&lt;/td&gt;&lt;td&gt;135 W&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Kettle&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;2500 W&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Toaster&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;1550 W&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Panasonic 50" Plasma&lt;/td&gt;&lt;td&gt;standby&lt;/td&gt;&lt;td&gt;4 W&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;on&lt;/td&gt;&lt;td&gt;300-500 W&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Dell 37" LCD TV&lt;/td&gt;&lt;td&gt;standby&lt;/td&gt;&lt;td&gt;3 W&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;on&lt;/td&gt;&lt;td&gt;180 W&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Bedside light&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;20 W&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align: top;"&gt;VAXstation 4000/VLC&lt;br /&gt;&lt;/td&gt;&lt;td style="vertical-align: top;"&gt;idle&lt;br /&gt;&lt;/td&gt;&lt;td style="vertical-align: top;"&gt;45 W&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align: top;"&gt;VAXstation 4000/90&lt;br /&gt;&lt;/td&gt;&lt;td style="vertical-align: top;"&gt;idle&lt;br /&gt;&lt;/td&gt;&lt;td style="vertical-align: top;"&gt;106 W&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align: top;"&gt;DEC 3000/600 AXP&lt;br /&gt;&lt;/td&gt;&lt;td style="vertical-align: top;"&gt;idle&lt;br /&gt;&lt;/td&gt;&lt;td style="vertical-align: top;"&gt;225 W&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align: top;"&gt;AlphaServer 300 4/266&lt;br /&gt;&lt;/td&gt;&lt;td style="vertical-align: top;"&gt;idle&lt;br /&gt;&lt;/td&gt;&lt;td style="vertical-align: top;"&gt;100 W&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align: top;"&gt;Digital 21" monitor&lt;br /&gt;&lt;/td&gt;&lt;td style="vertical-align: top;"&gt;on&lt;br /&gt;&lt;/td&gt;&lt;td style="vertical-align: top;"&gt;110 W&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align: top;"&gt;DS10L Alpha 1U Rackmount&lt;br /&gt;&lt;/td&gt;&lt;td style="vertical-align: top;"&gt;idle&lt;br /&gt;&lt;/td&gt;&lt;td style="vertical-align: top;"&gt;176 W&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align: top;"&gt;Quad Core 2 4GB Linux Server&lt;br /&gt;&lt;/td&gt;&lt;td style="vertical-align: top;"&gt;idle&lt;br /&gt;&lt;/td&gt;&lt;td style="vertical-align: top;"&gt;110 W&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align: top;"&gt;DECserver 90TL&lt;br /&gt;&lt;/td&gt;&lt;td style="vertical-align: top;"&gt;on&lt;br /&gt;&lt;/td&gt;&lt;td style="vertical-align: top;"&gt;10 W&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align: top;"&gt;CentreCOM MR820TR Router&lt;br /&gt;&lt;/td&gt;&lt;td style="vertical-align: top;"&gt;on&lt;br /&gt;&lt;/td&gt;&lt;td style="vertical-align: top;"&gt;10 W&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;Notes: most appliances seem to consume about 4 watts on standby. Power adapters that are plugged in but not connected to anything still draw about 2 W. The X60 provides a very good performance to power consumption ratio! The ZX6000 workstation doesn't!&lt;br /&gt;&lt;br /&gt;Preconceptions: I thought the audio amp and subwoofer would use much more electricity. Clearly, they use more the louder the sound output but the average consumption will remain low.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6222086929913602205-3888535245872935114?l=lakesdev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lakesdev.blogspot.com/feeds/3888535245872935114/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6222086929913602205&amp;postID=3888535245872935114' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/3888535245872935114'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/3888535245872935114'/><link rel='alternate' type='text/html' href='http://lakesdev.blogspot.com/2008/09/power-consumption-of-computers-and.html' title='Power Consumption of Computer Equipment and Household Appliances'/><author><name>Mark Wickens</name><uri>http://www.blogger.com/profile/09254729882677406339</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_Uo-3VIq5czQ/SJ4Nk-iSlqI/AAAAAAAAAAU/3x0G72EISl8/s1600-R/profile-photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6222086929913602205.post-3675345607867417712</id><published>2008-09-02T13:24:00.000-07:00</published><updated>2009-08-08T01:41:36.108-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='openvms vnc remote cde xwindow linux suse'/><title type='text'>Running a remote VNC OpenVMS CDE Desktop</title><content type='html'>The HP Integrity ZX6000 workstation I bought recently is now running OpenVMS Version 8.3-1H1 flawlessly. The ZX6000 is the same as the RX2600 server except that it contains a combined AGP/PCI card cage instead of a straight PCI cage. The ATI AGP graphics card that it came with is not supported under OpenVMS. As an alternative I installed an ATI 7500 PCI card that was previously in an Alpha DS10L server, but the picture quality is really poor.&lt;br /&gt;&lt;br /&gt;My day-to-day workstation runs SuSE 11. It will quite happily display OpenVMS terminals and applications via a remote X-Window configuration, and with a gigabit ethernet between the two network latency is not an issue. When I first started work in 1991 I remember running a complete window manager come session manager across a network and wondered if this might provide me with the remote desktop experience I was after.&lt;br /&gt;&lt;br /&gt;Firstly, I started a vncserver on the linux box:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;$ vncserver -geometry 1280x1024 -depth 24&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;In order that this vnc xserver session does not start it's own window manager (which in my case would normally default to KDE3) I edited my vnc xstartup file which is installed in my home directory:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;$ vi ~/.vnc/xstartup&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;and removed the 'startkde' call at the end. This starts the vnc server with no window manager, but with a single xterm (undecorated of course).&lt;br /&gt;&lt;br /&gt;I then start a vncviewer for that vncserver:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;$ vncviewer linux:1&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Then, I moved the vncviewer window to my 2nd kde desktop and maximised it. You can switch between the 1st and 2nd desktop in KDE using Ctrl-Tab.&lt;br /&gt;&lt;br /&gt;As the viewer and server are on the same machine there is no network latency involved. Equally, however, if you want to view the vnc server session remotely there is nothing to stop this (and indeed this is what I am using now and it is certainly no slower than any other vnc connection I have used).&lt;br /&gt;&lt;br /&gt;Within the single xterm enable your OpenVMS access to this display:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;$ xhost +zx6000&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;In this case 'zx6000' should be replaced with your OpenVMS box hostname or IP address.&lt;br /&gt;You can then login to your OpenVMS box normally using telnet and set the display back to the vncserver you have created:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;$ set display/create/node=linux/server=1/trans=tcpip&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The final step is to start the CDE session manager for this display. The logical &lt;span style="font-family: courier new;"&gt;CDE$SESSIONMAIN&lt;/span&gt; defines the command to start the CDE session manager:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;$ show log cde$sessionmain&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt; "CDE$SESSIONMAIN" = "mcr cde$system_defaults:[bin]dtsession" (LNM$SYSTEM_TABL&lt;/span&gt;&lt;span style="font-family: courier new;"&gt;E)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Run this in the xterm:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;$ mcr cde$system_defaults:[bin]dtsession&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;and voila, an OpenVMS CDE session as if you had just logged in to the machine directly.&lt;br /&gt;&lt;br /&gt;Addendum: you can use a font server running on the OpenVMS box to serve up fonts not normally available on a unix machine (such as double width fonts).&lt;br /&gt;&lt;br /&gt;Start the font server on the OpenVMS box (I'm sure there is a more elegent way of doing this via the server startup scripts, &lt;span style="font-family: courier new;"&gt;DECW$PRIVATE_SERVER_SETUP.COM&lt;/span&gt; is the place to look):&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;$ xfs :== "$sys$system:decw$xfs.exe"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;$ xfs&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;You can check if the font server is running by trying to telnet to the server with the given port:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;$ telnet zx6000 7100&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;a connection will be establised if the font server is running (hitting return a few times will drop you out of the telnet session, as you're not talking font server speak).&lt;br /&gt;&lt;br /&gt;Then ensure that the font path is set to include the OpenVMS nodes' font server. Either edit the 'fontPath' variable in the vncserver script, or issue an xset command on the Linux box prior to connecting to the OpenVMS box:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;$ xset +fp tcp/zx6000:7100&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;where zx6000 is the hostname of the OpenVMS box.&lt;br /&gt;&lt;br /&gt;Update 2: If you are running the traditional DEC Windows session manager run&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;$ SYS$SYSTEM:DECW$SESSION.EXE&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6222086929913602205-3675345607867417712?l=lakesdev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lakesdev.blogspot.com/feeds/3675345607867417712/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6222086929913602205&amp;postID=3675345607867417712' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/3675345607867417712'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/3675345607867417712'/><link rel='alternate' type='text/html' href='http://lakesdev.blogspot.com/2008/09/running-remote-openvms-cde-desktop.html' title='Running a remote VNC OpenVMS CDE Desktop'/><author><name>Mark Wickens</name><uri>http://www.blogger.com/profile/09254729882677406339</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_Uo-3VIq5czQ/SJ4Nk-iSlqI/AAAAAAAAAAU/3x0G72EISl8/s1600-R/profile-photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6222086929913602205.post-8235184520728762124</id><published>2008-08-10T00:14:00.000-07:00</published><updated>2008-09-17T00:44:51.499-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Volvo XC90 Towbar Fitting Tips'/><title type='text'>Fitting a Volvo XC90 Towbar</title><content type='html'>Here are my top five tips to fitting a non-detachable towbar to an XC90. All the cheaper variants appear to be the same design.&lt;br /&gt;&lt;ol&gt;&lt;li&gt;You &lt;span style="font-weight: bold;"&gt;will&lt;/span&gt; need a 19mm &lt;span style="font-weight: bold;"&gt;open-ended&lt;/span&gt; spanner. The chassis hanger on the exhaust side uses three bolts - the front-most bolt is in a slot that will trap a ring spanner as you tighten the bolt. Elsewhere a ring spanner combined with ratchet 19mm spanner works well.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Take care with the age of the car - the wiring changed in April 2004 - the earlier model uses a cheaper vehicle specific wiring kit (approx. £40) whereas later models require a kit costing £120.&lt;/li&gt;&lt;li&gt;Expect the towbar fitting to take about 2 hours. It is a simple design - the crossbar fits inside the rear bumper and is secured with 10 bolts, but some of these are tricky to get to - you will need two people for about an hour whilst tightening the chassis bolts. Tighten the crossbar bolts on the left-hand side first (next to the exhaust) - these are more difficult to get to.&lt;/li&gt;&lt;li&gt;If you take the right-hand floor support out to fit a vehicle specific wiring kit leave it out whilst fitting the towbar. Access to the chassis bolts on the inside is easier.&lt;/li&gt;&lt;li&gt;Use the Volvo electric fitting instructions, available from the &lt;a href="http://www.volvoclub.org.uk/towbar_electrics.shtml"&gt;Volvo owners website&lt;/a&gt;. These tell you how to remove the internal trim without breaking it, and how to disassemble and reassemble the lower boot components to fit the wiring.&lt;/li&gt;&lt;/ol&gt;I wasn't sure whether to go for 7 or 13 pin electrics. I went for 13 pin electrics which will become the European standard in 2009 at the expense of being incompatible with existing twin 7 pin electrics. There are adapters available on eBay. Oh, and one last thing - wear glasses when tightening the chassis bolts next to the exhaust - all manner of stuff falls into your eyes otherwise!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6222086929913602205-8235184520728762124?l=lakesdev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lakesdev.blogspot.com/feeds/8235184520728762124/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6222086929913602205&amp;postID=8235184520728762124' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/8235184520728762124'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/8235184520728762124'/><link rel='alternate' type='text/html' href='http://lakesdev.blogspot.com/2008/08/fitting-volvo-xc90-towbar.html' title='Fitting a Volvo XC90 Towbar'/><author><name>Mark Wickens</name><uri>http://www.blogger.com/profile/09254729882677406339</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_Uo-3VIq5czQ/SJ4Nk-iSlqI/AAAAAAAAAAU/3x0G72EISl8/s1600-R/profile-photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6222086929913602205.post-4720771003814012136</id><published>2008-08-09T14:13:00.000-07:00</published><updated>2008-09-02T14:36:01.987-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='instructables seven segment charlieplexing maxim'/><title type='text'>Instructables</title><content type='html'>If you haven't happened across the &lt;a href="http://www.instructables.com/"&gt;Instructables&lt;/a&gt; website I'd highly recommend it. It is a website devoted to communicating how to do things.&lt;br /&gt;&lt;br /&gt;A large variety of topics are covered, but I was especially interested in a couple of descriptions as I have been looking at the issues around creating a display out of seven-segment digits. I bought a whole load off ebay a while back and am looking at creating a display comprising 10 rows of 8 characters.&lt;br /&gt;&lt;br /&gt;The maxim chip &lt;a href="http://www.maxim-ic.com/appnotes.cfm/an_pk/1880"&gt;MAX6951 &lt;/a&gt;uses a technique called Charlieplexing. It trades complexity of the driving logic for number of connections. I'd come across the chip (and the technique) before without knowing how it came about. Anyway, if you're interested an explanation can be found on instructables &lt;a href="http://www.instructables.com/id/Charlieplexing-7-segment-displays/"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I haven't found an easy way of providing a display with so many characters. Multiplexing breaks down as a technique past about 8 characters, and this in turn means the chip count goes up.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6222086929913602205-4720771003814012136?l=lakesdev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lakesdev.blogspot.com/feeds/4720771003814012136/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6222086929913602205&amp;postID=4720771003814012136' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/4720771003814012136'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6222086929913602205/posts/default/4720771003814012136'/><link rel='alternate' type='text/html' href='http://lakesdev.blogspot.com/2008/08/indestructables.html' title='Instructables'/><author><name>Mark Wickens</name><uri>http://www.blogger.com/profile/09254729882677406339</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_Uo-3VIq5czQ/SJ4Nk-iSlqI/AAAAAAAAAAU/3x0G72EISl8/s1600-R/profile-photo.jpg'/></author><thr:total>2</thr:total></entry></feed>
