Browse Source

First release v0.1

Keir Fraser 5 years ago
parent
commit
a50fe58843
7 changed files with 50 additions and 13 deletions
  1. 1 1
      .gitignore
  2. 13 9
      Makefile
  3. 8 0
      README.md
  4. 3 2
      inc/util.h
  5. 4 0
      src/Makefile
  6. 20 0
      src/build_info.c
  7. 1 1
      src/main.c

+ 1 - 1
.gitignore

@@ -11,4 +11,4 @@
 *.upd
 *.adf
 *.scp
-Greaseweazle_*
+Greaseweazle-*

+ 13 - 9
Makefile

@@ -1,6 +1,8 @@
 
+export FW_VER := 0.1
+
 PROJ = Greaseweazle
-VER = v0.0.1a
+VER := v$(FW_VER)
 
 SUBDIRS += src
 
@@ -16,19 +18,21 @@ clean:
 	$(MAKE) -f $(ROOT)/Rules.mk $@
 
 dist:
-	rm -rf $(PROJ)_*
-	mkdir -p $(PROJ)_$(VER)/reloader
+	rm -rf $(PROJ)-*
+	mkdir -p $(PROJ)-$(VER)/scripts
 	$(MAKE) clean
 	$(MAKE) all
-	cp -a $(PROJ)-$(VER).hex $(PROJ)_$(VER)/
+	cp -a $(PROJ)-$(VER).hex $(PROJ)-$(VER)/
 	$(MAKE) clean
-	cp -a COPYING $(PROJ)_$(VER)/
-	cp -a README.md $(PROJ)_$(VER)/
-#	cp -a RELEASE_NOTES $(PROJ)_$(VER)/
-	zip -r $(PROJ)_$(VER).zip $(PROJ)_$(VER)
+	cp -a COPYING $(PROJ)-$(VER)/
+	cp -a README.md $(PROJ)-$(VER)/
+	cp -a scripts/49-greaseweazle.rules $(PROJ)-$(VER)/scripts/.
+	cp -a scripts/gw.py $(PROJ)-$(VER)/
+#	cp -a RELEASE_NOTES $(PROJ)-$(VER)/
+	zip -r $(PROJ)-$(VER).zip $(PROJ)-$(VER)
 
 mrproper: clean
-	rm -rf $(PROJ)_*
+	rm -rf $(PROJ)-*
 
 endif
 

+ 8 - 0
README.md

@@ -2,7 +2,15 @@
 
 Tools and USB interface for accessing a floppy drive at the raw flux level.
 
+## Download
+- [**Download Greaseweazle**][Downloads]
+
+## Documentation
+- [**Read the GitHub Wiki**](https://github.com/keirf/Greaseweazle/wiki)
+
 ## Redistribution
 
 Greaseweazle source code, and all binary releases, are freely redistributable
 in any form. Please see the [license](COPYING).
+
+[Downloads]: https://github.com/keirf/Greaseweazle/wiki/Downloads

+ 3 - 2
inc/util.h

@@ -9,8 +9,6 @@
  * See the file COPYING for more details, or visit <http://unlicense.org>.
  */
 
-#define FW_VER "0.0.1a"
-
 #ifndef NDEBUG
 #define ASSERT(p) do { if (!(p)) illegal(); } while (0)
 #else
@@ -134,6 +132,9 @@ void floppy_process(void);
 /* CRC-CCITT */
 uint16_t crc16_ccitt(const void *buf, size_t len, uint16_t crc);
 
+/* Build info. */
+extern const char fw_ver[];
+
 /* Text/data/BSS address ranges. */
 extern char _stext[], _etext[];
 extern char _sdat[], _edat[], _ldat[];

+ 4 - 0
src/Makefile

@@ -1,5 +1,6 @@
 OBJS += arena.o
 OBJS += board.o
+OBJS += build_info.o
 OBJS += cancellation.o
 OBJS += crc.o
 OBJS += vectors.o
@@ -14,3 +15,6 @@ OBJS += floppy.o
 OBJS-$(debug) += console.o
 
 SUBDIRS += usb
+
+.PHONY: build_info.c
+build_info.o: CFLAGS += -DFW_VER="\"$(FW_VER)\""

+ 20 - 0
src/build_info.c

@@ -0,0 +1,20 @@
+/*
+ * build_info.c
+ * 
+ * Written & released by Keir Fraser <keir.xen@gmail.com>
+ * 
+ * This is free and unencumbered software released into the public domain.
+ * See the file COPYING for more details, or visit <http://unlicense.org>.
+ */
+
+const char fw_ver[] = FW_VER;
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "Linux"
+ * c-basic-offset: 4
+ * tab-width: 4
+ * indent-tabs-mode: nil
+ * End:
+ */

+ 1 - 1
src/main.c

@@ -37,7 +37,7 @@ int main(void)
     board_init();
     delay_ms(200); /* 5v settle */
 
-    printk("\n** Greaseweazle v%s\n", FW_VER);
+    printk("\n** Greaseweazle v%s\n", fw_ver);
     printk("** Keir Fraser <keir.xen@gmail.com>\n");
     printk("** https://github.com/keirf/Greaseweazle\n\n");