shithub: build

Download patch

ref: 1420e013388e3a5669dc41df3b9ac40fa992360b
parent: f679214fa4fa085999bc03eb6b3cf9e6971514ed
author: Jacob Moody <moody@posixcafe.org>
date: Mon Feb 13 18:16:02 EST 2023

lowercase files

--- a/duke
+++ b/duke
@@ -5,64 +5,64 @@
 games/grpfs /sys/games/lib/duke3d/duke3d.grp
 
 play '/mnt/grp/'^`{fortune /fd/0 <<.
-	ABORT01.VOC
-	BITCHN04.VOC
-	BLOWIT01.VOC
-	BOOKEM03.VOC
-	CHEW05.VOC
-	COMEON02.VOC
-	CON03.VOC
-	COOL01.VOC
-	CRY01.VOC
-	DIESOB03.VOC
-	DOOMED16.VOC
-	DUKNUK14.VOC
-	EAT08.VOC
-	EATSHT01.VOC
-	ESCAPE01.VOC
-	FACE01.VOC
-	FORCE01.VOC
-	GETCRAP1.VOC
-	GMEOVR05.VOC
-	GOTHRT01.VOC
-	GROOVY02.VOC
-	HAIL01.VOC
-	HAPPEN01.VOC
-	HOLYCW01.VOC
-	HOLYSH02.VOC
-	IMGOOD12.VOC
-	INDPNC01.VOC
-	INHELL01.VOC
-	KICK01-I.VOC
-	KTITX.VOC
-	LETGOD01.VOC
-	LETSRK03.VOC
-	LOOKIN01.VOC
-	MAKEDAY1.VOC
-	MDEVL01.VOC
-	MYSELF3A.VOC
-	NAME01.VOC
-	NOBODY01.VOC
-	ONLYON03.VOC
-	PARTY03.VOC
-	PAY02.VOC
-	PIECE02.VOC
-	POSTAL01.VOC
-	QUAKE06.VOC
-	RIP01.VOC
-	RIPEM08.VOC
-	SHAKE2A.VOC
-	SLACKER1.VOC
-	SMACK02.VOC
-	SOHELP02.VOC
-	SUKIT01.VOC
-	TERMIN01.VOC
-	THSUK13A.VOC
-	VACATN01.VOC
-	WANSOM4A.VOC
-	WHIPYU01.VOC
-	YIPPIE01.VOC
-	YOHOHO01.VOC
+	abort01.voc
+	bitchn04.voc
+	blowit01.voc
+	bookem03.voc
+	chew05.voc
+	comeon02.voc
+	con03.voc
+	cool01.voc
+	cry01.voc
+	diesob03.voc
+	doomed16.voc
+	duknuk14.voc
+	eat08.voc
+	eatsht01.voc
+	escape01.voc
+	face01.voc
+	force01.voc
+	getcrap1.voc
+	gmeovr05.voc
+	gothrt01.voc
+	groovy02.voc
+	hail01.voc
+	happen01.voc
+	holycw01.voc
+	holysh02.voc
+	imgood12.voc
+	indpnc01.voc
+	inhell01.voc
+	kick01-i.voc
+	ktitx.voc
+	letgod01.voc
+	letsrk03.voc
+	lookin01.voc
+	makeday1.voc
+	mdevl01.voc
+	myself3a.voc
+	name01.voc
+	nobody01.voc
+	onlyon03.voc
+	party03.voc
+	pay02.voc
+	piece02.voc
+	postal01.voc
+	quake06.voc
+	rip01.voc
+	ripem08.voc
+	shake2a.voc
+	slacker1.voc
+	smack02.voc
+	sohelp02.voc
+	sukit01.voc
+	termin01.voc
+	thsuk13a.voc
+	vacatn01.voc
+	wansom4a.voc
+	whipyu01.voc
+	yippie01.voc
+	yohoho01.voc
 	YOHOHO09.VOC
 .
 }
--- a/grpfs.c
+++ b/grpfs.c
@@ -1,5 +1,6 @@
 #include <u.h>
 #include <libc.h>
+#include <ctype.h>
 #include <fcall.h>
 #include <thread.h>
 #include <9p.h>
@@ -58,7 +59,6 @@
 
 	f = r->fid->file->aux;
 	if(f->buf == nil){
-		print("reading %d x %d tile\n", f->x, f->y);
 		f->buf = mallocz((11 * 5) + 5 + (f->x * f->y * 4), 1);
 		sprint((char*)f->buf, "%11s %11d %11d %11d %11d", "a8r8g8b8", 0, 0, f->x, f->y);
 		dot = (uint*)(f->buf + (11 * 5) + 5);
@@ -157,6 +157,7 @@
 {
 	char *kens = "KenSilverman";
 	uchar buf[64];
+	uchar *p;
 	int i, n;
 	ulong off;
 	XFile *f;
@@ -178,7 +179,11 @@
 	ggrp.nf = get32((uchar*)buf);
 	ggrp.f = f = mallocz(sizeof(XFile) * ggrp.nf, 1);
 	for(i = 0; i < ggrp.nf; i++,f++){
-		n = read(fd, f->name, sizeof(f->name) - 1);
+		n = read(fd, buf, 12);
+		buf[n+1] = 0;
+		for(p = buf; p <= buf+n; p++)
+			*p = tolower(*p);
+		memcpy(f->name, buf, n);
 		off += n;
 		n = read(fd, buf, 4);
 		off += n;
@@ -189,19 +194,19 @@
 	f = ggrp.f;
 	for(i = 0; i < ggrp.nf; i++,f++){
 		f->off = off;
-		if(strstr(f->name, ".ART") != nil)
+		if(strstr(f->name, ".art") != nil)
 			parseart(fd, off);
 		else
 			createfile(fs.tree->root, f->name, user, 0666, f);
 
-		if(strcmp(f->name, "PALETTE.DAT") == 0)
+		if(strcmp(f->name, "palette.dat") == 0)
 			parsepal(fd, off);
 		off = f->off + f->size;
 	}
 
-	dir = createfile(fs.tree->root, "ART", user, 0644|DMDIR, nil);
+	dir = createfile(fs.tree->root, "art", user, 0644|DMDIR, nil);
 	for(i = 0; i < ggrp.nt; i++)
-		createfile(dir, smprint("%05d.TILE", i), user, 0666, ggrp.tiles + i);
+		createfile(dir, smprint("%05d.tile", i), user, 0666, ggrp.tiles + i);
 	free(user);
 }