Home / 0.8
Name Modified Size InfoDownloads / Week
Parent folder
canola-0.8.D001.tar.gz 2012-05-20 1.6 MB
canola-0.8.tar.gz 2012-05-20 1.6 MB
canola-0.8.D001.ae 2012-05-20 3.6 MB
canola-0.8.D001.pdf 2012-05-20 40.8 kB
canola-0.8.D001.README 2012-05-20 10.5 kB
Totals: 5 Items   6.8 MB 0
Read Me(Canola)                                                Read Me(Canola)



DESCRIPTION
       The  canola(1) command is used emulate a Canon Canola 1614P, a program-
       mable desktop calculator from 1972.  It had 14 floating point memories,
       and  240 instructions of program.  A few still survive today in working
       condition.

DEPENDENCIES
       The following libraries are required to build the Canola project:

       g++     You will need a C++ compiler.  The GNU C++ compiler is what the
               author uses.

       groff   The documentation is formatted using GNU Groff.

       Boost Library
               This  is  used  for  several  useful C++ classes and templates.
               This is usually called "libboost-dev"  or  similar  on  package
               based systems.

       libexplain
               This  is  used  for  all error reporting, when operating system
               errors occur.  This is usually called "libexplain-dev" or simi-
               lar on package based systems.

       Gtkmm-3.0
               The  C++  binding  of the Gnome-3 widget library is used.  Note
               that this library tends to have numerous dependencies.  This is
               usually  called  "libgtkmm-3.0-dev" or similar on package based
               systems.

       libjpg  This is used to read the JPEG images that are used to build the
               various  custom  button  and  widgets.   This is usually called
               "libjpg62-dev" or similar on package based systems.

       libpng  This is used to read the PNG images that are used to build  the
               various  custom  button  and  widgets.   This is usually called
               "libpng12-dev" or similar on package based systems.

       sharutils
               This provides the uudecode(1) command, used to turn .uue source
               files into binary files during the build.

BUILDING
       This  is  traditional  open source software, and the usual build method
       applies.  After fetching the tarball, do the following:

              $ tar xzf canola-0.8.D001.tar.gz
              $ cd canola-0.8.D001
              $ ./configure --prefix=/usr
              $ make
              $

       The software includes a test suite:

              $ make sure
              Passed all tests.
              $

       If you wish to install the software, only one more command is required:

              $ make install
              $

       All done.  See the canola(1) man page for more how to use it.

COPYRIGHT
       canola version 0.8
       Copyright (C) 2011, 2012 Peter Miller

       The canola program comes with ABSOLUTELY  NO  WARRANTY;  this  is  free
       software  and  you  are welcome to redistribute it under certain condi-
       tions; for details see the LICENSE file in the source tarball.

AUTHOR
       Peter Miller   E-Mail:   pmiller@opensource.org.au
       /\/\*             WWW:   http://miller.emu.id.au/pmiller/

RELEASE NOTES
       This section details the various features and bug fixes of the  various
       releases.

   Version 0.8 (2012-May-20)
       * The  emulator now implements more of the conditions described on page
         21 of the 1614P Instruction Manual, concerning how and when  floating
         truncation takes place, and what is displayed for overflow.

       * The  emulator  now  as  an Edit->Preferences dialog box, for changing
         some aspects of how the emulator is presented.

   Version 0.7 (2012-Jan-10)
       * Antonio  Arias  <antonio.arias99999@gmail.com>  discovered  that  the
         Makefile.in file was missing all of the entries needed to install the
         PNG files needed by the GUI. This has been fixed.

   Version 0.6 (2012-Jan-09)
       * Antonio Arias <antonio.arias99999@gmail.com> discovered that one  too
         many  "gui"  path components were added when searching for .png files
         for the custom widgets.

       * A bug has been fixed in the management of transparency  of  the  card
         reader  window.   The  use  of Gtk::Window::set_opacity was wrong, it
         makes  the  whole  window,  including  the   contents,   transparent.
         Instead, the window needs to (a) have an RGBA visual, and (b) set the
         background to transparent.

   Version 0.5 (2012-Jan-07)
       * The canola(1) program now includes a card reader animation,  with  an
         overlayed  undecorated  window.   If  a compositing window manager is
         used, it will be transparent as well.

       * The dot down the left hand side  of  the  program  listing  has  been
         removed, because the real Canola 1614P doesn't print one.

       * The  canola(1)  command  is  now able to save the data memories as an
         assembler program file.  This can be useful when producing cards sets
         of  constants,  as seen in the GF series of cards in the Program Card
         Package.

       * The canola(1) command now has a more faithful replicas of  the  Power
         Button,  the  Program  Selector  Switch  Program Mode Switch, and the
         Rounding Switch.

       * The canola-card-scanner(1) command is now able to look for  the  rows
         and  columns  of  holes  by  itself, making it more able to cope with
         slight differences with image scanner DPI settings and alignment.

       * The address field in the Debugger pane can now  be  modified  by  the
         user.  This is helpful when debugging jumps.

       * The canola-asm(5) man page now has details of each opcode.

       * The  Program Card Package (included with each 1614P) is now complete,
         the final MS-18 to MS-25 subroutines have been added.

   Version 0.4 (2011-Dec-30)
       * There is now a PDF of the Canola project's Reference  Manual  on  the
         web site.

       * The  Program  Card  Package  now  includes MS-7 a**n, MS-8 a**x, MS-9
         10**x, MS-10 log10(x), MS-11  exp(x),  MS-12  ln(x),  MS-13  sinh(x),
         MS-14 cosh(x), MS-15 tanh(x), MS-16 asinh(x), and MS-17 acosh(x).

       * The Program Card Package is now available on the web site, as example
         software, linked from the Documentation page.

       * The canola-card-scanner(1) program now also  understands  JPEG  image
         files, in addition to the PNG files it understood previously.

       * Hans  Dorn  <hans.dorn@gmail.com>  reports  that  the  START  keys is
         ignored in LRN mode, and now the emulator conforms.

       * Hans Dorn <hans.dorn@gmail.com> reports that the  $710..$715  opcodes
         cause  an overflow and display 9999999999999999, and now the emulator
         conforms.

   Version 0.3 (2011-Dec-24)
       * The Test Run Program still does not perform correctly, so  there  are
         still  some instruction set subtleties that have yet to be discovered
         and addressed.  There are many new questions  in  the  questions.html
         file on the web site.

       * The  MS-3 to MS-6 card sets are now included, in addition to MS-1 and
         MS-2 previously.

       * Thanks to scans provided by Markus Brenner <hyperion2@utanet.at>, the
         Statistics ST-1 to ST-4 card sets are now included.

       * A  bug  has been fixed in the handling of the EJ instruction.  It was
         not correctly detecting whether or not the user had entered data.

       * Thanks to scans provided by Markus Brenner <hyperion2@utanet.at>, the
         Group Function GF-1 to GF-4 card sets are now included.

       * The  program  load  and  program save dialog boxes now start from the
         current directory, rather than the Recently Used list.

       * The emulator now include support for using the [UJ] key when in [OPE]
         mode, to cause execution to start immediately from the indicated flag
         jump.

       * Chris Baird <cjb@brushtail.apana.org.au> contributed his prime number
         program, and his quadratic equation solver.

       * The  error dialog is no longer modal.  If more than one error happens
         before you can click "OK" then all of them will  accummulate  in  the
         secondary text area.

       * Hans  Dorn <hans.dorn@gmail.com> discovered that the real 1614P isn't
         very fussy about the key following RM3~ (et al).  It simply uses  the
         lower 4 bits of whatever key you press.

       * Markus  Brenner  <hyperion2@utanet.at>  responded  to the "Questions"
         page on the web site with answers to many of the questions, and those
         answers have been incorporated.

       * The file menu entry Program Card System now throws up a dialog if you
         don't have it in LRN mode.  You can still choose OPE, but the default
         is LRN.

       * Chris  Baird <cjb@brushtail.apana.org.au> discovered some build prob-
         lems with the latest version of libpng, as they phased out some long-
         deprecated struct accesses.

       * There  is  a  new  canola-card-printer(1)  program  for drawing Canon
         Canola 1614P card images.  It can draw them as PDF, PNG or  SVG.   It
         can draw the classic "blue" cards, or the blank green ones, etc.

   Version 0.2 (2011-Nov-27)
       * The  state machine controlling the calculator's arithmetic and opera-
         tor precedence has been extensively tested and improved.

       * A unit test for MS-1 (sin) has been added, and another bug in it  has
         been foxed.

       * There  is  a new debugger pane.  It displays the register values, the
         memory values, and when a program is executing, it shows  the  source
         code with the nect opcode to execute highlighted.

       * The  test  suite  has  been supplemented with examples from the 1614P
         Calculator Instruction Manual.

       * The [K] key (constant mode) is now implemented, for both  multiplica-
         tion and division.

       * A bug in the SM<n> opcodes has been fixed, they were storing into the
         wrong location.

       * The Program Print key on the printer is now permitted in Program Mode
         OPE.

   Version 0.1 (2011-Oct-27)
       * Program Mode Switch now supported for all modes.

       * Retro widgets now implemented for all keyboard buttons.

       * Most  opcodes  are  now implemented, including jumps and subroutines.
         Some opcodes still have subtle problems.

   Version 0.0 (2011-Oct-01)
Reference Manual                    Canola                     Read Me(Canola)
Source: canola-0.8.D001.README, updated 2012-05-20