agidev.com
 Home | Intro | News | Games | Community | NAGI |  Articles  | Download | Links

Articles

NAGI Documentation

Page: 1 2 3 4 [ 5 ] 6 7 8 9 10 11

Configuring

There are two configuration files used by NAGI.  Nagi.ini and standard.ini.

nagi.ini

Used to configured options related to NAGI only.  Graphics, sound and input are the main things here

Options in nagi.ini are:

[nagi] Section
console
Determines whether standard output and errors will go to the console window (console=1) or to two separate text files.  Handy if you want to record debug messages that occur.
crc_print
Prints the CRC of all games detected.  Handy to add an unknown game to NAGI’s CRC list.  Use with console=0 to save them to a file.
dir_list
a list of directories, separated by ‘;’ that NAGI will search to find AGI games.  If it is not a full path, it will search from the folder N.EXE exists in.  ie, if you define dir_Search_list to equal “.;games” it will search nagi’s main folder and a folder called games, also in nagi’s main folder.
sort
when NAGI has a list of games.. this is what is used to sort it.  0 = no sort.  1 = alpha sort  2= reverse alpha

[vid] Section
driver
at the moment NAGI only supports SDL for it’s video driver but it will hopfully support other drivers in the future.
scale
a multiplier used to define the screen.  320x200 is the resolution used when scale = 1.    Depends on whether a font is available for a certain scale.
full_screen
display the game in full screen.
renderer
supports cga0, cga1 and ega.  You can now emulate what your games used to look like on your old pc that only had a CGA adapter.  Set renderer to cga0 or cga1 to see them.
fonts_bitmap
files with extensions .nbf are used to define external fonts for nagi. This will be a list of filenames separated by ‘;’

[snd] section
driverset this to "sdl" for NAGI to use SDL's sound drivers.  SDL is currently only supported.
enable
enable sound.. might speed up for some systems if disabled
single
do you wish for the single channel days of the PC?  if "single" is set, then NAGI will only play the first channel of sound resources. Might be a bit loud too.. turn the volume down a bit if your ears are bleeding
dissolve
AGI fades notes away to give them more impact.  The data used to fade notes varies between interpreter versions.  It's probably an envelope.. but I don't know what either is really... not into music
0 = no dissolve.. just play for as long as it's meant to be played.  This was used in older v2.4xx (and older) games I THINK
1 = not used
2 = v2.9xx games used a shorter dissolve
3 (default) = v3 games used this dissolve pattern.. slightly longer
Note: dissolve does not affect the noise channel in the original interpreter and NAGI follows this faithfully.
read_var
AGI will read a variable (23) which will contribute to the volume calculations.  The problem is 0=max volume, 0xF=silence.  Guess which games don't set this correctly.  Yup... almost every single bloody game that uses the AGI template.  To Chris Cromer's credit: he's fixed it in his version of the template.
Set this to 1 if you run sierra games (or fan games that have this set correctly)
volume
volume for square wave.  The maximum is 0x7FFF (max for a signed word) (around 32000).  Set this lower if you want a quieter game.  Remember, the actual volume will be this variable divided by the number of channels.

[sdl] section
If a sound or video section is defined to use SDL.. it will read some options from this section.
drv_video
supports directx and windib
drv_sound
supports directx and waveout.  Waveout sounds a lot better on my PC.

standard.ini

Used to define different agi standards.  There are many different versions of AGI and they all differ slightly.  Standard.ini defines some known PC and Amiga standards and also provides a CRC system to help identify games and associate them with the correct agi standard.

This config file has been designed to be helpful for any interpreter.. not just NAGI.  Only game related information should be in this section.

It has two types of sections defined in it.  The first is [standard] which is the core of standard.ini.  it defines all the sections that will contain crc’s to match known games and other options.  There is only one [standard].  The second type are sections defining games or standard default interpreters.   It is designed so sections that inherit other sections.  So if you define a game section called [donald], you can let it inherit an interpreter called [pc_v2_440] instead of having to define all of the options to emulate a v2.440 interpreter.

CRC_LIST -> GAME -> INTERPRETER


Options for [standard]

crc_list
list of all sections that contain game crc matching information.  Each section is separated by a ';'.
agi_list
list of all sections that default a default interpreter.  Each section is separated by a ';'.
force
force nagi to not search for games but just use a specific game standard in the main working folder.  Useful for fan games.
v2_default
if there are no crc matches and it has been determined to be a v2 game.. use this standard
v3_default
if there are no crc matches and it has been determined to be a v3 game.. use this standard
amiga_v2_default
if game has been determined to be an Amiga v2 game, use this standard
amiga_v3_default
if game has been determined to be an Amiga v3 game, use this standard

Options for games [game_name]

name
the name used in the game selection menus and the window title bar.
inherits
if a key in not found in this section.. it will check the section defined in inherits.  You can use inherits for as many sections as you want.  
id
used for save games.  Not used for copy protection anymore
protection
protection hacks.. not implemented but will bypass tests and copy protection later on


version_info
used for when a user requests the interpereter version.
mouse There are different variations of interfaces to access the mouse.  0=no mouse 1=sierra v2 automouse 2=sierra v3 extra mouse commands 10=brian buff’s mouse support
loop_update
if you let the interpreter automatically pick the loop of an animated moving object, it will only do it if it has under 4 loops maximum in version 2 interpreters, any number of loops in early v3 interpreters and only if a flag is set for any number for later v3. 1=four, 2=all, 3=flag
object_decrypt if set to 1, nagi will try and decrypt the object file before trying to read it.
object_packed determines whether the object is word packed (amiga) or not (pc)
compression determines whether the interpreter will try and use decompression on the volume files or not.
dir_type
are the dir files separated or joined up into one. 0=none 1=separated 2=combined 3=combined amiga style
crc_vol_X
a 32 bit crc of a volume file.  Use winzip’s crcs or nagi’s crc_print to determine the crc’s.  Will try crc_vol_0 to crc_vol_15.
crc_dir
for version 3 interpreter files.. crc of the combined dir file
crc_dir_log
crc of a log dir
crc_dir_view
crc of a view dir
crc_dir_pic
crc of a pic dir
crc_dir_snd
crc of a snd dir
crc_object
crc of an objects file
crc_words
crc of a token file

Page: 1 2 3 4 [ 5 ] 6 7 8 9 10 11