Commit Graph

254 Commits

Author SHA1 Message Date
keni
d454ca0d6e hints cleanup tids (trunk only) 2007-12-17 22:39:15 +00:00
nethack.allison
eb422e65c7 update or remove out of date config files 2007-12-15 14:29:21 +00:00
nethack.allison
4169a3a308 Remove win32 mapi mail from distribution (trunk only) 2006-10-19 13:26:54 +00:00
nethack.allison
b972732dd8 Files followup (trunk only) 2006-09-21 01:48:22 +00:00
nethack.allison
253bf359af drawing overhaul (trunk only)
This is an overhaul to the NetHack drawing mechanism.

- eliminates the need to have separate lists in drawing.c
for the things and their associated explanations by grouping
those thing together on the same inializer in a struct.

- replaces all of these options: IBMgraphics, DECgraphics, MACgraphics,
graphics, monsters, objects, boulder, traps, effects

- drawing.c contains only the set of NetHack standard symbols for
the main game and a set of NetHack standard symbols for the
roguelevel.

- introduces a symbols file that contains named sets of
symbols that can be loaded at run time making it extensible
for situations like multinational code pages like those reported
by <Someone>, without hardcoding additional sets into the game code.

- symbols file uses names for the symbols, so offsets will not break
when new things are introduced into the game, the way the older
config file uchar load routines did.

- symbols file only contains exceptions to the standard NetHack
set, not entire sets so they are much less verbose than all of
the g_FILLER() entries that were previously in drawing.c

- 'symset' and 'roguesymset' config file options for
preselecting a symbol set from the file called 'symbols'
at startup time. The name of the symbols file is not under the
users control, only the symbol set name desired from within the
symbols file is.

- 'symset' config file option loads a desired symbol set for
everything but the rogue level.

- 'roguesymset' config file option loads a desired symbol set
for the rogue level.

- 'SYMBOLS' config file option allows the user to specify replacement
symbols on a per symbol basis. You can specify as many or as few symbols
as you wish. The symbols are identified by a name:value pair, and line
continuation is supported. Multiple symbol assignments can be made on
the same line if each name:value pair is separated by a comma.
For example:
SYMBOLS = S_bars:\xf0, S_tree: \xf1, S_room:\xfa \
	  S_fountain:\xf4 \
	  S_boulder:0

- 'symbols' file has the following structure:
start: DECgraphics
	Handling: DEC
	S_vwall: \xf8			# meta-x, vertical rule
	S_hwall: \xf1			# meta-q, horizontal rule
finish
start: IBMgraphics
	Handling: IBM
	S_vwall: \xb3			# meta-3, vertical rule
	S_hwall: \xc4			# meta-D, horizontal rule
finish

- 'symbols' file added to the source tree in the dat directory

- Port Makefiles/scripts will need to be adjusted to move them into
HACKDIR destination
2006-09-21 01:46:15 +00:00
nethack.allison
0dc071bee8 mextra changes
Note: The CVS repository was tagged with NETHACK_PRE_MEXTRA
prior to application of this patch to allow easy withdrawal if necessary.

Adds a new mextra structure type that has a set
of pointers to various types of monster structures
including:
   mname, egd, epri, eshk, emin, edog

Replaces the mextra bits in the monst structure
with a single pointer called mtmp->mextra of type
(struct mextra *).
The pointer can be null if there are no additional
structures attached. The mextra structure is not
adjacent to the monst structure.

Reduces the in-memory footprint of the monst that
has no other structures attached, at the cost
of adding 6 extra long ints per monster to
the save file

The new mextra structure has the mextra fields
independent of each other, not overlapping as was
the case with previous NetHack versions.
This patch doesn't do anything to capitalize on
that difference however.

Consolidates vault.h, epri.h, eshk.h, emin.h and edog.h
into mextra.h

Adds a macro for checking for whether a monster has
a name:
	has_name(monst)

This fixes the magic trap panic
   expels() -> spoteffects() -> dotrap() ->
	domagictrap() -> tamedog()
because the monst no longer varies in size so no
replacement is required.
2006-01-06 05:46:03 +00:00
nethack.allison
189f86bed2 Files update 2006-01-04 11:32:13 +00:00
nethack.allison
e9b022d579 housekeeping: mark trunk sources 3.5 (misc) 2005-01-02 17:21:18 +00:00
kmhugo
3b2efac99c Mac Carbon addition 2004-08-10 05:20:33 +00:00
nethack.allison
5a96be12f7 add fixes34.4 2003-12-08 02:28:50 +00:00
cohrs
4bfcd1ee96 Files update, part 2
While looking thru the whole list, I found a few sorting mistakes which
confused my inspection and one misspelling.  I didn't inspect the derived
file list.
2003-12-07 18:07:28 +00:00
nethack.allison
e625ee2c3a Files update 2003-12-07 17:41:41 +00:00
nethack.allison
21f3e1a3a6 status display - new file (trunk only)
Introduction of a new set of window port status display
routines.  The new routines are conditional on
	STATUS_VIA_WINDOWPORT
being defined in config.h. See the experimental section,
where the #define resides for the time being.
2003-11-23 06:50:48 +00:00
nethack.allison
c12d797531 trunk only: preserving context (remaining files)
Pat Rankin wrote:
> collect them all into some new struct and
> save that separately rather than jamming more non-option stuff
> into struct flags.

This patch:
- collects all context/tracking related fields from flags
  into a new structure called "context."
It also adds the following to the new structure:
- stethoscope turn support
- victual support
- tin support
2003-09-21 11:57:26 +00:00
kmhugo
6c70ec2799 Mac port prefix files
Support compilation of multiple flavors for the Macintosh:
1.  A Carbon port, text only and backwards-compatible with
    older versions of the MacOS.
2.  A termcap/Unix port for MacOS X only.
3.  A Qt port, tiled and MacOS X only.

The flavor can be selected at compile-time by specifying the
appropriate prefix file for the compiler.
2003-08-26 00:19:58 +00:00
nethack.allison
67bdc8bca2 win ce project file removal 2003-08-16 00:51:24 +00:00
nethack.allison
b85ff22c1f ce changes (from <Someone>)
The following files are gone (sys\wince):
- stat.h (moved to ceinc\sys\stat.h)
- fcntl.h (moved to ceinc\fcntl.h)
- errno.h (moved to ceinc\errno.h)
- assert.h (moved to ceinc\assert.h)

The following files were added:
- mhtxtbuf.c
- mhtxtbuf.h
- menubar.uu
- ceinc
- ceinc\sys
- ceinc\fcntl.h
- ceinc\errno.h
- ceinc\assert.h
- ceinc\sys\stat.h

CE notes:

Fixes:
- added new options "wraptext", "fullscreen" and "softkeyboard"
- CE341-1 fix ("wraptext" option)
- hide map scrollbars on Smartphone
- added View->Options menu
- PocketPC: added "Fit to screen" and "Show/Hide keypad" icons
  on the menu bar
- Smartphone: '<', '>' keys were mapped incorrectly
- build: use source files directly from <buildroot>\sys\wince instead of
  copying them to <buildroot>\wince\
2003-08-01 12:06:43 +00:00
nethack.allison
6406ef5f93 Add <Someone>'s key handling as loadable handler 2003-05-11 23:25:08 +00:00
nethack.allison
e5e417b528 current fixes files missing from ./Files 2003-05-11 15:13:42 +00:00
nethack.allison
56585d286f win32tty: dynamic keystroke handler with 3.4.0 behaviour 2003-03-09 18:36:24 +00:00
nethack.allison
78ce3749dc win32tty keystroke handling
- Move the code for keystroke handling into its own source file.
- Compile and link it as a dynamic link library.
- Dynamically load the keystroke handler at runtime
- Add support for specifying a different handler in defaults.nh
  so that internationalization issues can be dealt with without
  rebuilding nethack, just supply alternative handlers in HACKDIR.

The following exported functions need to be present in
the keystroke handler .dll:
ProcessKeystroke - returns an ascii value to NetHack
NHkbhit  - allows peeking to see if a key/mouse press is waiting
SourceWhere - returns location for souce code for a keystroke handler
SourceAuthor  - returns author information for a keystroke handler
KeyHandlerName  - returns the full or short name of the keystroke handling dll.
2003-03-09 15:44:50 +00:00
jwalz
19fe8a249b Update against what's in the directories. 2003-02-19 00:06:39 +00:00
nethack.allison
6cf5c60dcc CE patch (from <Someone>) 2003-02-13 05:10:21 +00:00
nethack.allison
3f3ce17256 wince (from <Someone>)
Added support for
Palm-size PC (Windows CE 2.11) and Smartphone 2002.
It works fine under emulation, but it still needs to be tested
on real device. There are also some minor tweaks here and there.

Removed files:
    sys/wince/recover.vcp
    sys/wince/wince.vcp

New files:
    sys/wince/winhcksp.rc
    sys/wince/defaults.nh
    sys/wince/hpc.vcp
    sys/wince/palmpc.vcp
    sys/wince/pocketpc.vcp
    sys/wince/smartphn.vcp

<Someone>
2002-12-18 03:51:34 +00:00
warwick
eaeb8b8525 Describe new Qt Mac OS X files. 2002-11-28 00:42:51 +00:00
nethack.allison
b9a3376fc5 stray files (from <Someone>)
winhack.h is not being used anywhere now and can safely be deleted.
There 2 instances of this file:

sys\wince\winhack.h
win\win32\winhack.h

The patch is also attached that adjusts for this.
2002-09-19 00:16:10 +00:00
warwick
ab63d7830e IPKG control file - specifies the packaging of files
for a ".ipk" binary package for handheld Linux (eg. Qtopia).
2002-08-20 07:35:05 +00:00
nethack.allison
0cc5b698d5 Windows CE port addition 2002-07-22 03:20:52 +00:00
nethack.allison
e0c54d9dab update ./Files with new fixes34.1 2002-03-23 09:00:13 +00:00
cohrs
5267502103 clean up Files 2002-03-21 04:37:35 +00:00
jwalz
de2bde1b08 List <Someone>'s new win/gem files. 2002-03-20 03:53:55 +00:00
nethack.allison
6c749785e8 Move tile2bmp.c to win/share
This is so it can be shared with Qt.
If, for some reason, we have to cut another source tarball for
3.4.0, then this will be included.  Otherwise, this will
turn out to be a post-3.4.0 patch.
2002-03-14 12:54:06 +00:00
nethack.allison
5673ae6e94 Add fixes* to the manifest. 2002-03-12 06:24:00 +00:00
cohrs
72951d6d8a add new sys/unix file to Files 2002-03-10 23:03:46 +00:00
nethack.allison
2960dc93c0 Some win32 updates
(There will be a couple more patches to follow in a bit)
2002-03-10 19:07:17 +00:00
nethack.allison
62ea5a9345 Makefile fix following depend. changes 2002-03-10 13:31:51 +00:00
nethack.allison
b3452e1ca2 win32: Consistent Makefile naming now that we have at least 2
Makefile.nt -> Makefile.msc
2002-03-06 18:54:13 +00:00
nethack.allison
4ec0588d33 remove win/win32/mhcmd.* from distribution 2002-03-05 01:47:31 +00:00
nethack.allison
5911621d9f win32gui: adds a splash screen
The splash screen uses the VERSION_MAJOR,
VERSION_MINOR, and PATCHLEVEL macros, but there is no room in case one
of these goes into two digits.  That seems like a safe assumption to
make.

The Makefile have rip.uu/splash.uu added to them.  However, this won't
work if you don't have splash.uu.  Instead, just copy rip.uu or another
.uu and name it splash.uu.  Make expects to have splash.uu present (at
least Borland's make).   It doesn't add splash.uu decoding to the IDE
framework.  It does a bit in winhack.rc and Makefile.bcc to bring
winhack.rc up to sync with Borland's compiler.  If you don't like the
splash screen, then I'll have to redo that part of the patch apart from
the others.
2002-03-04 22:40:01 +00:00
nethack.allison
be161bd5a1 add file sys/share/uudecode.c
This was added to allow the build on some platforms to be
completed without external utilities beyond the compiler.
2002-02-28 18:31:42 +00:00
keni
1b1532dbab patch from Janne: delete old files, update docs, tids 2002-02-22 12:13:46 +00:00
nethack.allison
a62d0a25bc Includes:
1) Removal of bmp placement in binary directory in NT
2) No use of "intrinsic function" optimization in dsp
3) Compilation of resource file for NT Console

Untested on Borland yet.  Tested on console/graphical/ide Microsoft C 6.0
2002-02-15 13:26:27 +00:00
keni
5d91c33e6a First set of Amiga updates 2002-02-14 11:55:32 +00:00
nethack.rankin
7d64f80033 Files update
Remove entries for the dropped sys/*/old/* files.
2002-02-07 23:02:50 +00:00
nethack.allison
9da90d302d rename follow-up
This patch assumes that the file rename of
sys/winnt/winnt.cnf to sys/winnt/defaults.nh has been done.
2002-02-07 06:33:27 +00:00
nethack.allison
06528d1002 3.3.2 to 3.4.0 2002-02-04 16:06:00 +00:00
nethack.allison
7f7c1ff26b FIXES:
- added counting to the menu window. I changed the way it works in the TTY
port though  ("you hear the rumble of distant thunder..." :)  The count
applies to the currently selected item instead of being aplied to the item
to be selected  (in other words a12 instead of 12a). It works better this
way in the graphical port since there is a notion of current menu item.
 I also notes that the count is ignored for PICK_ONE menu - is this by
design?

- somebode mention that text is not scrollable by default - this is fixed.

- fixed player selection dialog to use initXXXX options

-----------------------
B1028 [reported] win32: popup window is too short
The text in the popup window's top line "What do you want to
call the ..." is cut off. Could the window be bigger, so you
can read the entire line?

Fixed.

---------------------
B1027 [reported] win32: select via traditional class char
In a shop (and perhaps elsewhere), I can autoselect a class of
items to drop: a for all types, b for coins, c for weapons, ...,
A for every item, B for blessed items, ... I like the new
possibilities, but I would like to be able to use the old way of
using ! for potions, ) for weapons, etc., as well.

Fixed.

---------------------
B1026 [reported] win32: setting multiple options

I want to set packorder and pickup_types. The first comes up
first, and I type in the order. Then comes the second, without
any hint what is asked of me. A little explanation here would
be appropriate, like "pick up what things automatically?" or
somesuch. When more than one option is set where extra input
is required, some explanation is useful.

Looking into. Apparently something  end_menu() call is ignored by nethackw.

---------------------
B1025 [reported] win32: menu navigation
I press O. Now, when I press "a" to turn on "autodig", not only
is the mark set at "a", but there also appears a dotted
rectangle around option "A" (capitalized). Shouldn't this
rectangle also appear at "a"? Pressing "a" repeatedly toggles
the checkmark, but the rectangle switches between "A" and "a".
My CAPS LOCK is not set. The same goes for B, C, D, ... N,
by the way. Pressing "A" works the other way around: the first
press checks "A" and "rectangles" "a", the next unchecks "A"
and rectangles "A" as well.

Fixed.

---------------------
B1024 [reported] win32: no text in final window
After I clicked away the last screen with information
(challenges, I believe it was), I got an empty text screen, as
big as my screen, without any content. It looked like the text
screens that appear on the right, only it was larger and had
only a large OK button over the full width of the window, and
no cancel button. Why this window?

Fixed. The program did not set window text for RIP window.

---------------------
B1010 [known issue] win32: cosmetic
When I get my list of spells, the columns aren't properly
aligned: if the spell name is longer, the rest of the line
shifts right.

Fixed. Fixed-pitch font is used for menu window.

---------------------
B1004 [reported] win32: numeric keyboard Del/.-key
The Del/.-key on my numeric keyboard doesn't make me rest a turn

Fixed. Added rest on Del.

---------------------
B1003 [reported] win32: focus
When the window has the focus, the window bar isn't highlighted.

This is by design. Menu and text widnows are popup and the main
window is disabled when they are up.
2002-01-25 07:19:21 +00:00
nethack.allison
9d0a5acab1 Extraneous file removed as I head out the door of the office. 2002-01-23 01:21:54 +00:00
nethack.allison
b54f1c2089 Update ./Files to match file rename for win32. 2002-01-22 13:10:53 +00:00
nethack.allison
2d5361e389 From <Someone>,
Fixes:
- menu shortcuts implemented
- most windows close on space (except for menus with
  PICK_ANY style)
- "hilite_pet" option is implemented
- map scrolling is improved somewhat (it now scrolls if
  the char is within 5 spaces from the edge of the map -
  configurable by #define CLIPAROUND_MARGIN)
- added 3  winhack-specific options:

 win32_map_mode:[tiles|ascii4x6|ascii6x8|ascii8x8
                 |ascii16x8|ascii7x12|ascii8x12|ascii15x12
                 |ascii12x16|ascii10x18|fit_to_screen]=20
 win32_align_status:[left|top|right|bottom]
 win32_align_message:[left|top|right|bottom]

Note: aligning status window to left or right edge of the screen does
not look good.
2002-01-22 00:30:58 +00:00