last known Amiga cross-compile -> outdated

Place the last known Amiga cross-compile effort into the outdated folder
tree.

This shell script was meant to be run from the top of the NetHack tree:
    outdated/sys/unix/cross-amiga.sh
It attempts two things:
1. obtain the source-code for the Amiga cross compiler and build it
   from scratch. Warning: it pulls a number of the required packages
   from the internet and installs them. (Linux was tested, but the macOS
   usage never was).
2. move the outdated hints file and hints include files for Amiga
   into the live tree for someone attempting to resurrect an Amiga port.
   It doesn't tinker with any of the files needed for the NetHack-3.7
   work-in-progess for other platforms.

Once the shell script completes those things, the cross-compile build
steps would be:
  i) cd sys/unix ; sh setup.sh hints/cross-amiga ; cd ../..
 ii) make CROSS_TO_AMIGA=1 all
iii) make CROSS_TO_AMIGA=1 package
This commit is contained in:
nhmall
2022-02-01 16:43:39 -05:00
parent c75e5d99d2
commit bb01c6378a
7 changed files with 841 additions and 3 deletions

View File

@@ -42,6 +42,7 @@
extern char Initialized;
extern struct window_procs amii_procs;
struct ami_sysflags sysflags = {0};
FILE *fopenp(const char *, const char *);
#ifndef __SASC_60
int Enable_Abort = 0; /* for stdio package */

View File

@@ -63,6 +63,13 @@ void MyFreeBitMap(struct BitMap *bmp);
extern void display_map(struct Window *);
#endif
#ifdef USE_TILES
extern int maxmontile, maxobjtile, maxothtile; /* from tile.c */
#define MAXMONTILE maxmontile
#define MAXOBJTILE maxobjtile
#define MAXOTHTILE maxothtile
#endif
/*
* These values will be available from tile.c source
*
@@ -895,9 +902,12 @@ SetMazeType(MazeType t)
int
GlyphToIcon(int glyph)
{
glyph_info gi;
map_glyphinfo(0, 0, glyph, 0, &gi);
if (glyph > 10000)
return glyph;
return (glyph2tile[glyph]);
return (gi.gm.tileidx);
}
#endif

View File

@@ -2002,8 +2002,14 @@ if(u.uz.dlevel != x){
} else /* AMII, or Rogue level in either version */
{
/* map glyph to character and color */
(void) mapglyph(glyph, &och, &color, &special, x, y, 0);
ch = (uchar) och;
#if 0
(void) mapglyph(glyph, &och, &color, &special, x, y, 0);
ch = (uchar) och;
#else
glyph_info gi;
map_glyphinfo(0, 0, glyph, 0, &gi);
ch = gi.ttychar;
#endif
if (WINVERS_AMIV) { /* implies Rogue level here */
amii_curs(win, x, y);
amiga_print_glyph(win, NO_COLOR, ch + 10000);