As I add things to the game I will update it on the Github page.
Please go here for the latest.
https://github.com/RyanBurnside/Interlisp-Hungarian-Rings/tree/main
Pixel_Outlaw
Creator of
Recent community posts
For updates to this game, please use the Github repository instead.
https://github.com/RyanBurnside/Interlisp-Hungarian-Rings/tree/main
@grumblyharmonics Thanks for the tip, it seems that symbol is available in the full environment and my guess it comes in from the bitmap editor or drawing package leaking it into the toplevel. The online VM does the full load so it wasn't caught. If anyone tries it locally they should probably do the --apps flag as grumblyharmonics did. I'll fix it after the jam since I can't edit my submission.
I'll provide the proper values (you can tweak the source code file if you wish such that you don't have to do the --apps flag) Tweak the DRAW.BALL function prior to loading.
Or, if you're feeling *very* adventurous you can do ED(DRAW.BALL) after loading the file and bring up the structure editor to substitute the numeric values. Then middle click the title bar when "done" and save them. That'll fix it for the current session. Saving the edited function to file is an exercise left to the reader. :)
Bonus brownie points if you're feeling froggy.
I was informed yesterday you can also load the file using the pull out side menu on the Medly VM as well as the desktop "IMPORT/EXPORT" button on the desktop. Just another option to load the file into the VM's filesystem. Following that, the usual Right Click desktop EXEC -> Interlisp shell followed by (LOAD "RING.LISP") followed by (HUNGARIAN.RINGS) in the InterLisp EXEC window. :)
Mine is nearly pure Interlisp with only 1 Common Lisp call for BUTLAST. Interlisp is *much* older than Common Lisp (going back to the 1960s) and a very different language. But they both can be used together in Medley which runs Interlisp and Common Lisp (CLTL1 + some CLTL2). Please add Interlisp-D (Interlisp) since it helps the Medley Interlisp Revival project. :)
Playing the Game:
To play the game you have two options. The online emulator provides very easy access but if you're interested in a real Lisp OS, eventually you'll want a personal copy.
ONLINE https://interlisp.org/software/access-online/
- Use the online Medley Environment and upload the RING.LISP file using the "IMPORT/EXPORT" button on the VM there. In the window, drag your copy of RING.LISP over.
- Once, you've uploaded the RING.LISP file move back to the Interlisp desktop. Right click a blank space on the desktop and select EXEC -> Interlisp from the menu. (Drag out the window it's prompting for)
- Type (LOAD "RING.LISP") to load the file you've uploaded.
- In the same Exec window type (HUNGARIAN.RINGS) and the game will prompt you to position 2 windows. One is the live puzzle and the other is a card with a solved picture.
- To play the game simply click inside the loop you wish to shift. Left click rotates left, right rotates right. (The game actually just uses the angle from the center of the screen to the mouse to determine the ring to rotate)
- To quit the game middle click the puzzle window and select 'Close'. (The other window can be right clicked and 'close' selected.)
- It is probably best to log out when done. (LOGOUT)
OFFLINE https://interlisp.org/software/install-and-run/
- Place the file in the root directory of your medley install and follow steps 2 onward. This is '~/il/' for me on Linux. Consult the docs for where your root directory for Medley is otherwise.When you start medley you'll want the full environment with the --apps flag. Otherwise you'll have to adjust the unknown symbols of DRAW.BALL. (Which I didn't catch)
It appears to say gl is missing despite me grabbing the OpenGL tarball for GNU Guile and running './configure' followed by 'sudo make install'
Output from the OpenGL tarball:
https://pastebin.com/47F5hLiU
https://pastebin.com/15Kfii3m
Output from Chickadee:
https://pastebin.com/9ryihs8U
Thanks nchatz314.
My system:
Kernel: 6.5.0-1022-oem x86_64 bits: 64 compiler: N/A Desktop: MATE 1.26.0 info: mate-panel
wm: Metacity 3.44.0 dm: LightDM 1.30.0 Distro: Linux Mint 21.2 Victoria base: Ubuntu 22.04 jammy
Guile would be fine if it runs fine on Mac and Linux. (I've got a friend from work who uses Mac computers.)
Chickadee would be fine if it also handles Mac and Linux.
As you can see in the log above it claims libturbojpeg0-dev is already the newest version (2.0.3-0ubuntu1.20.04.3).
Yet when building Chickadee it can't seem to find libturbojpeg.
I'm not sure what the 0 is about but this is what comes with Mint.
I was hoping to avoid installing guix as that drags down TONS of extra data.
--- Regarding Chicken Scheme
Ah, as far as Allegro goes in Chicken Scheme (5)
Change the use on line 3 to import.
Changing line 62 here to have (exit 0) instead of (quit 0) seems to close the window properly.
it's a start I think I can make this work...
--- Regarding Chickadee in Guile:
I tried my best installing Guile from source (seems to have gone OK) but the last mile on the two Chickadee libraries was tough.
Manged to get the .so files installed and the required Guile GL and SDL2 bindings installed, but it ended in failure when libturbojpeg couldn't be found despite me installing it.
Trace below from building Chickadee. After grabbing bindings and installing system libraries.
Hello All,
After some fun in the past with both Common Lisp and InterLisp (that was a fun hack) I'm trying to take a whack at Scheme this year.
I was hoping to make a native application with real time action. I'm not a fan of the browser adding additional layers and slowing things down. I tend to prefer making arcade games so I really value not having a lot of mystery meat between player and inputs.
I've tried Chicken with Allegro (example doesn't seem to exit cleanly on Linux Mint, last updated 11 years ago - repo frozen).
I've tried Chicken with Hypergiant (got lost in dependency compilation)
I've tried Guile with Chickadee (compilation issues with the two required libraries)
Racket using r5rs mode doesn't seem to have much for real time games.
I know that libraries don't just appear because somebody wishes them to exist.
They take hard work and people constantly have to keep re-wrapping when the C libs change.
I'm hoping I'm not in dire straights for a native Scheme game.


