GDL: the Gnome Downloader

GDL is a downloader program written at NMSU for use with the HC11 miniboards. If you've already gotten access to the cs273 software, you should be able to execute it.

To execute it, give the command gdl. You'll get some warnings about undisplayed windows, and then the downloader itself will appear. The downloader is a notebook with three pages:

  1. The Setup Page. GDL Setup Page

    The Setup page is used to configure the downloader. As of this writing, it lets you control four boolean options, select a serial port to use for communication with the miniboard, select a font for use in the Communicate page (see below), and the minimum valid EEPROM address.

    hardware-echo on
    This needs to be turned on for HC11-based boards that automatically echo characters that are sent to them. This is true of our boards, so you want to turn this on.

    bulk-erase optional
    You can either have the downloader erase all the memory in the HC11 and write it fresh, or have it only write the individual memory locations that need to change from whatever their old programming was. Most of the time, it will be faster to turn this on.

    bootstrap-feedback off
    Surprisingly, it's possible to have hardware that automatically echoes characters most of the time, but not when doing the initial bootstrap download. That's true of our boards, so you want this option turned off.

    debug (boolean) off
    If you turn this button on, huge amounts of debugging output will be dumped to the screen. This option is there for my use in debugging the software; you really don't want to use it.

    serial port (filespec) /dev/ttyS0
    This selects the serial port to use for communicating to the miniboard. The top serial port on the PC is /dev/ttyS0; the bottom one is /dev/ttyS1. You need to set this option correctly for whichever one you're using. if you aren't able to select one of them, the permissions are set wrong on the PC you're using, and COG will have to fix it.

    commfont
    This is the font to be used by the Communicate window (see below). Good choices are "Terminal" and "Terminus," if available.

    min-eeprom (hexadecimal number) f800
    The downloader is able to check your code to make sure you don't have the common bug of trying to put instructions or constants in RAM. You can set this to the starting address of EEPROM on the board, which is f800.

    Once GDL is setup properly, you shouldn't need to change it again.

  2. The Download page.

    GDL Download Page

    This page is used to actually download programs to the miniboard. You will only be able to download if you've selected good options from the Setup page.

    Downloading a program requires both GDL's Download page, and setting the miniboard up properly. On the miniboard:

    Now, in GDL, select the .s19 file you wish to download and press the Download button. As the program downloads, the Status bar will display the following:

    Downloading bootstrap loader
    First, a small bootstrap loader is loaded into RAM. During this step there is no way to check whether it is working, so it will always look like progress is being made. This step will even appear to succeed if the board isn't connected to the serial port at all!

    While the bootstrap loader is being downloaded, the PWR and RCV lights should flicker.

    Syncing with Miniboard
    Once the bootstrap loader has been downloaded to the miniboard, the miniboard will turn the red PWR light on brightly. At the same time, GDL will try to establish communication with the miniboard; if it doesn't succeed at first, it will make several attempts.

    This step typically goes very quickly. You may not even notice it, unless it isn't able to establish communication. This is the first place where GDL has an opportunity to notice a problem with the download.

    Bulk erasing EEPROM
    If you requested bulk erasing on the Setup page, this will happen now. This will be a very quick step, also.

    Downloading program to EEPROM
    Now the actual program is downloaded. Of course, how long this takes depends on how large your program.

    Ready to download
    When the download is complete, the status bar will return to this state.

  3. The Communicate Page

    GDL Communicate Page

    This page is used for serial communication with the miniboard. What appears here is whatever is appropriate for your program.


Last modified: Mon Feb 16 14:15:54 MST 2004