Learning the Guitar, Pt 2

We’re into June of 2014, and am still continuing with the exercises I’d outlined in part 1. My guitar instructor has encouraged me to focus on a song, although I’d really prefer to get chord changes and a few other techniques down a bit better first. So, while spend some time on that song, which is “Hallelujah” by Leonard Cohen, I’m still doing my other exercises, primarily:

  • strumming patterns with different chord progressions
  • finger style exercises
  • fretboard exercises

I haven’t really continued on with different scales or the 5th/6th strings lately. Neither am I learning additional chords. I have improved significantly on the F chord though.

I think I’ll continue with these exercises, especially the strumming until I’m able to use different strum patterns with a song. Singing along with that will also add another level of complexity which I’m also working on.

Continue Reading

Learning the Guitar, Pt 1

At the young age of 59, I decided it’s about time I started to learn the guitar. I’ve owned a cheap Yamaha classical guitar since the 1970’s, but never got beyond page 18 of the Alfred’s beginner guitar course. After that, things got kind of complicated and I just gave up. This time, I thought I’d try a different approach and see what other learning methods are out there.
Continue Reading →

Continue Reading

My Résumé

I graduated from Ryerson University in 1981 as an Electronics Technologist and began my career repairing electro-mechanical equipment followed by microcomputers. I later entered IT and designed/implemented and managed network and support infrastructure for two organizations of up to 1000 employees. I continue to provide IT support for a few small companies and implement web sites based on the Drupal and WordPress frameworks.

I also volunteer with Scouts Canada and spend some of my spare time re-learning digital electronics with the use of an Arduino, a Raspberry Pi, and a few FPGA/CPLD/SoC development boards as well as playing with Linux, Drupal, WordPress and so on. . .

IT Infrastructure RésuméDownload IT Web RésuméDownload

 

Continue Reading

On Web based WYSIWYG Editors

Actually, I’m primarily looking at YOU WordPress and TinyMCE!

When creating sites, one of the big draws of using WordPress is that my clients can add/edit content on the site with a built in WYSIWYG editor called TinyMCE. As a result, they don’t need to worry about having to deal with HTML, or worse. The problem for me is that some of the content requires code not available with TinyMCE. What I do is switch from the WYSIWYG mode to the built in text editor and make my changes.What I have found is that TinyMCE strips out some of my code, effectively ruining the changes.

On several forums, users have experienced these problems and the solution was to ‘use one or the other‘ whereby you would edit your user profile and and disable the visual editor. This works well for us techies, except for the fact that:

  1. Some theme companies, such as Woo and Themeforest, provide additional functionality to the Visual editor that you can’t see if you use the Text editor.
  2. Themeforest provides a layout editor that requires the Visual editor to be enabled.
  3. Not many clients will put up with a text editor for adding/editing HTML content.

The closest I could get to the best of both worlds was to:

  1. Download TinyMCE Advanced.
  2. Configure TinyMCE Advanced to stop stripping out paragraph and break tags in the content.
  3. Always ensure I’m in the visual editor WYSIWYG mode before publishing/updating content.

Sometimes, I forget this and will invariably end up fighting with the WordPress editor. After a long bout today, I think I’ll remember this process a bit longer.

Continue Reading

Arduino Resources

References

  • http://vancouverroboticsclub.org

Suppliers

  • http://www.seeedstudio.com
  • http://arduino-direct.com
  • http://www.makershed.com
  • http://www.adafruit.com
  • http://www.sparkfun.com
  • http://www.robotshop.com (Canada)
  • http://www.rpelectronics.com (Vancouver)
  • http://www.mainelectronics.com (Vancouver)

Continue Reading →

Continue Reading

Flight Simulator Modification

The following article was submitted by myself to Compuserve circa 1983. It provided a way to get colour on an RGB screen while running FS1. At the time, MS:FS only supported colours via dithering on an NTSC monitor. As I recall, my program intercepted a disk interrupt and changed the CGA settings each time the disk was called.

I had previously written a program called ‘star3d’ in 8088 assembler which displayed an animated starfield on the CGA, similar to the Windows screensaver starfield. I also ported that over to the Amiga in about 1986.


Flight Simulator RGB Modifications

By: Andrew Tuline

CIS: 70465,1223

The modifications included herein will allow an RGB monitor to show some colours using the Flight Simulator program. This modification is not perfect, nor is is very well tested. The user should make a copy of their Flight Simulator program using their favourite technique. As we know even the most obvious methods may elude us. Anyways, one of the bugs is, when the user enters the slew mode, the modifications are nullified.
Basically, the technique is to intercept the disk vector and setup a port for the colour display adapter for the needed values. I certainly hope, that by disclosing this technique, Microsoft doesn’t skin my hide. Anyways to modify your extra spare disk, boot up debug in DOS 2.0 and type the following:

Note: you need a system with at least 96K to use this modification as is.

L CS:0 0 0 1 (FLIGHT SIMULATOR DISK IN DRIVE A)
A 0
mov ax,201
mov dx,0
mov CL,2
mov ch,27
mov bx,1000
mov es,bx
xor bx,bx
int 13
jmp 1000:0
W CS:0 0 0 1

L CS:0 0 139 1 (FLIGHT SIMULATOR DISK IN DRIVE A)
A 0
push cs
pop ds
mov ax,0
mov es,ax
es:
mov ax,[4c] mov [70],ax
es:
mov ax,[4e] mov [72],ax
mov ax,48
es:
mov [4c],ax
es:
mov [4e],cs

cli
xor ax,ax
mov ds,ax
mov es,ax
mov ss,ax
mov sp,c0b0
mov cx,200
mov SI,7c00
mov DI,500
sti
repz
movsb
jmp 0:7c18

a 48
pushf
push cs
cs:
mov [74],ax
mov ax,5b
push ax
cs:
mov ax,[74] jmp F000:EC59 pushf
push ax
push dx
mov dx,3d8
mov AL,0a
out dx,AL
inc dx
mov AL,20
out dx,AL
pop dx
pop ax
popf
iret
W CS:0 0 139 1

The value 20 a couple of lines up sets up the colours for low intensity cyan/magenta/white. Good luck, and may the colours be with you!

Continue Reading

Infrared Circuit

Before integrating all of the circuits, let’s demonstrate the IR receiver circuit.

Get a Universal Remote and program/test it until you see output from the debugger of the Arduino. It seems to work well with the Universal Remote programmed as a Sony controller.

IR test code:


//
// Universal remote decoder example for Arduino
//
// This simple program reads/decodes the output of a Universal Remote and displays the value.
//
// The IRremote.h library was referenced and downloaded from these locations:
//
// http://www.arcfn.com/2009/08/multi-protocol-infrared-remote-library.html
// http://www.pjrc.com/teensy/td_libs_IRremote.html
//
// I used a universal remote, and programmed it until the software recognized the output.
// It was an Innovage Jumbo Universal Remote and programmed it as Sony 004.
//
// I also used a 3 pin KSM-603LM Optic receiver module where:
//
// pin 1 -> pin 7 of Arduino, pin 2 -> GND, pin 3 Vcc
//

#include

int RECV_PIN = 7; // A nice out of the way pin to connect the receiver to
IRrecv irrecv(RECV_PIN); // Initialize which pin we are receiving on
decode_results results; // Define the variable for storing 'results'

unsigned long oldmillis = 0; // Use my own delay to add a little debouncing

void setup() {
Serial.begin(9600);
irrecv.enableIRIn(); // Start the receiver
}

void loop() {
if (irrecv.decode(&results)) { // If there is a result . .
if (millis() - oldmillis > 300) { // Debounce for 300ms
Serial.println(results.value, HEX); // Print the value
oldmillis = millis(); // Reset the delay timer
}
irrecv.resume(); // Receive the next value
}
}

Continue Reading