Write private version of INTERN, which is needed early in the boot
authorChris Hanson <org/chris-hanson/cph>
Tue, 25 Sep 2001 05:08:40 +0000 (05:08 +0000)
committerChris Hanson <org/chris-hanson/cph>
Tue, 25 Sep 2001 05:08:40 +0000 (05:08 +0000)
sequence before all of the necessary mechanism is initialized.

v7/src/runtime/utabs.scm

index 9c8fc1767300d59e781b9cf7b19436d30bc12aec..5585c328f4b0f03336f0824f72778cdb447e183b 100644 (file)
@@ -1,8 +1,8 @@
 #| -*-Scheme-*-
 
-$Id: utabs.scm,v 14.13 1999/01/02 06:19:10 cph Exp $
+$Id: utabs.scm,v 14.14 2001/09/25 05:08:40 cph Exp $
 
-Copyright (c) 1988-1999 Massachusetts Institute of Technology
+Copyright (c) 1988-1999, 2001 Massachusetts Institute of Technology
 
 This program is free software; you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
@@ -16,7 +16,8 @@ General Public License for more details.
 
 You should have received a copy of the GNU General Public License
 along with this program; if not, write to the Free Software
-Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+02111-1307, USA.
 |#
 
 ;;;; Microcode Name <-> Code Maps
@@ -95,6 +96,14 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
        (microcode-identification-item 'CONSOLE-HEIGHT))
   unspecific)
 
+(define (intern string)
+  ((ucode-primitive string->symbol)
+   (let ((size (string-length string)))
+     (let ((result (string-allocate size)))
+       ((ucode-primitive substring-move-right!) string 0 size result 0)
+       ((ucode-primitive substring-downcase!) result 0 size)
+       result))))
+
 (define microcode-tables-identification)
 (define microcode-id/version)
 (define microcode-id/modification)