finalize for release
authornotaz <notasas@gmail.com>
Wed, 8 Apr 2009 21:40:55 +0000 (21:40 +0000)
committernotaz <notasas@gmail.com>
Wed, 8 Apr 2009 21:40:55 +0000 (21:40 +0000)
hexed/Makefile
hexed/hexed.s
hexed/readme.txt [new file with mode: 0644]

index cebf024..0a8bc4f 100644 (file)
@@ -19,3 +19,18 @@ a.out : $(OBJS)
 clean:\r
        $(RM) $(TARGET) $(OBJS) $(TARGET).map a.out\r
 \r
+\r
+# ----------- release -----------\r
+ifneq ($(findstring rel,$(MAKECMDGOALS)),)\r
+ifeq ($(VER),)\r
+$(error need VER)\r
+endif\r
+endif\r
+\r
+rel: hexed.bin readme.txt src\r
+       zip -9 -r hexed_r$(VER).zip $^\r
+       rm -rf src\r
+\r
+src: hexed.s font.s sega_gcc.s md.ld Makefile\r
+       mkdir src\r
+       cp $^ src/\r
index ca17291..93d5d35 100644 (file)
@@ -1,9 +1,33 @@
-##################################################
-#                                                #
-# Assemble with gas                              #
-#   --register-prefix-optional --bitwise-or      #
-#                                                #
-##################################################
+###############################################################################
+#
+# Copyright (c) 2009, Gražvydas Ignotas
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are met:
+#     * Redistributions of source code must retain the above copyright
+#       notice, this list of conditions and the following disclaimer.
+#     * Redistributions in binary form must reproduce the above copyright
+#       notice, this list of conditions and the following disclaimer in the
+#       documentation and/or other materials provided with the distribution.
+#     * Neither the name of the organization nor the
+#       names of its contributors may be used to endorse or promote products
+#       derived from this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED ''AS IS'' AND ANY
+# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+# DISCLAIMED. IN NO EVENT SHALL <copyright holder> BE LIABLE FOR ANY
+# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+#
+# Assemble with gas
+#   --register-prefix-optional --bitwise-or
+#
 
 .text
 .globl main
@@ -307,6 +331,12 @@ lmaploop0:
 
        /* wait for vsync before unmask */
        move.l          #GFXCNTL,a3
+0:
+       move.w          (a3),d0
+       and.b           #8,d0
+       nop
+       nop
+       bne             0b
 0:
        move.w          (a3),d0
        and.b           #8,d0
@@ -314,7 +344,13 @@ lmaploop0:
        nop
        beq             0b
 
-        move.w         #0x2000,sr
+       /* wait a bit to avoid nested vint */
+       move.w          #20,d0
+0:
+       dbra            d0,0b           /* 10 cycles to go back */
+
+       /* enable vint */
+       move.w          #0x2000,sr
 
 ##################################################
 
diff --git a/hexed/readme.txt b/hexed/readme.txt
new file mode 100644 (file)
index 0000000..cac50e0
--- /dev/null
@@ -0,0 +1,19 @@
+-------------------------------------------------------------------------------\r
+hexed - realtime memory viewer for Genesis/Megadrive\r
+  written by Gražvydas "notaz" Ignotas\r
+-------------------------------------------------------------------------------\r
+\r
+This is rather simple address space viewer for Genesis/Megadrive. It is capable\r
+of displaying 216 bytes of memory simultaneously in a manner similar to some\r
+hex editors for the PC, with refresh of 50/60Hz. It was created for hardware\r
+research purposes.\r
+\r
+Here are the key bindings:\r
+  A + up, A + down    - scroll one line up/down.\r
+  A + left, A + right - scroll one page up/down.\r
+  B     - toggle between byte/word display/edit mode.\r
+  C     - edit highlighted value.\r
+  Start - enter menu.\r
+\r
+\r
+hexed is released under the BSD license (see included source code for details).\r