Giter VIP home page Giter VIP logo

nuku's People

Contributors

akien-mga avatar reduz avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

akien-mga

nuku's Issues

Getting nuku to compile and run

I was poking at this again for fun, without remembering if #3 was ever leading to a functional state.

I'll just document some findings briefly for anyone interested in trying to get this to compile (on Linux):

  • It's a 32-bit game, so you'll likely need to install 32-bit version of libraries
  • You need 32-bit fpc, libSDL1.2-devel (or earlier?), libmikmod-devel
  • You need sdl4fp from https://sourceforge.net/projects/sdl4fp/ - copy the .pp files to the nuku folder
  • Run make which should work following #3 if you have the above

Then you should have a nuku binary. To run it I also had to install libalsa-plugins-pulseaudio -- or whichever package provides this file:

ALSA lib dlmisc.c:337:(snd_dlobj_cache_get0) Cannot open shared library libasound_module_pcm_pulse.so (/usr/lib/alsa-lib/libasound_module_pcm_pulse.so: cannot open shared object file: No such file or directory)

That's probably only if you do use ALSA + Pulseaudio as backend.

With all this, it's kind of starting, but crashes early on:

$ ./nuku 
readin' sound effect 1
readin' sound effect 2
readin' sound effect 3
readin' sound effect 4
readin' sound effect 5
readin' sound effect 6
readin' sound effect 7
reading PCX: fontg.pcx
reading PCX: tilal.pcx
reading PCX: intro.pcx
end PCX load..
An unhandled exception occurred at $F7D2E788:
EAccessViolation: Access violation
  $F7D2E788

gdb backtrace:

(gdb) bt
#0  0xf7dd0788 in unlink_chunk.constprop () from /lib/libc.so.6
#1  0xf7dd30f6 in _int_malloc () from /lib/libc.so.6
#2  0xf7dd468c in calloc () from /lib/libc.so.6
#3  0xe4f34c90 in iris_alloc_resource () from /usr/lib/dri/iris_dri.so
#4  0xe4f37dc1 in iris_resource_create () from /usr/lib/dri/iris_dri.so
#5  0xe4868038 in u_upload_alloc () from /usr/lib/dri/iris_dri.so
#6  0xe4868193 in u_upload_data () from /usr/lib/dri/iris_dri.so
#7  0xe486b6f6 in u_vbuf_draw_vbo () from /usr/lib/dri/iris_dri.so
#8  0xe4806c1c in cso_multi_draw () from /usr/lib/dri/iris_dri.so
#9  0xe43d9108 in st_draw_gallium () from /usr/lib/dri/iris_dri.so
#10 0xe44d0860 in _mesa_draw_arrays.part.0 () from /usr/lib/dri/iris_dri.so
#11 0xf7bea594 in GL_RunCommandQueue () from /lib/libSDL2-2.0.so.0
#12 0xf7bdd9c5 in FlushRenderCommands () from /lib/libSDL2-2.0.so.0
#13 0xf7be6757 in SDL_RenderPresent_REAL () from /lib/libSDL2-2.0.so.0
#14 0xf7f675db in PresentScreen () from /lib/libSDL-1.2.so.0
#15 0xf7f71a89 in SDL_UpdateRects () from /lib/libSDL-1.2.so.0
#16 0xf7f71bec in SDL_UpdateRect () from /lib/libSDL-1.2.so.0
#17 0xf7f725d3 in SDL_SetPalette () from /lib/libSDL-1.2.so.0
#18 0xf7f72606 in SDL_SetColors () from /lib/libSDL-1.2.so.0
#19 0x0806fd07 in FILL_SCREEN_WITH_BUFFER (SRC=...) at nuku_screen.pas:79
#20 0x0806fe51 in VIDDISPLAY () at nukunit.pas:295
#21 0x080700ac in UPDATEVID () at nukunit.pas:494
#22 0x080700e2 in COPYSCR2 () at nukunit.pas:504
#23 0x0806f7e2 in GAMEMAINOP () at nukumain.pas:706
#24 0x0806fad0 in NUKUSTART () at nukumain.pas:814
#25 0x0804a645 in main () at nuku.pas:16

You can see that I'm using the new libSDL 1.2 over 2.0 wrapper https://github.com/libsdl-org/sdl12-compat
It might work better with the "real" libSDL 1.2, or maybe it actually needs an earlier version of libSDL given how old this code is.

That's where I stop my quick attempt, if anyone wants to bring it further then this could be documented in the README once it can be made to compile and run.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.