Lispマシン CADR シミュレータ usim | たけおか ぼちぼち日記

たけおか ぼちぼち日記

思いついたらメモ

関西Lisp のネタのために、usim を引っ張り出してきた。

古いオリジナルのものをそのままmakeしても、動作した。(64bit Linux用に、ちょっと直した)

 

g000001さんのusimの記事"http://g000001.cddddr.org/3700105594"にある 

この GitHub: ams/mit-cadr から、 download Zip で得たものも簡単に動いた。

 

OSは、Ubuntu 16.04LTS 64bit。

 

usimは、32bit で make して吉。

 

ubuntu x86_64 の場合、32bit コンパイル環境を入れる
 $ sudo apt-get install libc6-dev-i386
 $ sudo apt-get install libsdl1.2debian:i386

そして、Makefile をちょっと変更。

 

--------

*** Makefile.org    2017-04-02 17:15:10.000000000 +0900
--- Makefile    2017-10-09 22:00:15.842199400 +0900
***************
*** 34,41 ****
  endif
  
  ifeq ($(OS_NAME), Linux)
! DISPLAY = X11
! KEYBOARD = OLD
  endif
  
  #----------- code ------------
--- 34,43 ----
  endif
  
  ifeq ($(OS_NAME), Linux)
! #DISPLAY = X11
! DISPLAY = SDL
! #KEYBOARD = OLD
! KEYBOARD = NEW
  endif
  
  #----------- code ------------
***************
*** 77,83 ****
  ifeq ($(DISPLAY), X11)
  LFLAGS = -m32
  ifeq ($(OS), LINUX)
! USIM_LIBS = -L/usr/lib/x86_64-linux-gnu -lX11 -lpthread
  else
  USIM_LIBS = -L/usr/X11R6/lib -lX11 -lpthread
  endif
--- 79,86 ----
  ifeq ($(DISPLAY), X11)
  LFLAGS = -m32
  ifeq ($(OS), LINUX)
! #USIM_LIBS = -L/usr/lib/x86_64-linux-gnu -lX11 -lpthread
! USIM_LIBS =
  else
  USIM_LIBS = -L/usr/X11R6/lib -lX11 -lpthread
  endif
***************
*** 90,97 ****
  #CFLAGS= -O3 -march=pentium3 -mfpmath=sse -mmmx -msse $(DEFINES) -Walle
  #CFLAGS = -O3 -fomit-frame-pointer -mcpu=i686 -g $(DEFINES)
  #CFLAGS= -O3 -mfpmath=sse -mmmx -msse $(DEFINES) -Walle
! CFLAGS = -mfpmath=sse -mmmx -msse -DMAP_SITE_TREE_DIRECTORY $(DEFINES) -g
! LFLAGS = -ldl -L/usr/lib
  USIM_SRC += Files.c glob.c
  USIM_HDR += Files.h glob.h
  USIM_LIBS += -lrt
--- 93,103 ----
  #CFLAGS= -O3 -march=pentium3 -mfpmath=sse -mmmx -msse $(DEFINES) -Walle
  #CFLAGS = -O3 -fomit-frame-pointer -mcpu=i686 -g $(DEFINES)
  #CFLAGS= -O3 -mfpmath=sse -mmmx -msse $(DEFINES) -Walle
! #CFLAGS = -mfpmath=sse -mmmx -msse -DMAP_SITE_TREE_DIRECTORY $(DEFINES) -g
! #CFLAGS = -mfpmath=sse -mmmx -msse -DMAP_SITE_TREE_DIRECTORY $(DEFINES) $(M32) -g
! CFLAGS = -O4 -mfpmath=sse -mmmx -msse -DMAP_SITE_TREE_DIRECTORY $(DEFINES) $(M32)
! #LFLAGS = -ldl -L/usr/lib
! LFLAGS = $(M32) -ldl -L/usr/lib
  USIM_SRC += Files.c glob.c
  USIM_HDR += Files.h glob.h
  USIM_LIBS += -lrt
***************
*** 110,116 ****
  M32 = -m32
  
  ifeq ($(DISPLAY), SDL)
! USIM_LIBS = /usr/lib/libSDL-1.2.so.0.7.0 -lpthread
  endif
  
  endif
--- 116,123 ----
  M32 = -m32
  
  ifeq ($(DISPLAY), SDL)
! #USIM_LIBS = /usr/lib/libSDL-1.2.so.0.7.0 -lpthread
! USIM_LIBS = /usr/lib/i386-linux-gnu/libSDL-1.2.so.0 -lpthread
  endif
  
  endif

---------------------------------------

そしてmake すれば、OK。

 

$ ./usim で、起動する。

 

 

 

<hr>