Author Topic: Duke Nukem 3D for Nspire  (Read 4457 times)

0 Members and 1 Guest are viewing this topic.

Offline njaddison

  • LV4 Regular (Next: 200)
  • ****
  • Posts: 176
  • Rating: +24/-27
    • View Profile
Duke Nukem 3D for Nspire
« on: August 03, 2012, 04:33:32 pm »
After analyzing the source code of Duke Nukem 3D, I ran across a few problems.

The source files were C, and there were some Header files, and a few makefiles too.

Here is the error log i got trying to compile the game into an .exe file:


Code: [Select]
Compiling: C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C
In file included from C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:41:
C:\Users\TAddison\Downloads\duke3dsource\source\duke3d.h:32:18: error: bios.h: No such file or directory
In file included from C:\Users\TAddison\Downloads\duke3dsource\source\duke3d.h:37,
                 from C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:41:
C:\Users\TAddison\Downloads\duke3dsource\source\pragmas.h:1958:26: warning: backslash-newline at end of file
In file included from C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:29:
C:\Users\TAddison\Downloads\duke3dsource\source\scriplib.h:193: error: expected ',' or '...' before 'bool'
C:\Users\TAddison\Downloads\duke3dsource\source\scriplib.h:331: error: two or more data types in declaration of 'parameter'
In file included from C:\Users\TAddison\Downloads\duke3dsource\source\duke3d.h:29,
                 from C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:41:
c:\program files\codeblocks\mingw\bin\../lib/gcc/mingw32/4.4.1/../../../../include/stdlib.h:71: error: conflicting declaration 'int _argc'
C:\Users\TAddison\Downloads\duke3dsource\source\util_lib.h:42: error: '_argc' has a previous declaration as 'int32 _argc'
In file included from C:\Users\TAddison\Downloads\duke3dsource\source\duke3d.h:85,
                 from C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:41:
C:\Users\TAddison\Downloads\duke3dsource\source\music.h:85: error: expected ',' or '...' before '(' token
In file included from C:\Users\TAddison\Downloads\duke3dsource\source\duke3d.h:89,
                 from C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:41:
C:\Users\TAddison\Downloads\duke3dsource\source\funct.h:413: error: '::main' must return 'int'
In file included from C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:41:
C:\Users\TAddison\Downloads\duke3dsource\source\duke3d.h:271: error: a storage class can only be specified for objects and functions
C:\Users\TAddison\Downloads\duke3dsource\source\duke3d.h:309: warning: 'typedef' was ignored in this declaration
C:\Users\TAddison\Downloads\duke3dsource\source\duke3d.h:315: warning: 'typedef' was ignored in this declaration
C:\Users\TAddison\Downloads\duke3dsource\source\duke3d.h:375: warning: 'typedef' was ignored in this declaration
C:\Users\TAddison\Downloads\duke3dsource\source\duke3d.h:430: warning: 'typedef' was ignored in this declaration
In file included from C:\Users\TAddison\Downloads\duke3dsource\source\duke3d.h:467,
                 from C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:41:
C:\Users\TAddison\Downloads\duke3dsource\source\funct.h:413: error: '::main' must return 'int'
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:86: error: expected initializer before '__far'
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C: In function 'void inittimer()':
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:113: error: invalid conversion from 'void (*)()' to 'void (*)(task*)'
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:113: error:   initializing argument 1 of 'task* TS_ScheduleTask(void (*)(task*), int, int, void*)'
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C: In function 'int gametext(int, int, char*, char, short int)':
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:161: error: 'rotatesprite' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C: In function 'int gametextpal(int, int, char*, char, char)':
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:209: error: 'rotatesprite' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C: In function 'int gametextpart(int, int, char*, char, short int)':
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:261: error: 'rotatesprite' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:265: error: 'rotatesprite' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C: In function 'int minitext(int, int, char*, char, char)':
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:286: error: 'rotatesprite' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C: In function 'int minitextshade(int, int, char*, char, char, char)':
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:304: error: 'rotatesprite' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C: In function 'void allowtimetocorrecterrorswhenquitting()':
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:339: error: 'sendpacket' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C: At global scope:
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:349: error: ISO C++ forbids declaration of 'adduserquote' with no type
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C: In function 'void getpackets()':
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:374: warning: deprecated conversion from string constant to 'char*'
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:378: error: 'getpacket' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:420: error: 'copybufbyte' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:449: error: 'copybufbyte' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:462: error: 'copybufbyte' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:488: error: invalid conversion from 'unsigned char*' to 'const char*'
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:488: error:   initializing argument 2 of 'char* strcpy(char*, const char*)'
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:525: warning: deprecated conversion from string constant to 'char*'
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:625: warning: deprecated conversion from string constant to 'char*'
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C: In function 'void faketimerhandler()':
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:640: warning: deprecated conversion from string constant to 'char*'
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:646: error: 'getoutputcirclesize' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:662: error: 'copybufbyte' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:682: error: 'computergetinput' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:692: error: 'min' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:693: error: 'max' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:715: error: 'klabs' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:716: error: 'ksgn' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:725: error: 'max' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:725: error: 'min' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:772: error: 'sendpacket' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:782: error: 'klabs' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:783: error: 'ksgn' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:831: error: 'sendpacket' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:841: error: 'sendpacket' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:861: error: 'max' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:861: error: 'min' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:913: error: 'sendpacket' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C: In function 'void caches()':
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:934: error: invalid conversion from 'unsigned char*' to 'char*'
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:934: error:   initializing argument 1 of 'int sprintf(char*, const char*, ...)'
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:935: error: 'printext256' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:943: error: invalid conversion from 'unsigned char*' to 'char*'
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:943: error:   initializing argument 1 of 'int sprintf(char*, const char*, ...)'
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:944: error: 'printext256' was not declared in this scope
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C: In function 'void checksync()':
C:\Users\TAddison\Downloads\duke3dsource\source\GAME.C:976: error: 'printext256' was not declared in this scope
Process terminated with status 1 (0 minutes, 24 seconds)
50 errors, 9 warnings
 

And, I don't know how to map to the nspire's keys anyway, or to the screen. And the DUKE3D.GRP is too large to fit on my nspire. By the way, this is the source code for the Atomic Edition of Duke Nukem 3D.

I got the source from 3d realms website. Here is the link:

ftp://ftp.3drealms.com/source/duke3dsource.zip

I really need help.

Hoffa created nSDL for nspire. But, I couldn't find the sdl source code for duke nukem. I am hoping that one day a direct port of Duke Nukem 3D to the Nspire will be possible.

If anyone can find the sdl source code, can you upload it to this topic?
<a href="http://www.nerdtests.com/ft_nt2.php">
<img src="http://www.nerdtests.com/images/badge/nt2/5f42ec78e054645d.png" alt="NerdTests.com says I'm a Highly Dorky Nerd God.  Click here to take the Nerd Test, get geeky images and jokes, and talk to others on the nerd forum!">
</a>


Offline ruler501

  • Meep
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2475
  • Rating: +66/-9
  • Crazy Programmer
    • View Profile
Re: Duke Nukem 3D for Nspire
« Reply #1 on: August 03, 2012, 05:26:13 pm »
there is a version on this website written for SDL I've been working on porting to prizm.
http://icculus.org/

EDIT actually looking into it a little more prizm doesnt have enough ram to run that version
if the nspire has at least 2746kb of ram it should work though
« Last Edit: August 03, 2012, 06:53:57 pm by ruler501 »
I currently don't do much, but I am a developer for a game you should totally try out called AssaultCube Reloaded download here https://assaultcuber.codeplex.com/
-----BEGIN GEEK CODE BLOCK-----
Version: 3.1
GCM/CS/M/S d- s++: a---- C++ UL++ P+ L++ E---- W++ N o? K- w-- o? !M V?
PS+ PE+ Y+ PGP++ t 5? X R tv-- b+++ DI+ D+ G++ e- h! !r y

Offline critor

  • Editor
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2079
  • Rating: +439/-13
    • View Profile
    • TI-Planet
Re: Duke Nukem 3D for Nspire
« Reply #2 on: August 03, 2012, 08:14:58 pm »
Did you see this btw ?



It's a total conversion of Duke Nukem 3D episode 1 level 1 for the Doom engine.
TI-Planet co-admin.

Offline DJ Omnimaga

  • Former TI programmer
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55847
  • Rating: +3151/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • DJ Omnimaga Music
Re: Duke Nukem 3D for Nspire
« Reply #3 on: August 04, 2012, 12:43:58 am »
Shouldn't this be located in the C language help section of the forums? Being inside projects seems a bit misleading.

That said I would really like a port of the real Duke Nukem 3D. There's the Doom port of Duke Nukem 3D, but it doesn't run on my calc and it's not the real game. :(
« Last Edit: August 04, 2012, 12:44:10 am by DJ_O »
In case you are wondering where I went, I left Omni back in 2015 to form CodeWalrus due to various reasons explained back then, but I stopped calc dev in 2016 and am now mostly active on the CW Discord server at https://discord.gg/cuZcfcF



Official Website |T-Shirt store | Reverbnation | Facebook | Youtube | Twitter | Spotify

Offline critor

  • Editor
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2079
  • Rating: +439/-13
    • View Profile
    • TI-Planet
Re: Duke Nukem 3D for Nspire
« Reply #4 on: August 04, 2012, 06:22:51 am »
The source located at ftp://ftp.3drealms.com/source/duke3dsource.zip won't be easy to port as it includes some assembly.
TI-Planet co-admin.

Offline njaddison

  • LV4 Regular (Next: 200)
  • ****
  • Posts: 176
  • Rating: +24/-27
    • View Profile
Re: Duke Nukem 3D for Nspire
« Reply #5 on: August 13, 2012, 11:25:33 pm »
Well, would the sdl version be easy to port?
<a href="http://www.nerdtests.com/ft_nt2.php">
<img src="http://www.nerdtests.com/images/badge/nt2/5f42ec78e054645d.png" alt="NerdTests.com says I'm a Highly Dorky Nerd God.  Click here to take the Nerd Test, get geeky images and jokes, and talk to others on the nerd forum!">
</a>


Offline ElementCoder

  • LV7 Elite (Next: 700)
  • *******
  • Posts: 611
  • Rating: +42/-2
    • View Profile
Re: Duke Nukem 3D for Nspire
« Reply #6 on: August 14, 2012, 08:55:45 am »
Well, would the sdl version be easy to port?
It would certainly be easier to port then assembly, but it still would require quite some work I think.

Some people need a high five in the face... with a chair.
~EC

Offline njaddison

  • LV4 Regular (Next: 200)
  • ****
  • Posts: 176
  • Rating: +24/-27
    • View Profile
Re: Duke Nukem 3D for Nspire
« Reply #7 on: August 19, 2012, 08:38:33 pm »
Here is the sdl source code for duke3d. Where can I find hoffa's nsdl library?
<a href="http://www.nerdtests.com/ft_nt2.php">
<img src="http://www.nerdtests.com/images/badge/nt2/5f42ec78e054645d.png" alt="NerdTests.com says I'm a Highly Dorky Nerd God.  Click here to take the Nerd Test, get geeky images and jokes, and talk to others on the nerd forum!">
</a>


Offline ruler501

  • Meep
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2475
  • Rating: +66/-9
  • Crazy Programmer
    • View Profile
Re: Duke Nukem 3D for Nspire
« Reply #8 on: August 19, 2012, 09:34:39 pm »
theres an nSDL topic and if you dont find that try github.com/hoffa/nSDL though thats just my guess
I currently don't do much, but I am a developer for a game you should totally try out called AssaultCube Reloaded download here https://assaultcuber.codeplex.com/
-----BEGIN GEEK CODE BLOCK-----
Version: 3.1
GCM/CS/M/S d- s++: a---- C++ UL++ P+ L++ E---- W++ N o? K- w-- o? !M V?
PS+ PE+ Y+ PGP++ t 5? X R tv-- b+++ DI+ D+ G++ e- h! !r y