Sunday, 12 November 2017

RiscV Instruction Disassember

Debugging a RiscV processor in a waveform viewer?  You need to disassemble the instructions you see flowing down the pipelines.  To convert the 32bit encodings to sensible assembler instructions you can understand, use this:

RiscV instruction disassembler: updravt.com


Wednesday, 31 May 2017

Creating a virtual Linux machine on Windows


  1. Download virtualbox 
    • https://www.virtualbox.org/
    • Download the latest version of the 'windows host' 'platform package'
  2. Install VirtualBox
    • Use the default settings
    • 'Continue Anyway' on the windows logo warnings
  3. Download Linux *.iso file.  If running 32bit windows download 32bit isoEither
    • If running 32bit windows download 32bit iso
      • Search Internet to find out if running 32bit windows
    • If running 64bit windows download 64bit iso
    • Download either
      • Ubuntu: https://www.ubuntu.com/download/server , or
      • CentOS: https://www.centos.org/download/
  4. Run VirtualBox
  5. Create Virtual Machine
    • New / Name: / Type: Linux / ~Version (Ubuntu or RedHat, 32 or 64) / OK
    • Use defaults for everything else
  6. Use .iso for VM drive so it can boot from it
    • Select VM
      • probably selected already
    • Settings/Storage/Click on 'cd/dvd' image on the 'Empty' line below 'Controller IDE'
    • Attributes/Secondary IDE Master/ Click on CD image to the right
      • Choose virtual optical disc file ... / point to *.iso file /OK
  7. Press Start button to boot from *.iso

Sunday, 21 August 2016

13 reason's why M'era Luna's better than Glastonbury


  1. Flushing Toilets
  2. Cheaper: Glastonbury 2016 £229 (3 days), M'era Luna 2016 €94 (2 days)
  3. Contemporary music.  Not just loads of has-beens pumping out the music that was great 20 years ago but less so now, and also the musicians themselves have lost the edge somewhat.
  4. Better music.  OK this is obviously subjective, but I prefer the Mera Luna music.
  5. Age diversity.  The full spectrum of ages attend, participate and enjoy it: 16-70.  (OK M'era Luna probably fails on all other types of diversity.)
  6. Groups not couples.  Groups of friends can no longer attend Glastonbury tickets are sold in pairs and are basically a lottery, so only a few of a group of friends can attend.  Everyone walks around Glasto in pairs not groups :-(
  7. Clothing.  EVERYONE makes an effort at M'era Luna.
  8. Showers.  Yup Showers at M'era Luna
  9. M'era Luna timetable published on your app weeks before the event, so you can plan it.
  10. All acts start and stop on time.  So you can watch, and plan to watch two favourite bands that are on back to back on different stages.
  11. Only 2 stages, right next to eachother, so no hours of traipsing through the mud against the flow of people to the next venue.
  12. One of the stages is inside an old aircraft hangar.  Dry if it rains and atmospheric during the day.
  13. No Litter.  €1 deposit on drinks containers. €5 deposit on an empty camping bin.
  14. Everyone's lovely.  Well that's true of Glastonbury too though :-)

Wednesday, 11 November 2015

Buy a Chromebook from Amazon.com not Amazon.co.uk and save 40%

So I wanted to buy the cheap and cheerful Acer Chromebook CB3-111 for both of my big kids.  The spec seems OK for low usage i.e. just for them.  (We have 5 people always logged in with multiple tabs on our main 'kitchen' chromebooks so they need more poke.)



The price on amazon.co.uk is currently £179.99 + £0 Shipping ($273.17 today), whereas on  amazon.com it is currently $149.99 + $45.06 Shipping & Import Fees Deposit to United Kingdom ($195.05 or £128.48).

That is a staggering extra 40% to buy in the UK even after shipping and import fees!

So I bought two of them from the US.

These are the differences between the US and the UK Chromebooks I bought:

  • US version has a us keyboard: no £ button, # and " moved around.  Also no 'Alt-Gr' which makes getting the £ & € symbols trickier.
  • US version has a US power connector.  However the power supply works equally well the UK and the US.  I bought a US to UK power adapter like this one which works perfectly.  An alternative would be to buy a replacement power cable like this one. A white cable would look better.
  • UK version cost 40% more than the US version after shipping and tax.
  • US version took 2 weeks (14 days) from order to delivery.  It actually wasn't even shipped for the first week.
OK I'll get off my soapbox now.

If you want to know what Chromebooks are available and what there specs are.  I use this comparison website.  

Saturday, 12 September 2015

Using Cloud9 with BitBucket

Free online version control and IDE: Bitbucket & Cloud9 using Git

If you know how to program, and want to version control a project online this might help.

I wanted to develop a Python program and run everything online because my main computer is now a chromebook, and I want to access it from wherever I am.  This is a step by step guide to how I did it.

Looking around on the Internet it looks like Bitbucket and GitHub are the obvious choices for actually storing, and version controlling the project files in a 'repository'.  

Both of these are also integrated with the Cloud9 IDE (Integrated Development Environment) which allows you to see the code you edit, run, and debug it.

Whilst Git may be fast for large repositories (the set of files under version control), it doesn't have an intuitive user interface. However I know how to use it so I chose that option rather than mercurial.

Cloud9 and Bitbucket: Step by step guide

You need to create an account for both of these.  I used google to login to Bitbucket and then I used Bitbucket to login to Cloud9, so no new passwords to create!
  • Create Bitbucket Account
    • bitbucket.org
    • Get Started
    • Get Started with your Google account
    • Sign into Google and allow BitBucket permission to access Google
    • Select Personal or 5 member team account for free usage
    • Set a password later
  • Create a repository in Bitbucket.  
    • You should already be logged into bitbucket.org
    • On the Get Started page it already have a button to create a repository, otherwise "Create / Create Repository"
    • Choose a name and the default options, including git
  • Create Cloud9 Account
    • c9.io
    • Try it now
    • Bitbucket
    • Grant access
  • Create a Cloud9 Workspace linked to your Bitbucket Repository
    • Repositories
    • Hit 'Clone to edit' on the Bitbucket repository you just created
  • Create and run a simple python file
    • File / New file
    • Paste this code into it
#!/usr/bin/python
print ("Hello World")

    • File / Save / hello.py
      • You should now see the hello.py appear in the workspace directory structure on the left
    • Hit the Run triangle to run it!
      • It should say hello world in a window at the bottom of the screen
  • Save this file in the repository
    • Select the 'bash -"cloning ..."' tab, and enter these commands:
    • git status
      • Shows state of the repository. Should show hello.py isn't tracked
    • git add hello.py
      • Add file to list of files to be stored in the repository
    • git status
      • Show file is now added
    • git commit -m "first commit"
      • Save the file in the version of the repository on cloud9 (not on bitbucket though which is where we really want it saved eventually)
    • git status
      • File is not
    • git push --set-upstream origin master
      • type 'yes' to confirm connection to bitbucket at the scary looking 'are you sure you want to connect?' message
      • This is a 'Magic' command and does this:
        • pushes the files in the cloud9 version of the repository to the bitbucket version of the repository
        • 'origin master' tells the git the exact details of the repository it needs
        • the '--set-upstream' bit means you never need to add the 'origin master' bit ever again :-)
  • Check the file has made it to bitbucket
    • bitbucket.org
    • click on the repository in the 'overview' pane
    • navigation / source
      • hello.py should be there!
    • click on hello.py to see the source code!
  • Edit file and update it on the repository
    • c9.io
    • open workspace
    • click on 'hello.py' to edit it
    • add a line so it reads like this
#!/usr/bin/python
print ("Hello World")
print ("Hello Again")
    • hit run (which also actually saves it)
    • Select the 'bash -"cloning ..."' tab
    • git status
      • shows we haven't added it yet, but it has changed
    • git add hello.py
    • git status
    • git commit -m "testing repo again"
    • git status
    • git push
      • no need to add the 'origin master' bit this time
And you're done.  You can check it's made it to Bitbucket correctly in the same way as above.

Happy coding!

    Thursday, 10 September 2015

    Create a shortcut for each different profile on Chrome

    The whole family use Chrome as their browser.  On Windows machines we like to all have a browser open each with our own profile on it.  To launch each profile we single click on our shortcut in the Quick Launch toolbar.

    I had to reinstall windows (HDD fail), but I couldn't work out how to get the shortcuts back.  The Internet wasn't very helpful and had lots of mediumly hard sounding solutions.  So I had to work it out myself.  Here it is:

    How to create a shortcut for each profile on Chrome:

    1. Login to the profile you wish to create a profile for (left click on the current profile name at the top right of the browser and follow your nose)
    2. Hit the customize and control button in the top right hand corner (3 horizontal lines)
    3. Settings
    4. People
    5. Double click on the profile you want to create a shortcut for which is labeled as 'current'
    6. Choose a picture (or photo) so you can identify which profile shortcut is which.
    7. Click on the 'Add desktop shortcut' button << money shot
    You can now drag the shortcuts onto the quick launch bar.