Subversion Repositories eduke32

Rev

Rev 5050 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 5050 Rev 5062
Line 29... Line 29...
29
29
30
#include "duke3d.h"
30
#include "duke3d.h"
31
#include "common_game.h"
31
#include "common_game.h"
32
#include "grpscan.h"
32
#include "grpscan.h"
33
33
-
 
34
static void process_vaca13(void);
-
 
35
static void process_vacapp15(void);
-
 
36
34
// custom GRP support for the startup window, file format reflects the structure below
37
// custom GRP support for the startup window, file format reflects the structure below
35
#define GAMELISTFILE "games.list"
38
#define GAMELISTFILE "games.list"
36
//    name                                     crc          size      flags                         dependency  scriptname     defname
39
//    name                                     crc          size      flags                         dependency  scriptname     defname           postprocessing
37
struct grpfile internalgrpfiles[NUMGRPFILES] =
40
struct grpfile internalgrpfiles[] =
38
{
41
{
39
    { "Duke Nukem 3D",                         DUKE13_CRC,  26524524, GAMEFLAG_DUKE,                         0, NULL,          NULL,        NULL },
42
    { "Duke Nukem 3D",                         DUKE13_CRC,  26524524, GAMEFLAG_DUKE,                         0, NULL, NULL, NULL, NULL },
40
    { "Duke Nukem 3D (South Korean Censored)", DUKEKR_CRC,  26385383, GAMEFLAG_DUKE,                         0, NULL,          NULL,        NULL },
43
    { "Duke Nukem 3D (South Korean Censored)", DUKEKR_CRC,  26385383, GAMEFLAG_DUKE,                         0, NULL, NULL, NULL, NULL },
41
    { "Duke Nukem 3D: Atomic Edition",         DUKE15_CRC,  44356548, GAMEFLAG_DUKE,                         0, NULL,          NULL,        NULL },
44
    { "Duke Nukem 3D: Atomic Edition",         DUKE15_CRC,  44356548, GAMEFLAG_DUKE,                         0, NULL, NULL, NULL, NULL },
42
    { "Duke Nukem 3D: Plutonium Pak",          DUKEPP_CRC,  44348015, GAMEFLAG_DUKE,                         0, NULL,          NULL,        NULL },
45
    { "Duke Nukem 3D: Plutonium Pak",          DUKEPP_CRC,  44348015, GAMEFLAG_DUKE,                         0, NULL, NULL, NULL, NULL },
43
    { "Duke Nukem 3D Shareware 0.99",          DUKE099_CRC, 9690241,  GAMEFLAG_DUKE|GAMEFLAG_DUKEBETA,       0, NULL,          NULL,        NULL },
46
    { "Duke Nukem 3D Shareware 0.99",          DUKE099_CRC, 9690241,  GAMEFLAG_DUKE|GAMEFLAG_DUKEBETA,       0, NULL, NULL, NULL, NULL },
44
    { "Duke Nukem 3D Shareware 1.0",           DUKE10_CRC,  10429258, GAMEFLAG_DUKE|GAMEFLAG_SHAREWARE,      0, NULL,          NULL,        NULL },
47
    { "Duke Nukem 3D Shareware 1.0",           DUKE10_CRC,  10429258, GAMEFLAG_DUKE|GAMEFLAG_SHAREWARE,      0, NULL, NULL, NULL, NULL },
45
    { "Duke Nukem 3D Shareware 1.1",           DUKE11_CRC,  10442980, GAMEFLAG_DUKE|GAMEFLAG_SHAREWARE,      0, NULL,          NULL,        NULL },
48
    { "Duke Nukem 3D Shareware 1.1",           DUKE11_CRC,  10442980, GAMEFLAG_DUKE|GAMEFLAG_SHAREWARE,      0, NULL, NULL, NULL, NULL },
46
    { "Duke Nukem 3D Shareware 1.3D",          DUKESW_CRC,  11035779, GAMEFLAG_DUKE|GAMEFLAG_SHAREWARE,      0, NULL,          NULL,        NULL },
49
    { "Duke Nukem 3D Shareware 1.3D",          DUKESW_CRC,  11035779, GAMEFLAG_DUKE|GAMEFLAG_SHAREWARE,      0, NULL, NULL, NULL, NULL },
47
    { "Duke Nukem 3D Mac Demo",                DUKEMD_CRC,  10444391, GAMEFLAG_DUKE|GAMEFLAG_SHAREWARE,      0, NULL,          NULL,        NULL },
50
    { "Duke Nukem 3D Mac Demo",                DUKEMD_CRC,  10444391, GAMEFLAG_DUKE|GAMEFLAG_SHAREWARE,      0, NULL, NULL, NULL, NULL },
-
 
51
    { "Duke it out in D.C. (1.3D)",            DUKEDC13_CRC, 7926624, GAMEFLAG_DUKE|GAMEFLAG_ADDON, DUKE13_CRC, NULL, NULL, NULL, NULL },
-
 
52
    { "Duke it out in D.C.",                   DUKEDCPP_CRC, 8225517, GAMEFLAG_DUKE|GAMEFLAG_ADDON, DUKE15_CRC, NULL, NULL, NULL, NULL },
48
    { "Duke it out in D.C.",                   DUKEDC_CRC,  8410183 , GAMEFLAG_DUKE|GAMEFLAG_ADDON, DUKE15_CRC, NULL,          NULL,        NULL },
53
    { "Duke it out in D.C.",                   DUKEDC_CRC,  8410183,  GAMEFLAG_DUKE|GAMEFLAG_ADDON, DUKE15_CRC, NULL, NULL, NULL, NULL },
-
 
54
    { "Duke Caribbean: Life's a Beach (1.3D)", VACA13_CRC,  23559381, GAMEFLAG_DUKE|GAMEFLAG_ADDON, DUKE13_CRC, NULL, NULL, process_vaca13, NULL },
-
 
55
    { "Duke Caribbean: Life's a Beach (PPak)", VACAPP_CRC,  22551333, GAMEFLAG_DUKE|GAMEFLAG_ADDON, DUKEPP_CRC, NULL, NULL, process_vacapp15, NULL },
-
 
56
    { "Duke Caribbean: Life's a Beach",        VACA15_CRC,  22521880, GAMEFLAG_DUKE|GAMEFLAG_ADDON, DUKE15_CRC, NULL, NULL, process_vacapp15, NULL },
49
    { "Duke Caribbean: Life's a Beach",        DUKECB_CRC,  22213819, GAMEFLAG_DUKE|GAMEFLAG_ADDON, DUKE15_CRC, NULL,          NULL,        NULL },
57
    { "Duke Caribbean: Life's a Beach",        DUKECB_CRC,  22213819, GAMEFLAG_DUKE|GAMEFLAG_ADDON, DUKE15_CRC, NULL, NULL, NULL, NULL },
50
    { "Duke: Nuclear Winter",                  DUKENW_CRC,  16169365, GAMEFLAG_DUKE|GAMEFLAG_ADDON|GAMEFLAG_NWINTER, DUKE15_CRC, "NWINTER.CON", NULL,        NULL },
58
    { "Duke: Nuclear Winter",                  DUKENW_CRC,  16169365, GAMEFLAG_DUKE|GAMEFLAG_ADDON|GAMEFLAG_NWINTER, DUKE15_CRC, "NWINTER.CON", NULL, NULL, NULL },
51
    { "NAM",                                   NAM_CRC,     43448927, GAMEFLAG_NAM,                          0, NULL,          NULL,        NULL },
59
    { "NAM",                                   NAM_CRC,     43448927, GAMEFLAG_NAM,                          0, NULL, NULL, NULL, NULL },
52
    { "NAPALM",                                NAPALM_CRC,  44365728, GAMEFLAG_NAM|GAMEFLAG_NAPALM,          0, NULL,          NULL,        NULL },
60
    { "NAPALM",                                NAPALM_CRC,  44365728, GAMEFLAG_NAM|GAMEFLAG_NAPALM,          0, NULL, NULL, NULL, NULL },
53
    { "WWII GI",                               WW2GI_CRC,   77939508, GAMEFLAG_WW2GI|GAMEFLAG_NAM,           0, NULL,          NULL,        NULL },
61
    { "WWII GI",                               WW2GI_CRC,   77939508, GAMEFLAG_WW2GI|GAMEFLAG_NAM,           0, NULL, NULL, NULL, NULL },
54
};
62
};
55
struct grpfile *foundgrps = NULL;
63
struct grpfile *foundgrps = NULL;
56
struct grpfile *listgrps = NULL;
64
struct grpfile *listgrps = NULL;
57
65
58
static void LoadList(const char * filename)
66
static void LoadList(const char * filename)
Line 72... Line 80...
72
    scriptfile_addsymbolvalue("GAMEFLAG_NAPALM", GAMEFLAG_NAM|GAMEFLAG_NAPALM);
80
    scriptfile_addsymbolvalue("GAMEFLAG_NAPALM", GAMEFLAG_NAM|GAMEFLAG_NAPALM);
73
    scriptfile_addsymbolvalue("GAMEFLAG_WW2GI", GAMEFLAG_NAM|GAMEFLAG_WW2GI);
81
    scriptfile_addsymbolvalue("GAMEFLAG_WW2GI", GAMEFLAG_NAM|GAMEFLAG_WW2GI);
74
    scriptfile_addsymbolvalue("DUKE15_CRC", DUKE15_CRC);
82
    scriptfile_addsymbolvalue("DUKE15_CRC", DUKE15_CRC);
75
    scriptfile_addsymbolvalue("DUKEPP_CRC", DUKEPP_CRC);
83
    scriptfile_addsymbolvalue("DUKEPP_CRC", DUKEPP_CRC);
76
    scriptfile_addsymbolvalue("DUKE13_CRC", DUKE13_CRC);
84
    scriptfile_addsymbolvalue("DUKE13_CRC", DUKE13_CRC);
-
 
85
    scriptfile_addsymbolvalue("DUKEDC13_CRC", DUKEDC13_CRC);
-
 
86
    scriptfile_addsymbolvalue("DUKEDCPP_CRC", DUKEDCPP_CRC);
77
    scriptfile_addsymbolvalue("DUKEDC_CRC", DUKEDC_CRC);
87
    scriptfile_addsymbolvalue("DUKEDC_CRC", DUKEDC_CRC);
-
 
88
    scriptfile_addsymbolvalue("VACA13_CRC", VACA13_CRC);
-
 
89
    scriptfile_addsymbolvalue("VACAPP_CRC", VACAPP_CRC);
-
 
90
    scriptfile_addsymbolvalue("VACA15_CRC", VACA15_CRC);
78
    scriptfile_addsymbolvalue("DUKECB_CRC", DUKECB_CRC);
91
    scriptfile_addsymbolvalue("DUKECB_CRC", DUKECB_CRC);
79
    scriptfile_addsymbolvalue("DUKENW_CRC", DUKENW_CRC);
92
    scriptfile_addsymbolvalue("DUKENW_CRC", DUKENW_CRC);
80
    scriptfile_addsymbolvalue("NAM_CRC", NAM_CRC);
93
    scriptfile_addsymbolvalue("NAM_CRC", NAM_CRC);
81
    scriptfile_addsymbolvalue("NAPALM_CRC", NAPALM_CRC);
94
    scriptfile_addsymbolvalue("NAPALM_CRC", NAPALM_CRC);
82
    scriptfile_addsymbolvalue("WW2GI_CRC", WW2GI_CRC);
95
    scriptfile_addsymbolvalue("WW2GI_CRC", WW2GI_CRC);
Line 180... Line 193...
180
static void LoadGameList(void)
193
static void LoadGameList(void)
181
{
194
{
182
    struct grpfile *fg;
195
    struct grpfile *fg;
183
    CACHE1D_FIND_REC *srch, *sidx;
196
    CACHE1D_FIND_REC *srch, *sidx;
184
   
197
185
    int32_t i;
-
 
186
-
 
187
    for (i = 0; i<NUMGRPFILES; i++)
198
    for (size_t i = 0; i < ARRAY_SIZE(internalgrpfiles); i++)
188
    {
199
    {
189
        fg = (struct grpfile *)Xcalloc(1, sizeof(struct grpfile));
200
        fg = (struct grpfile *)Xcalloc(1, sizeof(struct grpfile));
190
201
191
        fg->name = Xstrdup(internalgrpfiles[i].name);
202
        fg->name = Xstrdup(internalgrpfiles[i].name);
192
        fg->crcval = internalgrpfiles[i].crcval;
203
        fg->crcval = internalgrpfiles[i].crcval;
Line 198... Line 209...
198
            fg->scriptname = dup_filename(internalgrpfiles[i].scriptname);
209
            fg->scriptname = dup_filename(internalgrpfiles[i].scriptname);
199
210
200
        if (internalgrpfiles[i].defname)
211
        if (internalgrpfiles[i].defname)
201
            fg->defname = dup_filename(internalgrpfiles[i].defname);
212
            fg->defname = dup_filename(internalgrpfiles[i].defname);
202
213
-
 
214
        fg->postprocessing = internalgrpfiles[i].postprocessing;
-
 
215
203
        fg->next = listgrps;
216
        fg->next = listgrps;
204
        listgrps = fg;
217
        listgrps = fg;
205
    }
218
    }
206
219
207
    srch = klistpath("/", "*.grpinfo", CACHE1D_FIND_FILE);
220
    srch = klistpath("/", "*.grpinfo", CACHE1D_FIND_FILE);
Line 334... Line 347...
334
    }
347
    }
335
348
336
    return NULL;
349
    return NULL;
337
}
350
}
338
351
339
int32_t ScanGroups(void)
352
static void ProcessGroups(CACHE1D_FIND_REC *srch)
340
{
353
{
341
    CACHE1D_FIND_REC *srch, *sidx;
354
    CACHE1D_FIND_REC *sidx;
342
    struct grpcache *fg, *fgg;
355
    struct grpcache *fg, *fgg;
343
    struct grpfile *grp;
356
    struct grpfile *grp;
344
    char *fn;
357
    char *fn;
345
    struct Bstat st;
358
    struct Bstat st;
-
 
359
346
#define BUFFER_SIZE (1024 * 1024 * 8)
360
#define BUFFER_SIZE (1024 * 1024 * 8)
347
    uint8_t *buf = (uint8_t *)Xmalloc(BUFFER_SIZE);
361
    uint8_t *buf = (uint8_t *)Xmalloc(BUFFER_SIZE);
348
362
349
    initprintf("Searching for game data...\n");
-
 
350
-
 
351
    LoadGameList();
-
 
352
    LoadGroupsCache();
-
 
353
-
 
354
    srch = klistpath("/", "*.grp", CACHE1D_FIND_FILE);
-
 
355
-
 
356
    for (sidx = srch; sidx; sidx = sidx->next)
363
    for (sidx = srch; sidx; sidx = sidx->next)
357
    {
364
    {
358
        for (fg = grpcache; fg; fg = fg->next)
365
        for (fg = grpcache; fg; fg = fg->next)
359
        {
366
        {
360
            if (!Bstrcmp(fg->name, sidx->name)) break;
367
            if (!Bstrcmp(fg->name, sidx->name)) break;
Line 422... Line 429...
422
            fgg->next = usedgrpcache;
429
            fgg->next = usedgrpcache;
423
            usedgrpcache = fgg;
430
            usedgrpcache = fgg;
424
        }
431
        }
425
    }
432
    }
426
433
-
 
434
    Bfree(buf);
-
 
435
}
-
 
436
-
 
437
int32_t ScanGroups(void)
-
 
438
{
-
 
439
    CACHE1D_FIND_REC *srch;
-
 
440
    struct grpcache *fg, *fgg;
-
 
441
    struct grpfile *grp;
-
 
442
-
 
443
    initprintf("Searching for game data...\n");
-
 
444
-
 
445
    LoadGameList();
-
 
446
    LoadGroupsCache();
-
 
447
-
 
448
    srch = klistpath("/", "*.grp", CACHE1D_FIND_FILE);
-
 
449
    ProcessGroups(srch);
427
    klistfree(srch);
450
    klistfree(srch);
-
 
451
-
 
452
    srch = klistpath("/", "*.ssi", CACHE1D_FIND_FILE);
-
 
453
    ProcessGroups(srch);
-
 
454
    klistfree(srch);
-
 
455
428
    FreeGroupsCache();
456
    FreeGroupsCache();
429
457
430
    for (grp = foundgrps; grp; /*grp=grp->next*/)
458
    for (grp = foundgrps; grp; /*grp=grp->next*/)
431
    {
459
    {
432
        struct grpfile *igrp;
460
        struct grpfile *igrp;
Line 478... Line 506...
478
            }
506
            }
479
            fclose(fp);
507
            fclose(fp);
480
        }
508
        }
481
//        initprintf("Found %d recognized GRP %s.\n",i,i>1?"files":"file");
509
//        initprintf("Found %d recognized GRP %s.\n",i,i>1?"files":"file");
482
510
483
        Bfree(buf);
-
 
484
        return 0;
511
        return 0;
485
    }
512
    }
486
513
487
    initprintf("Found no recognized game data!\n");
514
    initprintf("Found no recognized game data!\n");
488
515
489
    Bfree(buf);
-
 
490
    return 0;
516
    return 0;
491
}
517
}
492
518
493
519
494
void FreeGroups(void)
520
void FreeGroups(void)
Line 504... Line 530...
504
    }
530
    }
505
531
506
    FreeGameList();
532
    FreeGameList();
507
}
533
}
508
534
-
 
535
static void process_vaca13(void)
-
 
536
{
-
 
537
    krename("ADDREE.COV", "ADDREE.VOC");
-
 
538
    krename("BALLBOOM.COV", "BALLBOOM.VOC");
-
 
539
    krename("BARMUSIC.COV", "BARMUSIC.VOC");
-
 
540
    krename("BCHBALL.COV", "BCHBALL.VOC");
-
 
541
    krename("BOING.COV", "BOING.VOC");
-
 
542
    krename("CHACHA.COV", "CHACHA.VOC");
-
 
543
    krename("CHAINDRV.COV", "CHAINDRV.VOC");
-
 
544
    krename("CHEAP01.COV", "CHEAP01.VOC");
-
 
545
    krename("CHEER.COV", "CHEER.VOC");
-
 
546
    krename("CHNSQRT.COV", "CHNSQRT.VOC");
-
 
547
    krename("COCOANUT.COV", "COCOANUT.VOC");
-
 
548
    krename("CRUSH2.COV", "CRUSH2.VOC");
-
 
549
    krename("DEFLATE2.COV", "DEFLATE2.VOC");
-
 
550
    krename("DRAGHURT.COV", "DRAGHURT.VOC");
-
 
551
    krename("DRAGROAM.COV", "DRAGROAM.VOC");
-
 
552
    krename("DRAGSHOT.COV", "DRAGSHOT.VOC");
-
 
553
    krename("DUKE01.COV", "DUKE01.VOC");
-
 
554
    krename("ELEV1.COV", "ELEV1.VOC");
-
 
555
    krename("GMEOVR05.COV", "GMEOVR05.VOC");
-
 
556
    krename("GULLDIE.COV", "GULLDIE.VOC");
-
 
557
    krename("GULLHURT.COV", "GULLHURT.VOC");
-
 
558
    krename("GULLROAM.COV", "GULLROAM.VOC");
-
 
559
    krename("GULLSHIT.COV", "GULLSHIT.VOC");
-
 
560
    krename("HELP04.COV", "HELP04.VOC");
-
 
561
    krename("ICECONCH.COV", "ICECONCH.VOC");
-
 
562
    krename("IDLEBOAT.COV", "IDLEBOAT.VOC");
-
 
563
    krename("KICKHEAD.COV", "KICKHEAD.VOC");
-
 
564
    krename("LANI05.COV", "LANI05.VOC");
-
 
565
    krename("LANI08.COV", "LANI08.VOC");
-
 
566
    krename("LANIDUK2.COV", "LANIDUK2.VOC");
-
 
567
    krename("MUSCLE01.COV", "MUSCLE01.VOC");
-
 
568
    krename("MUSCLE04.COV", "MUSCLE04.VOC");
-
 
569
    krename("MUZAK.COV", "MUZAK.VOC");
-
 
570
    krename("PINEFALL.COV", "PINEFALL.VOC");
-
 
571
    krename("POINT07.COV", "POINT07.VOC");
-
 
572
    krename("POINT08.COV", "POINT08.VOC");
-
 
573
    krename("RADIO.COV", "RADIO.VOC");
-
 
574
    krename("RUIN01.COV", "RUIN01.VOC");
-
 
575
    krename("SCREAM.COV", "SCREAM.VOC");
-
 
576
    krename("SCREAM04.COV", "SCREAM04.VOC");
-
 
577
    krename("SCREAM9.COV", "SCREAM9.VOC");
-
 
578
    krename("SHIPHORN.COV", "SHIPHORN.VOC");
-
 
579
    krename("SNGLGULL.COV", "SNGLGULL.VOC");
-
 
580
    krename("SQRT4.COV", "SQRT4.VOC");
-
 
581
    krename("SQUIRT1.COV", "SQUIRT1.VOC");
-
 
582
    krename("SSCOOL1.COV", "SSCOOL1.VOC");
-
 
583
    krename("SSCOOL2.COV", "SSCOOL2.VOC");
-
 
584
    krename("SSCOOL3.COV", "SSCOOL3.VOC");
-
 
585
    krename("SSDIE1.COV", "SSDIE1.VOC");
-
 
586
    krename("SSDIE2.COV", "SSDIE2.VOC");
-
 
587
    krename("SSNORM01.COV", "SSNORM01.VOC");
-
 
588
    krename("SSNORM02.COV", "SSNORM02.VOC");
-
 
589
    krename("SSNORM03.COV", "SSNORM03.VOC");
-
 
590
    krename("SSNORM04.COV", "SSNORM04.VOC");
-
 
591
    krename("SSNORM05.COV", "SSNORM05.VOC");
-
 
592
    krename("SSNORM06.COV", "SSNORM06.VOC");
-
 
593
    krename("SSNORM07.COV", "SSNORM07.VOC");
-
 
594
    krename("SSNORM08.COV", "SSNORM08.VOC");
-
 
595
    krename("SSNORM10.COV", "SSNORM10.VOC");
-
 
596
    krename("SSNORM11.COV", "SSNORM11.VOC");
-
 
597
    krename("SSNORM12.COV", "SSNORM12.VOC");
-
 
598
    krename("SSNORM13.COV", "SSNORM13.VOC");
-
 
599
    krename("SSNORM14.COV", "SSNORM14.VOC");
-
 
600
    krename("SSNORM15.COV", "SSNORM15.VOC");
-
 
601
    krename("SSNORM16.COV", "SSNORM16.VOC");
-
 
602
    krename("SSNORM17.COV", "SSNORM17.VOC");
-
 
603
    krename("SSNORM18.COV", "SSNORM18.VOC");
-
 
604
    krename("SSNORM19.COV", "SSNORM19.VOC");
-
 
605
    krename("SSNORM20.COV", "SSNORM20.VOC");
-
 
606
    krename("SSTAUNT1.COV", "SSTAUNT1.VOC");
-
 
607
    krename("SSTAUNT2.COV", "SSTAUNT2.VOC");
-
 
608
    krename("SSTAUNT3.COV", "SSTAUNT3.VOC");
-
 
609
    krename("SSTAUNT4.COV", "SSTAUNT4.VOC");
-
 
610
    krename("SSTAUNT5.COV", "SSTAUNT5.VOC");
-
 
611
    krename("SSTAUNT6.COV", "SSTAUNT6.VOC");
-
 
612
    krename("SSTAUNT7.COV", "SSTAUNT7.VOC");
-
 
613
    krename("SSTAUNT8.COV", "SSTAUNT8.VOC");
-
 
614
    krename("SURF.COV", "SURF.VOC");
-
 
615
    krename("TAN01.COV", "TAN01.VOC");
-
 
616
    krename("TAN04.COV", "TAN04.VOC");
-
 
617
    krename("VINESNAP.COV", "VINESNAP.VOC");
-
 
618
    krename("VOODRUMS.COV", "VOODRUMS.VOC");
-
 
619
    krename("WIND54.COV", "WIND54.VOC");
-
 
620
    krename("DOOMSDAY.DIM", "DOOMSDAY.MID");
-
 
621
    krename("DUKE-O.DIM", "DUKE-O.MID");
-
 
622
    krename("IRIEPRTY.DIM", "IRIEPRTY.MID");
-
 
623
    krename("JUNGVEIN.DIM", "JUNGVEIN.MID");
-
 
624
    krename("PRTYCRUZ.DIM", "PRTYCRUZ.MID");
-
 
625
    krename("SOL-MAN1.DIM", "SOL-MAN1.MID");
-
 
626
    krename("CINEOV3.MNA", "CINEOV3.ANM");
-
 
627
    krename("DUKETEAM.MNA", "DUKETEAM.ANM");
-
 
628
    krename("BEACHBAB.NOC", "BEACHBAB.CON");
-
 
629
    krename("BEACHBAL.NOC", "BEACHBAL.CON");
-
 
630
    krename("BEACHBTH.NOC", "BEACHBTH.CON");
-
 
631
    krename("DEFS.NOC", "DEFS.CON");
-
 
632
    krename("DRAGON.NOC", "DRAGON.CON");
-
 
633
    krename("GAME.NOC", "GAME.CON");
-
 
634
    krename("SEAGULL.NOC", "SEAGULL.CON");
-
 
635
    krename("SOUNDS.NOC", "SOUNDS.CON");
-
 
636
    krename("USER.NOC", "USER.CON");
-
 
637
    krename("DEMO1.OMD", "DEMO1.DMO");
-
 
638
    krename("DEMO2.OMD", "DEMO2.DMO");
-
 
639
    krename("DEMO3.OMD", "DEMO3.DMO");
-
 
640
    krename("VACA1.PAM", "VACA1.MAP");
-
 
641
    krename("VACA2.PAM", "VACA2.MAP");
-
 
642
    krename("VACA3.PAM", "VACA3.MAP");
-
 
643
    krename("VACA4.PAM", "VACA4.MAP");
-
 
644
    krename("VACA5.PAM", "VACA5.MAP");
-
 
645
    krename("VACA6.PAM", "VACA6.MAP");
-
 
646
    krename("VACA7.PAM", "VACA7.MAP");
-
 
647
    krename("VACADM1.PAM", "VACADM1.MAP");
-
 
648
    krename("VACADM2.PAM", "VACADM2.MAP");
-
 
649
    krename("VACADM3.PAM", "VACADM3.MAP");
-
 
650
    krename("VACADM4.PAM", "VACADM4.MAP");
-
 
651
    krename("VACASL.PAM", "VACASL.MAP");
-
 
652
    krename("TILES000.TRA", "TILES000.ART");
-
 
653
    krename("TILES001.TRA", "TILES001.ART");
-
 
654
    krename("TILES003.TRA", "TILES003.ART");
-
 
655
    krename("TILES005.TRA", "TILES005.ART");
-
 
656
    krename("TILES006.TRA", "TILES006.ART");
-
 
657
    krename("TILES007.TRA", "TILES007.ART");
-
 
658
    krename("TILES008.TRA", "TILES008.ART");
-
 
659
    krename("TILES009.TRA", "TILES009.ART");
-
 
660
    krename("TILES010.TRA", "TILES010.ART");
-
 
661
    krename("TILES012.TRA", "TILES012.ART");
-
 
662
    krename("TILES014.TRA", "TILES014.ART");
-
 
663
}
-
 
664
-
 
665
static void process_vacapp15(void)
-
 
666
{
-
 
667
    krename("DEFS.NOC", "DEFS.CON");
-
 
668
    krename("GAME.NOC", "GAME.CON");
-
 
669
    krename("USER.NOC", "USER.CON");
-
 
670
    krename("DEMO1.OMD", "DEMO1.DMO");
-
 
671
    krename("DEMO2.OMD", "DEMO2.DMO");
-
 
672
    krename("DEMO3.OMD", "DEMO3.DMO");
-
 
673
-
 
674
    initgroupfile("VACATION.PRG");
-
 
675
}