]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/amd/NEWS
Virgin import of AMD (am-utils) v6.0a16
[FreeBSD/FreeBSD.git] / contrib / amd / NEWS
1 *** Notes specific to am-utils version 6.0a16:
2
3 - new ports:
4         hppa1.0-hp-hpux11.00 (works, not NFS V.3 due to missing headers)
5         mips-dec-ultrix4.3 (working, unverified)
6
7 - new minor ports:
8         i386-pc-bsdi3.1
9         i386-unknown-netbsd1.3.1
10         alpha-dec-osf2.1
11
12 - new options addopt:=ARG will "smartly" add and override options specified
13 in opts:=
14
15 - new amd.conf options:
16         pid_file: specifies the file to store the PID
17         hesiod_base: specifies the base for the Hesiod service
18         unmount_on_exit: if 'yes' will attempt to unmount all file systems
19                 when amd exits.
20
21 - amd.conf file is parsed after all other command line options.  If no
22 options specified at all, then use /etc/amd.conf by default.
23
24 - some variables' values are now compared case-insensitive as per specs,
25 such as host names, domain names, and more.
26
27 - NIS service uses a new isup() function to detect if the service is up
28 before using it.  Used to ensure amd doesn't clear the existing maps before
29 reloading them, unless the remote info service is working.
30
31 - new cdfs mount options: rrip, noversion, defperm, nodefperm (OSF)
32
33 - support efs/xfs separately on irix
34
35 - new -D info trace option to turn on info specific debugging, such as
36 RES_DEBUG for hesiod services.
37
38 - document updates and fixes
39
40 - new file MIRRORS lists official mirror sites (also in am-utils home page)
41
42 - new file BUGS lists known amd/OS bugs
43
44 - source restructuring: rename all Amd file-systems' sources to amfs_ARG.c
45 such that it matches the type:=ARG as well.  Free names afs/dfs for Andrew
46 F/S and Distributed F/S.
47
48 - checkpoint config.guess several times during the long configure, so that
49 if it is aborted midway, the bulk of the features discovered will be re-read
50 from the config.cache file.
51
52 - more systems support shared libraries (libtool 1.2)
53
54 - using automake 1.3 + more fixes
55
56 - bugs fixed:
57         use dynamic buffer for list of interfaces, not fixed size
58         output of amd -H duplicated if >2 interfaces
59         -D mem for hlfsd not on by default (so it will daemonize)
60         linux looks for ext2fs before ufs
61         CDFS looks for 'isofs' mount type as well
62         compile on Solaris 2.6 with /opt/SUNWspro/bin/cc
63         various additional fixes which gcc 2.8.x reported
64         print syslog help string based on what's supported
65         correctly ignore loopback interface on SunOS 3.x
66         don't use -lucb for strcasecmp
67         hlfsd's dump file securely written in /usr/tmp/hlfsd.dump.XXXXXX
68         inherit NFS V.3 mounts correctly
69         write pid file securely
70
71 *** Notes specific to am-utils version 6.0a15:
72
73 - new ports:
74         alpha-unknown-linux-gnu: works
75         i386-unknown-netbsd1.3: fully working
76         *-sun-sunos3: compiles, not tested
77
78 - updated ports:
79         m68k-next-nextstep3: cleaner compile, works.
80
81 - new file system type nfsl (NFS Link).  Uses nfs if file system is remote,
82 and link if it is local (based on if $rhost equals the host name).
83
84 - support for Solaris cachefs.  Requires setting fs, rfs, and a new variable
85 cachedir.  See documentation for explanation, examples, and caveats.
86
87 - support negated selector functions such as !exists(/foo/bar)
88
89 - wire, network, netnumber, in_network() selectors now match against all
90 locally attached networks (by either name or number), not just the first two
91 interfaces.
92
93 - new program pawd (and man page for it) --- Print Automounter Working
94 Directory, to print the proper pathname of the cwd or any other pathname,
95 adjusted for automounter paths, while avoiding mount points.
96
97 - two new switches to amq: -U will force using UDP only; -T will force using
98 only TCP to communicate with amd.  If neither (or both) are specified, amq
99 will try TCP first, and if that failed, will try UDP.
100
101 - support syslog facilities, using "amd -l syslog:facility".  Old behavior
102 when using only -l syslog is to use the LOG_DAEMON facility.
103
104 - you may specify browsable_dirs=full, to get a listing of all entries
105 (other than /default), including those with '*' wildcard and '/'
106 characters.
107
108 - amd -D trace now also includes as much of struct nfs_args as can be
109 displayed.  Useful in figuring out what the kernel really gets during a
110 mount(2), as opposed to what the /etc/mnttab file says.  -D trace also
111 traces the xdr_* functions.
112
113 - support for versions of shared libamu version.  upped version from 0.0.0
114 to 1.0.0.  each am-utils release that will change the library will also
115 update its version.
116
117 - amd/ops_TEMPLATE.c: a new template file for those brave enough to try and
118 implement a new amd file system.  Includes comments and other info useful
119 for developers.
120
121 - if localconfig.h exists in the current directory during the run of
122 configure, it is included in all am-utils sources.  This allows courageous
123 developers to make certain modifications during compilations, and especially
124 turn off undesired features (not very recommended).
125
126 - documentation types and updates for all new features, ports, etc.
127
128 - bugs fixed:
129         support NFS mount options grpid and maxgrps
130         nextstep: set NFS success code to 0 (NFS_OK), not 1 (EPERM)
131         bsdi2: set NFS success code to 0 (NFS_OK), not 1 (EPERM)
132         set NFS V.3 mount table names to "nfs" if vers/proto exist
133         use mkstemp() if possible (more secure)
134         ctl-amd looks for amd.conf in ${prefix}/etc after /etc
135         hpux: use "ignore" mount table type
136         openbsd2.2: turn off "noconn" mount option, so only connected used
137         fixed memory leak in hlfsd (don't setpwent after endpwent)
138         all NFS3 systems should have proto/vers mount/amd options
139         DEBUG_MEM compiles and prints something more useful
140         uninit_mntfs(): free() mf_private *after* it is used
141         browsable_readdir: fewer bytes sent back to kernel for each chunk
142         mount_toplvl: don't free() an automatic variable!
143         amd should chdir() to / before daemonzing (for core dumps etc)
144         cdfs should be called 'cdfs' not whatever the mnttab type is
145         amd -v: don't print "FS:" list twice when >=2 net interfaces
146
147 *** Notes specific to am-utils version 6.0a14:
148
149 - updated ports:
150         powerpc-ibm-aix4.2.1.0: NFS V.3 works
151
152 - minor new ports:
153         sparc-sun-sunos4.1.3C
154         m68k-sun-sunos4.1.1 (sun3)
155         mips-sgi-irix5.2
156
157 - new option to amd, -O ARG, will override the operating systems *name* with
158 ARG.  Corrected documentation for amd -o ARG --- it overrides the operating
159 system *version* and not the name as the docs incorrectly stated.
160
161 - logging now behave more like syslog: will not print repeated strings, but
162 rather a count such as "last message repeated N times".  (N will not exceed
163 100.)
164
165 - restructured the code which deals with the numerous possible fields and
166 flags that are set in struct nfs_args.  That code was moved to libamu as
167 the functions compute_nfs_args() and compute_automounter_nfs_args().
168
169 - bugs fixed:
170         mnttab name ufs/cdfs/pcfs/etc filesystems corrected
171         use pmap_ping for amq (a must for secure portmappers, bsdi2/3)
172         test for xfs (irix) as a disk-based filesystem
173         set correct nfs_prot headers for Solaris 2.5
174         removed stale code from lostaltmail.in
175         lostaltmail will look for conf file in multiple locations
176         assorted documentation corrections
177         amq does not print "get_secure_amd_client" if run as root
178
179 *** Notes specific to am-utils version 6.0a13:
180
181 - new in_network(ARG) nomadic selector, true if ARG is the name (or number)
182 of any of this host's network interfaces.
183
184 - removed variables primnetname, primnetnum, subsnetname, and subsnetnum.
185 (Kept "wire" and its alias "network", and "netnumber".)
186
187 - include am-utils.dvi and am-utils.ps in distribution.
188
189 - hlfsd supports new option -P ARG, for reading password map off of file
190 ARG.  Allows you to use the hlfs redirector using paths other than user's
191 home directories.
192
193 - use a replacement yp_all for some systems (irix) known to have a broken
194 one which leaks a file descriptor each time called.
195
196 - if remote NFS server is down or does not support portmap, downgrade
197 machine to NFS V.2 and retry again later.
198
199 - bugs:
200         don't redefine yywrap on systems using a modified flex
201         use correct "ignore" mnttab/mount option on hpux for df(1)
202         use nfs_args' fsname field (hpux) to avoid syncer/mount(1) problems
203         don't add ops_ufs.o twice to Makefile's $(OBJS)
204         don't fail if autofs listener fails to initialize
205         hlfsd should test if run as root after usage() and getopt
206
207 - minor code cleanups for netbsd
208
209 - html docs now in http://www.cs.columbia.edu/~ezk/am-utils/
210
211 - added README file in binaries ftp directory
212
213 *** Notes specific to am-utils version 6.0a12:
214
215 - minor or updated/broken ports fixed:
216         hppa1.1-hp-hpux10.10:   compiles, untested (probably works).
217         hppa1.1-hp-hpux9.05:    compiles, untested (probably works).
218         hppa1.1-hp-hpux9.07:    compiles, untested (probably works).
219         m68k-hp-hpux9.00:       compiles, untested (probably works).
220         rs6000-ibm-aix4.1.4.0:  compiles, untested.
221         sparc-sun-solaris2.6:   works w/ NFS V.3.
222         sparc-sun-sunos4.1.4:   compiles, untested (probably works).
223
224 - new ports:
225         powerpc-ibm-aix4.2.1.0: compiles w/ NFS V.3, untested.
226
227 - wire-test also checks for combinations of NFS protocol/version from the
228 client to a remote (or local) host.
229
230 - conf/mtab/mtab_file.c: use flock() to lock the file, and fcntl() if
231 flock() is not available.  (Used to prefer fcntl() over flock().)
232
233 - bug fixes:
234         tli get_nfs_version() gets into an infinite loop
235         tli get_nfs_version() should time out faster
236         sockets get_nfs_version() should work w/ secure portmappers
237         ESTALE returned for NFS mounts for SunOS 4.x fixed
238         do not exceed HOSTNAMESZ for nfs_args.hostname (get ENAMETOOLONG)
239         properly initialize some mntent_t fields (fsck, freq, mnt_time)
240         properly initialize some pcfs_args fields (mask, uid, gid)
241         properly initialize some cdfs_args fields (ssector)
242
243 *** Notes specific to am-utils version 6.0a11:
244
245 - bug fixes:
246         amd could not NFS mount v.2 servers from v.3 clients
247         hlfsd will only use first occurrence of home dir for same uid
248
249 *** Notes specific to am-utils version 6.0a10:
250
251 - MAJOR DOCUMENTATION UPDATE! (first time in 6 years)
252
253 - new ports:
254         m68k-next-nextstep3: configures, compiles, not tested.
255
256 - preliminary autofs support.  See README.autofs for details.
257
258 - new amd.conf [global] yes/no keywords:
259         show_statfs_entries:    shows number of entries for df(1)
260         fully_qualified_hosts:  use FQHN for NFS/RPC authentication
261
262 - detect down remote hosts faster
263
264 - log output of "amd -v" at startup
265
266 - removed $osver override for solaris: now it is 2.5.1, not 5.5.1
267
268 - buildall will use gmake first if available
269
270 - bugs fixed:
271         amd core dumped when remote host was down
272         allow up to 1024 entries back from readdir()
273         amd.conf works even if only [global] option defined
274         avoid using bad memcmp() implementations
275         fixed meaning of plock [global] option (was reversed)
276         hlfsd infinite loop unless compiled with --enable-debug
277         NIS code works with NIS+ servers in NIS compatibility mode
278         reset tag fields in amd.conf so they don't carry to other entries
279
280 *** Notes specific to am-utils version 6.0a9:
281
282 - new ports:
283         sparc-sun-solaris2.4:
284                  configures/compiles, and runs (no NFS V3)
285         i386-unknown-openbsd2.1:
286                 configures/compiles, runs (NFS V3)
287
288 - updated ports:
289         i486-ncr-sysv4.3.03: configures/compiles, not tested
290
291 - Multiple amd support: new amd.conf [global] key "portmap_program" can be
292 used to specify an alternate RPC program number for amd to un/register.
293 Allowed numbers range from 300019 to 300029.  A matching new option for amq:
294 -P prognum, will use an alternate program number to contact.
295
296 - man pages:
297         amd.conf.5      new
298         mk-amd-map.8    new
299         amd.8           updated
300         amq.8           updated
301         (other man pages required minor updates)
302
303 - shared libraries support expanded.  Using GNU libtool-1.0.  You can build
304 a shared version of libamu, and link with it accordingly, by specifying
305 --enable-shared to configure.  Default is --enable-static --disable-shared,
306 and you can mix and match.  See "INSTALL" file for listing of systems on
307 which shared libraries seem to build and work fine.
308
309 - new option: amq -p, will return the PID of the running amd (local or
310 remote).  Uses a new RPC message.  Useful especially in "ctl-amd stop".
311
312 - new configure script options --enable-ldflags, for specifying -L flags.
313 The older --enable-libs is to be used only for -l options.
314
315 - two new LDAP map options for amd.conf: ldap_cache_seconds and
316 ldap_cache_maxmem.
317
318 - new script, am-eject from Debian linux's version of amd-upl102.
319
320 - additional passwd map support using var[0-3], from Debian folks.
321
322 - hesiod code cleanup.  works for hesiod 1.3 as well as 3.0.
323
324 - removed defunct -h option from amd.
325
326 - started using automake-1.2.  This fixed several bugs that caused some
327 versions of yacc/lex and non-GNU make to fail.
328
329 - bug fixes:
330         amd/hlfsd mounts should be hidden from df(1)
331         use "noconn" option for nfs mounts (multi-homed hosts)
332         don't use connected sockets on linux before 1.3.10 (from Debian)
333         better checks for [gn]dbm
334         forbid excessive retries after timeouts (from Debian)
335         readdir(): don't skip over map entries with prefix, and include it
336         more assorted linux fixes from Debian folks
337         lofs mount on svr4 was broken
338         find default value of $karch from uname() not $arch
339         hlfsd failed to mount itself on some little-endians
340
341
342 *** Notes specific to am-utils version 6.0a8:
343
344 - new ports:
345         i386-unknown-netbsd1.2.1: configures/compiles (with NFS V.3), works,
346                                   but some OS stability problems exist.
347
348 - updated ports:
349         hppa1.1-hp-hpux9.01:
350                         now tested and working
351         rs6000-ibm-aix3.2 and rs6000-ibm-aix3.2.5:
352                         now tested and working
353
354 - fixed browsable directories (readdir) code.
355
356 - better methods to find amd/hlfsd pid to kill in ctl-{amd,hlfsd}
357
358 - "ignore/auto" mount types fixed for irix, sunos, and others, so "df" does not
359 show amd mounts by default (but GNU df -a does).
360
361 - each time amd is built, a new "build" version is incremented.  See amd -v.
362
363 - man page for fsinfo added
364
365 - empty fillers for new file (bsd44) systems: nullfs, unionfs, umapfs.
366
367 - when amd is not running, or portmapper is down, make amq timeout faster (5
368 sec) than system default, usually 4-5 minutes.
369
370 - bug fixes:
371         hlfsd mount got "protocol not supported"
372         first regular map in amd.conf didn't inherit global options
373         make "bad" versions of lex still work with amd/conf_parse.l
374         check for 'nodev' option, not 'nondev'
375         typo in "ro" option, and fillers to ac{reg,dir}{min,max} and others
376         amd.conf parsing done before switching default log/debug options
377         allow doubly-quoted values in amd.conf
378         hesiod-reload code cleanup
379
380 - assorted code cleanup
381
382
383 *** Notes specific to am-utils version 6.0a7:
384
385 - new ports:
386         i386-unknown-freebsd3.0:
387                         fully functional with NFS V.3
388         sparc-sun-solaris2.3:
389                         fully functional (should work for 2.4)
390         sparc-unknown-netbsd1.2E:
391                         configures/compiles (with NFS V.3), untested
392
393 - updated ports:
394         i386-pc-bsdi3.0:
395                         NFS V.3 works
396                         look for hesiod in libc
397         mips-sgi-irix5.3:
398                         fully functional with NFS V.3
399
400 - LDAP support!  New [global] amd.conf options ldap_base and ldap_hostports.
401 Also includes a new script amd2ldif to convert amd maps into plain text LDAP
402 object files.
403
404 - the following amd.conf variables: browsable_dirs, map_options, map_type,
405 mount_type, and search_path --- can now be specified in [global] as well as
406 the map entry itself.  That way you can declare them only once in [global],
407 and override them as needed per map.
408
409 - option "cluster" added to [global] (HPUX clusters ala "amd -C").
410
411 - assorted info_hesiod map fixes and cleanup.  removed HESIOD_RELOAD code.
412
413 - added netgrp(name) function to amd map syntax to see if current host is in
414 the <name> netgroup.
415
416 - removed unused option "amd -m".
417
418 - filled in "tasks" file with todo items.
419
420 - filled "COPYING" file with legal stuff.
421
422 - cleanup: all global variables are now in one big structure (struct
423 amu_global_options) that's easy to identify and enhance.  Also migrated
424 several flags that used be an integer each into one unsigned integer that's
425 used as a bit-flag.
426
427 - big fixes:
428         xdr_mountres3 should compile only if has NFS V3
429         lex/yacc macros show full pathname (to tell if correct one runs)
430         misc fixes/cleanup
431
432
433 *** Notes specific to am-utils version 6.0a6:
434
435 - amd configuration file!
436
437 See scripts/amd.conf-sample for help and some explanation.  This new conf
438 file allows for the following new features:
439
440         default selectors can be turned on/off globally.
441         browsable_dirs/readdir() support can be turned on per map.
442         search paths for file type maps.
443         can force the map type to file, nis, ndbm, etc. rather than default
444                 to looking at all of them.
445         tag each map for "amd -T tag", useful for grouping maps.
446         can override $os and others (so if you don't like "sunos5" default
447                 naming, set os=sos5 and it will work with your old maps).
448         and more goodies...
449
450 - enable-default-selectors: No longer turned on by the configure script or
451 optionally compiled.  Code made dynamic and can be turned on or off from the
452 amd.conf file.  This code is off by default, and must be turned on by
453 amd.conf's [global] section.
454
455 - new ports:
456         mips-sgi-irix5.3:       configure/compile, not tested
457         i486-ncr-sysv4.3.03:    configure/compile, not tested
458
459 - updated ports:
460         alpha-dec-osf4.0:       major code redone
461         sparc-sun-sunos4.1.3:   fixed and working
462         mips-sgi-irix6.2:       tested with gcc and "cc -32 -Wl,-woff,84"
463         mips-sgi-irix6.4:       tested with gcc and "cc -32 -Wl,-woff,84"
464
465 - better NFS3 port, including more support for proto= and vers=, and
466 automatic determination of proto/vers combination.
467
468 - conf/nfs_prot/nfs_prot_*.h: all of the NFS protocol header files had to be
469 redone, because of the osf4 port.  OSF used very different names for these,
470 and they conflicted with am-utils'.  The only solution was to more or less
471 conform to OSF4's naming, and change all the others.
472
473 - ctl-amd script:
474         improved to look for amd.conf in $prefix/etc and /etc
475         better methods for finding the pid of amd to kill
476
477 - autoconf support for LDAP.  amd/info_ldap.c needs to be written.
478
479 - wire-test also reports the local IP address.  Some systems have multiple,
480 buggy version of get_myaddress(), esp. SunOS and Irix.  Note that Solaris
481 x86 has a buggy htonl().
482
483 - amd -H prints usage.
484
485 - bugs fixed:
486         minor TLI problem in fwd_socket
487         mount options properly comma delimited
488         LIBS is set only to the right set of libraries to include
489         selectors-on-default code ignored last selector ent in /defaults
490         assorted code cleanups
491
492
493 *** Notes specific to am-utils version 6.0a5:
494
495 - NFS Version 3 support!!!
496
497         Works on Solaris 2.5.1.
498         Minimal testing done on Irix 6.
499         Compiles cleanly on DU-4.0 but no tests performed.
500
501 Will fall back to V2 mounts when V3 is not available.  Will also use TCP if
502 possible, UDP otherwise.
503
504 - Ports to new platforms:
505
506         alpha-dec-osf4.0                (not tested)
507         i386-pc-bsdi3.0                 (tested and working)
508         i386-unknown-freebsd2.2.1       (tested and working)
509         sparc-unknown-linux-gnu         (tested and working)
510
511 - New scripts added:
512
513         amd2sun:        convert amd maps to Sun automount maps
514         ctl-amd:        script to start/stop/restart amd
515         ctl-hlfsd:      script to start/stop/restart hlfsd
516         expn:           expand mail alias (used by hlfsd)
517         lostaltmail:    redeliver "lost" mail redirected by hlfsd
518         lostaltmail.conf-sample:        sample conf file for lostaltmail
519         wait4amd:       run a command once amd is up on a host
520         wait4amd2die:   wait for an amd process to die before returning
521
522 - "amd -v" now includes more info and "amq -v" lists all of it.
523
524 - new parser for linux specific mount options.
525
526 - Main bugs fixed:
527
528         "new toplvl readdir" bug caused amd to dump core
529         handler for SIGCHLD didn't check for all possible children
530         hlfsd leaking file descriptors when home file system was full
531         cdfs/pcfs mounts should not timeout by default
532         hesiod domain names should be compared in case-insensitive manner
533         several printfs in amq were missing \n
534
535
536 *** Notes specific to am-utils version 6.0a4:
537
538 - amd services both TCP and UDP amq requests.  This will help because of the
539 limited UDP message size.
540
541 - "amq -M" code is disabled by default because it is insecure.  It is
542 rarely used.  Users who wish to use it should run
543 "configure --enable-amq-mount".
544
545
546 *** Notes specific to am-utils version 6.0a3:
547
548 - New tested ports (configures, compiles, and runs):
549
550         i386-unknown-freebsd2.2
551
552 - New ports (configures and compiles correctly, not tested):
553
554         rs6000-ibm-aix3.2.5
555         rs6000-ibm-aix4.1.5.0
556
557 - More am-utils programs ported to all existing platforms: hlfsd, fsinfo,
558 mk-amd-map, and fixmount.
559
560 - Shared libraries: a new configure option --enable-shared will build a
561 shared libamu.so, link applications with it, and use it.  Reduces binary
562 sizes by 20-30%.  This is the first step towards loadable modules, as many
563 changes had to be done to be able to compile and use PIC code.  This is code
564 that obviously needs to be generalized to be able to build shared libraries
565 on many other platforms.  It was only tested on Solaris 5.5.1.
566
567 - the file INSTALL contains the latest compatibility table of which
568 platforms am-utils configures, compiles and runs on.
569
570 - Trimmed down the size of the configure script.  Some tests that are not
571 used anywhere were removed.
572
573
574 *** Notes specific to am-utils version 6.0a2:
575
576 - New ports (configures and compiles correctly, not tested):
577
578         i386-pc-bsdi2.1
579         hppa1.1-hp-hpux9.01
580         hppa1.1-hp-hpux10.20
581
582 - new configure options:
583
584         --enable-cppflags[=ARG]
585                 configure/compile with ARG (-I) preprocessor flags
586         --enable-libs[=ARG]
587                 configure/compile with ARG (-L/-l) library flags
588
589 - filesystem, mount table entries, and mount type tests can now look in
590 /lib/modules and /proc/filesystems for statically/dyadically loadable kernel
591 modules (linux)
592
593 - prefer vfat over msdos/pc/etc filesystem for PCFS.
594
595 - moved all fixed headers to include/am_defs.  Left only #define/#undef
596 entries in aux/acconfig.h.
597
598 - make more sense of systems that have full, partial, or no NFS protocol
599 headers.
600
601 - minor fixes for NetBSD (untested platform).
602
603 - hesiod map fixed.
604
605 - buildall -D: new option to run even stricter developer options.
606
607 - lots of other bugs fixed (see ChangeLog).
608
609
610 *** Notes specific to am-utils version 6.0a1:
611
612 I have it configure and build correctly for the following systems:
613
614         i386-pc-solaris2.5.1
615         i386-unknown-freebsd2.1.0
616         mips-sgi-irix6.2
617         sparc-sun-solaris2.5.1
618         sparc-sun-sunos4.1.3
619
620 Amq, wire-test, and "amd -v" work on all of the above.  A real running amd
621 was only tested and confirmed working on
622
623         i386-pc-solaris2.5.1
624         sparc-sun-solaris2.5.1
625
626 Many things are still missing: options, features, etc.  But for now, let's
627 concentrate on getting the basic functionality working on the more popular
628 systems.