modified: diffout.py
[GalaxyCodeBases.git] / c_cpp / etc / calc / custom / register
blobe686e6c710ecd583b512c748e896b3e5faf4fc47
1 NAME
2     register - set or print a custom register value
4 SYNOPSIS
5     custom("register", regnum[, value])
7 TYPES
8     regnum      int
9     value       any, &any
11     return      any
13 DESCRIPTION
14     This custom function reads or sets a value of a custom register.
15     A custom register can hold any calc value.
17     Without a value arg, the register value is return.  With a value
18     arg, the register is set with that value and the previous value
19     is returned.
21     The number of custom registers is defined at compile time.
22     There will be at least 32 registers although there could be more
23     added in the future.  It may be deterimed by:
25                 custom("sysinfo", "REGNUM_MAX")
27     The custom registers are initialized to 0 by the internal
28     function libcalc_call_me_first() during calc startup.
30     This custom interface is intented to make it easier to interface
31     with special purpose hardware.
33 EXAMPLE
34     > custom("register", 3)
35         0
36     > custom("register", 3, 45)
37         0
38     > custom("register", 3)
39         45
41     > custom("register", 7, 2i),
42     > custom("register", 8, 3i),
43     > custom("register", 7) * custom("register", 8)
44         -6
46 LIMITS
47     calc must be built with ALLOW_CUSTOM= -DCUSTOM
48     calc must be executed with a -C arg.
49     The regnum numbe bee an integer >= 0 and < REGNUM_MAX where
50         REGNUM_MAX is a compile time constant that is >= 32.
52 LIBRARY
53     none
55 SEE ALSO
56     custom
58 ## Copyright (C) 2007  Landon Curt Noll
60 ## Calc is open software; you can redistribute it and/or modify it under
61 ## the terms of the version 2.1 of the GNU Lesser General Public License
62 ## as published by the Free Software Foundation.
64 ## Calc is distributed in the hope that it will be useful, but WITHOUT
65 ## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
66 ## or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General
67 ## Public License for more details.
69 ## A copy of version 2.1 of the GNU Lesser General Public License is
70 ## distributed with calc under the filename COPYING-LGPL.  You should have
71 ## received a copy with calc; if not, write to Free Software Foundation, Inc.
72 ## 59 Temple Place, Suite 330, Boston, MA  02111-1307, USA.
74 ## @(#) $Revision: 29.2 $
75 ## @(#) $Id: register,v 29.2 2007/07/05 19:35:20 chongo Exp $
76 ## @(#) $Source: /usr/local/src/bin/calc/custom/RCS/register,v $
78 ## Under source code control:   2005/02/04 22:39:50
79 ## File existed as early as:    2005
81 ## chongo <was here> /\oo/\     http://www.isthe.com/chongo/
82 ## Share and enjoy!  :-)        http://www.isthe.com/chongo/tech/comp/calc/