diff --git a/MCU/Final_Sim/Final_Sim.pdsprj b/MCU/Final_Sim/Final_Sim.pdsprj
new file mode 100644
index 0000000..c028f2f
Binary files /dev/null and b/MCU/Final_Sim/Final_Sim.pdsprj differ
diff --git a/MCU/Final_Sim/Final_Sim.pdsprj.IRIDIUM.he29.workspace b/MCU/Final_Sim/Final_Sim.pdsprj.IRIDIUM.he29.workspace
new file mode 100644
index 0000000..74de91d
--- /dev/null
+++ b/MCU/Final_Sim/Final_Sim.pdsprj.IRIDIUM.he29.workspace
@@ -0,0 +1,84 @@
+
+
+
+ 2c00000002000000030000000083ffff0083ffffffffffffffffffff2701000089000000b7050000b6030000
+
+
+
+
+
+
+
+
+
+
+
+ - 279
+ - No
+ - 100
+ - 100
+
+
+
+
+ - 87
+ - No
+ - Yes
+ - 87
+ - Yes
+ - No
+ - No
+ - Yes
+ - 0
+ - 87
+ - 100
+ - 87
+ - 0
+
+
+
+
+ - 2
+ - Yes
+ - 2
+ - Yes
+ - Yes
+ - 00000000
+
+
+
+
+ - 2
+ - Yes
+ - 2
+ - Yes
+ - Yes
+ - 00000000
+
+
+
+
+
+
+
+ - 2
+ - Yes
+ - 2
+ - Yes
+ - Yes
+ - 00000000
+
+
+
+
+ - 2
+ - Yes
+ - 2
+ - Yes
+ - Yes
+ - 00000080
+
+
+
+
+
diff --git a/MCU/Final_Sim/Last Loaded Final_Sim.pdsbak b/MCU/Final_Sim/Last Loaded Final_Sim.pdsbak
new file mode 100644
index 0000000..237da22
Binary files /dev/null and b/MCU/Final_Sim/Last Loaded Final_Sim.pdsbak differ
diff --git a/MCU/MCU_3 _TIM_Interrupt/Listings/MCU_1.m51 b/MCU/MCU_3 _TIM_Interrupt/Listings/MCU_1.m51
index 679c731..9817dc0 100644
--- a/MCU/MCU_3 _TIM_Interrupt/Listings/MCU_1.m51
+++ b/MCU/MCU_3 _TIM_Interrupt/Listings/MCU_1.m51
@@ -1,4 +1,4 @@
-BL51 BANKED LINKER/LOCATER V6.22.2.0 03/30/2022 21:37:02 PAGE 1
+BL51 BANKED LINKER/LOCATER V6.22.2.0 06/04/2022 21:08:27 PAGE 1
BL51 BANKED LINKER/LOCATER V6.22.2.0, INVOKED BY:
@@ -59,7 +59,7 @@ LINK MAP OF MODULE: .\Objects\MCU_1 (MAIN)
CODE 0561H 000EH UNIT ?PR?_DELAY?DELAY
CODE 056FH 0007H UNIT ?PR?LEDFULL?LED_NUM
-BL51 BANKED LINKER/LOCATER V6.22.2.0 03/30/2022 21:37:02 PAGE 2
+BL51 BANKED LINKER/LOCATER V6.22.2.0 06/04/2022 21:08:27 PAGE 2
@@ -119,7 +119,7 @@ SYMBOL TABLE OF MODULE: .\Objects\MCU_1 (MAIN)
C:0520H LINE# 16
C:0527H LINE# 17
C:052EH LINE# 18
-BL51 BANKED LINKER/LOCATER V6.22.2.0 03/30/2022 21:37:02 PAGE 3
+BL51 BANKED LINKER/LOCATER V6.22.2.0 06/04/2022 21:08:27 PAGE 3
C:0533H LINE# 20
@@ -179,7 +179,7 @@ SYMBOL TABLE OF MODULE: .\Objects\MCU_1 (MAIN)
C:0561H PUBLIC _delay
------- PROC _DELAY
D:0006H SYMBOL i
-BL51 BANKED LINKER/LOCATER V6.22.2.0 03/30/2022 21:37:02 PAGE 4
+BL51 BANKED LINKER/LOCATER V6.22.2.0 06/04/2022 21:08:27 PAGE 4
C:0561H LINE# 3
@@ -239,7 +239,7 @@ SYMBOL TABLE OF MODULE: .\Objects\MCU_1 (MAIN)
C:015CH LINE# 36
C:015FH LINE# 38
C:0162H LINE# 39
-BL51 BANKED LINKER/LOCATER V6.22.2.0 03/30/2022 21:37:02 PAGE 5
+BL51 BANKED LINKER/LOCATER V6.22.2.0 06/04/2022 21:08:27 PAGE 5
C:016BH LINE# 40
@@ -299,7 +299,7 @@ SYMBOL TABLE OF MODULE: .\Objects\MCU_1 (MAIN)
C:056FH LINE# 111
C:0572H LINE# 112
C:0575H LINE# 113
-BL51 BANKED LINKER/LOCATER V6.22.2.0 03/30/2022 21:37:02 PAGE 6
+BL51 BANKED LINKER/LOCATER V6.22.2.0 06/04/2022 21:08:27 PAGE 6
------- ENDPROC LEDFULL
@@ -359,7 +359,7 @@ SYMBOL TABLE OF MODULE: .\Objects\MCU_1 (MAIN)
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
SEGMENT: ?PR?HELLO_PUSH?LED_NUM
-BL51 BANKED LINKER/LOCATER V6.22.2.0 03/30/2022 21:37:02 PAGE 7
+BL51 BANKED LINKER/LOCATER V6.22.2.0 06/04/2022 21:08:27 PAGE 7
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
diff --git a/MCU/MCU_REAL _FINAL/IMG/菜单.bmp b/MCU/MCU_REAL _FINAL/IMG/菜单.bmp
new file mode 100644
index 0000000..9b2a31e
Binary files /dev/null and b/MCU/MCU_REAL _FINAL/IMG/菜单.bmp differ
diff --git a/MCU/MCU_REAL _FINAL/IMG/菜单.psd b/MCU/MCU_REAL _FINAL/IMG/菜单.psd
new file mode 100644
index 0000000..467cf84
Binary files /dev/null and b/MCU/MCU_REAL _FINAL/IMG/菜单.psd differ
diff --git a/MCU/MCU_REAL _FINAL/Listings/MCU_1.m51 b/MCU/MCU_REAL _FINAL/Listings/MCU_1.m51
index b89490a..2fa2497 100644
--- a/MCU/MCU_REAL _FINAL/Listings/MCU_1.m51
+++ b/MCU/MCU_REAL _FINAL/Listings/MCU_1.m51
@@ -1,9 +1,9 @@
-BL51 BANKED LINKER/LOCATER V6.22.2.0 05/19/2022 21:13:03 PAGE 1
+BL51 BANKED LINKER/LOCATER V6.22.2.0 06/04/2022 21:55:17 PAGE 1
BL51 BANKED LINKER/LOCATER V6.22.2.0, INVOKED BY:
C:\KEIL_V5\C51\BIN\BL51.EXE .\Objects\main.obj, .\Objects\menu.obj, .\Objects\delay.obj, .\Objects\display.obj, .\Object
->> s\draw.obj TO .\Objects\MCU_1 PRINT (.\Listings\MCU_1.m51)
+>> s\draw.obj, .\Objects\block.obj TO .\Objects\MCU_1 PRINT (.\Listings\MCU_1.m51)
MEMORY MODEL: LARGE
@@ -15,15 +15,29 @@ INPUT MODULES INCLUDED:
.\Objects\delay.obj (DELAY)
.\Objects\display.obj (DISPLAY)
.\Objects\draw.obj (DRAW)
+ .\Objects\block.obj (BLOCK)
C:\KEIL_V5\C51\LIB\C51L.LIB (?C_STARTUP)
+ C:\KEIL_V5\C51\LIB\C51L.LIB (?C?COPY)
+ C:\KEIL_V5\C51\LIB\C51L.LIB (?C?CSTPTR)
+ C:\KEIL_V5\C51\LIB\C51L.LIB (?C?CSTOPTR)
+ C:\KEIL_V5\C51\LIB\C51L.LIB (?C?SIDIV)
C:\KEIL_V5\C51\LIB\C51L.LIB (?C?PLDPTR)
C:\KEIL_V5\C51\LIB\C51L.LIB (?C?PLDOPTR)
C:\KEIL_V5\C51\LIB\C51L.LIB (?C?ICALL)
+ C:\KEIL_V5\C51\LIB\C51L.LIB (RAND)
+ C:\KEIL_V5\C51\LIB\C51L.LIB (MALLOC)
+ C:\KEIL_V5\C51\LIB\C51L.LIB (CALLOC)
C:\KEIL_V5\C51\LIB\C51L.LIB (?C_INIT)
+ C:\KEIL_V5\C51\LIB\C51L.LIB (?C?IMUL)
+ C:\KEIL_V5\C51\LIB\C51L.LIB (?C?UIDIV)
+ C:\KEIL_V5\C51\LIB\C51L.LIB (?C?LLDXDATA)
+ C:\KEIL_V5\C51\LIB\C51L.LIB (?C?LSTXDATA)
C:\KEIL_V5\C51\LIB\C51L.LIB (?C?PLDIDATA)
C:\KEIL_V5\C51\LIB\C51L.LIB (?C?PLDXDATA)
C:\KEIL_V5\C51\LIB\C51L.LIB (?C?PLDPDATA)
C:\KEIL_V5\C51\LIB\C51L.LIB (?C?PLDCODE)
+ C:\KEIL_V5\C51\LIB\C51L.LIB (?C?MEMSET)
+ C:\KEIL_V5\C51\LIB\C51L.LIB (INIT_MEM)
LINK MAP OF MODULE: .\Objects\MCU_1 (MAIN)
@@ -37,91 +51,97 @@ LINK MAP OF MODULE: .\Objects\MCU_1 (MAIN)
IDATA 0008H 0001H UNIT ?STACK
* * * * * * * X D A T A M E M O R Y * * * * * * *
- XDATA 0000H 000FH UNIT ?XD?MENU
- XDATA 000FH 0007H UNIT _XDATA_GROUP_
- XDATA 0016H 0004H UNIT ?XD?MINICLEAR?DISPLAY
- XDATA 001AH 0004H UNIT ?XD?TEST?DISPLAY
+ XDATA 0000H 0015H UNIT ?XD?MENU
+ XDATA 0015H 0008H UNIT ?XD?INIT_MEM
+ XDATA 001DH 0008H UNIT _XDATA_GROUP_
+ XDATA 0025H 0007H UNIT ?XD?GENSHAPE?BLOCK
+ XDATA 002CH 0006H UNIT ?XD?GROUPINIT?BLOCK
+ XDATA 0032H 0006H UNIT ?XD?BLOCK
+ XDATA 0038H 0006H UNIT ?XD?_MALLOC?MALLOC
+ XDATA 003EH 0004H UNIT ?XD?MINICLEAR?DISPLAY
+BL51 BANKED LINKER/LOCATER V6.22.2.0 06/04/2022 21:55:17 PAGE 2
+
+
+ XDATA 0042H 0004H UNIT ?XD?TEST?DISPLAY
+ XDATA 0046H 0004H UNIT ?XD?RAND?RAND
+ XDATA 004AH 0004H UNIT ?XD?_CALLOC?CALLOC
+ XDATA 004EH 0001H UNIT ?XD?MAIN
+ XDATA 004FH 0001H UNIT ?XD?GENPIECE?BLOCK
* * * * * * * C O D E M E M O R Y * * * * * * *
CODE 0000H 0003H ABSOLUTE
- CODE 0003H 01A0H UNIT ?CO?DISPLAY
- CODE 01A3H 01A0H UNIT ?CO?DRAW
- CODE 0343H 013FH UNIT ?PR?DRAWNUMBER?DRAW
- CODE 0482H 00C5H UNIT ?PR?CLEAR?DISPLAY
- CODE 0547H 00C5H UNIT ?PR?MINICLEAR?DISPLAY
- CODE 060CH 00C5H UNIT ?PR?TEST?DISPLAY
- CODE 06D1H 008EH UNIT ?PR?DRAWNAME?DRAW
- CODE 075FH 008CH UNIT ?C_C51STARTUP
- CODE 07EBH 007DH UNIT ?C?LIB_CODE
- CODE 0868H 0042H UNIT ?PR?_M_STARTUP?MENU
- CODE 08AAH 002FH UNIT ?PR?MAIN?MAIN
- CODE 08D9H 0020H UNIT ?PR?_DELAY?DELAY
- CODE 08F9H 001CH UNIT ?PR?DISPLAYINIT?DISPLAY
- CODE 0915H 0019H UNIT ?PR?WRITE?DISPLAY
- CODE 092EH 000FH UNIT ?PR?MENUINIT?MENU
-BL51 BANKED LINKER/LOCATER V6.22.2.0 05/19/2022 21:13:03 PAGE 2
-
-
- CODE 093DH 000BH UNIT ?PR?DELAY100US?DELAY
- CODE 0948H 000AH UNIT ?C_INITSEG
+ CODE 0003H 0288H UNIT ?C?LIB_CODE
+ CODE 028BH 01D7H UNIT ?PR?GENSHAPE?BLOCK
+ CODE 0462H 01A0H UNIT ?CO?DRAW
+ CODE 0602H 013FH UNIT ?PR?DRAWNUMBER?DRAW
+ CODE 0741H 00D1H UNIT ?PR?_MALLOC?MALLOC
+ CODE 0812H 00C5H UNIT ?PR?CLEAR?DISPLAY
+ CODE 08D7H 00C5H UNIT ?PR?MINICLEAR?DISPLAY
+ CODE 099CH 00C5H UNIT ?PR?TEST?DISPLAY
+ CODE 0A61H 008EH UNIT ?PR?DRAWNAME?DRAW
+ CODE 0AEFH 008CH UNIT ?C_C51STARTUP
+ CODE 0B7BH 004FH UNIT ?PR?GENPIECE?BLOCK
+ CODE 0BCAH 004DH UNIT ?PR?RAND?RAND
+ CODE 0C17H 0042H UNIT ?PR?_M_STARTUP?MENU
+ CODE 0C59H 0042H UNIT ?PR?_CALLOC?CALLOC
+ CODE 0C9BH 003CH UNIT ?PR?BLOCKINIT?BLOCK
+ CODE 0CD7H 003CH UNIT ?PR?_INIT_MEMPOOL?INIT_MEM
+ CODE 0D13H 0034H UNIT ?PR?MAIN?MAIN
+ CODE 0D47H 002FH UNIT ?PR?GROUPINIT?BLOCK
+ CODE 0D76H 0020H UNIT ?PR?_DELAY?DELAY
+ CODE 0D96H 001CH UNIT ?PR?DISPLAYINIT?DISPLAY
+ CODE 0DB2H 0019H UNIT ?C_INITSEG
+ CODE 0DCBH 0019H UNIT ?PR?WRITE?DISPLAY
+ CODE 0DE4H 000FH UNIT ?PR?MENUINIT?MENU
+ CODE 0DF3H 000BH UNIT ?PR?DELAY100US?DELAY
OVERLAY MAP OF MODULE: .\Objects\MCU_1 (MAIN)
-SEGMENT XDATA_GROUP
- +--> CALLED SEGMENT START LENGTH
------------------------------------------------
-?C_C51STARTUP ----- -----
+SEGMENT XDATA_GROUP
+ +--> CALLED SEGMENT START LENGTH
+--------------------------------------------------
+?C_C51STARTUP ----- -----
+--> ?PR?MAIN?MAIN
+--> ?C_INITSEG
-?PR?MAIN?MAIN ----- -----
+?PR?MAIN?MAIN ----- -----
+--> ?PR?MENUINIT?MENU
-?C_INITSEG ----- -----
+?C_INITSEG ----- -----
+--> ?PR?_M_STARTUP?MENU
-?PR?_M_STARTUP?MENU 000FH 0003H
+?PR?_M_STARTUP?MENU 001DH 0004H
+--> ?PR?DISPLAYINIT?DISPLAY
+--> ?PR?CLEAR?DISPLAY
+--> ?PR?DRAWNAME?DRAW
+--> ?PR?_DELAY?DELAY
+--> ?PR?DRAWNUMBER?DRAW
+BL51 BANKED LINKER/LOCATER V6.22.2.0 06/04/2022 21:55:17 PAGE 3
-?PR?DISPLAYINIT?DISPLAY ----- -----
+
+
+?PR?DISPLAYINIT?DISPLAY ----- -----
+--> ?PR?WRITE?DISPLAY
-?PR?WRITE?DISPLAY ----- -----
+?PR?WRITE?DISPLAY ----- -----
+--> ?PR?_DELAY?DELAY
-?PR?CLEAR?DISPLAY 0012H 0004H
+?PR?CLEAR?DISPLAY 0021H 0004H
+--> ?PR?WRITE?DISPLAY
-?PR?DRAWNAME?DRAW 0012H 0002H
+?PR?DRAWNAME?DRAW 0021H 0002H
+--> ?PR?WRITE?DISPLAY
+--> ?CO?DRAW
-?PR?DRAWNUMBER?DRAW 0012H 0002H
+?PR?DRAWNUMBER?DRAW 0021H 0002H
+--> ?PR?WRITE?DISPLAY
+--> ?CO?DRAW
-IGNORED SYMBOLS:
- NAME_PAGE0
- NAME_PAGE1
- NUMBER_PAGE0
- NUMBER_PAGE1
- NUMBER_RPAGE0
- NUMBER_RPAGE1
-
-
-
-BL51 BANKED LINKER/LOCATER V6.22.2.0 05/19/2022 21:13:03 PAGE 3
-
-
SYMBOL TABLE OF MODULE: .\Objects\MCU_1 (MAIN)
VALUE TYPE NAME
@@ -130,76 +150,79 @@ SYMBOL TABLE OF MODULE: .\Objects\MCU_1 (MAIN)
------- MODULE MAIN
C:0000H SYMBOL _ICE_DUMMY_
D:0090H PUBLIC P1
+ D:00A0H PUBLIC P2
D:00B0H PUBLIC P3
D:00A8H PUBLIC IE
D:00B8H PUBLIC IP
- C:08AAH PUBLIC main
+ C:0D13H PUBLIC main
D:0098H PUBLIC SCON
D:0088H PUBLIC TCON
+ X:004EH PUBLIC opr
D:00C8H PUBLIC T2CON
D:00D0H PUBLIC PSW
------- PROC MAIN
- C:08AAH LINE# 16
- C:08AAH LINE# 17
- C:08AAH LINE# 18
- C:08ADH LINE# 19
- C:08D7H LINE# 20
- C:08D7H LINE# 21
- C:08D7H LINE# 25
+ C:0D13H LINE# 17
+ C:0D13H LINE# 18
+ C:0D13H LINE# 19
+ C:0D16H LINE# 21
+ C:0D45H LINE# 22
+ C:0D45H LINE# 23
+ C:0D45H LINE# 25
------- ENDPROC MAIN
------- ENDMOD MAIN
------- MODULE MENU
C:0000H SYMBOL _ICE_DUMMY_
X:0000H PUBLIC M_MAINMANU
- C:092EH PUBLIC menuInit
- X:0006H PUBLIC M_STARTUP
- C:0868H PUBLIC _m_startup
- X:000CH PUBLIC NOW
+ X:0006H PUBLIC M_PLAYMODE1
+ C:0DE4H PUBLIC menuInit
+ X:000CH PUBLIC M_STARTUP
+ C:0C17H PUBLIC _m_startup
+ X:0012H PUBLIC NOW
+BL51 BANKED LINKER/LOCATER V6.22.2.0 06/04/2022 21:55:17 PAGE 4
+
+
------- PROC _M_STARTUP
- X:000FH SYMBOL this
- C:0868H LINE# 18
- C:0873H LINE# 19
- C:0873H LINE# 20
- C:0876H LINE# 21
- C:0879H LINE# 22
- C:087CH LINE# 23
- C:0883H LINE# 24
- C:0886H LINE# 25
- C:088DH LINE# 26
- C:0890H LINE# 27
- C:08A9H LINE# 28
+ X:001DH SYMBOL this
+ X:0020H SYMBOL opr
+ C:0C17H LINE# 19
+ C:0C25H LINE# 20
+ C:0C25H LINE# 21
+ C:0C28H LINE# 22
+ C:0C2BH LINE# 23
+ C:0C2EH LINE# 24
+ C:0C35H LINE# 25
+ C:0C38H LINE# 26
+ C:0C3FH LINE# 28
+ C:0C58H LINE# 29
------- ENDPROC _M_STARTUP
------- PROC MENUINIT
- C:092EH LINE# 31
- C:092EH LINE# 32
- C:092EH LINE# 33
- C:093CH LINE# 34
+ C:0DE4H LINE# 32
+ C:0DE4H LINE# 33
+ C:0DE4H LINE# 34
+ C:0DF2H LINE# 35
------- ENDPROC MENUINIT
------- ENDMOD MENU
------- MODULE DELAY
-BL51 BANKED LINKER/LOCATER V6.22.2.0 05/19/2022 21:13:03 PAGE 4
-
-
C:0000H SYMBOL _ICE_DUMMY_
- C:093DH PUBLIC delay100us
- C:08D9H PUBLIC _delay
+ C:0DF3H PUBLIC delay100us
+ C:0D76H PUBLIC _delay
------- PROC DELAY100US
------- DO
D:0007H SYMBOL i
D:0006H SYMBOL j
------- ENDDO
- C:093DH LINE# 3
- C:093DH LINE# 4
- C:093DH LINE# 7
- C:093EH LINE# 8
- C:093FH LINE# 9
- C:0941H LINE# 10
- C:0943H LINE# 12
- C:0943H LINE# 13
- C:0945H LINE# 14
- C:0947H LINE# 15
+ C:0DF3H LINE# 3
+ C:0DF3H LINE# 4
+ C:0DF3H LINE# 7
+ C:0DF4H LINE# 8
+ C:0DF5H LINE# 9
+ C:0DF7H LINE# 10
+ C:0DF9H LINE# 12
+ C:0DF9H LINE# 13
+ C:0DFBH LINE# 14
+ C:0DFDH LINE# 15
------- ENDPROC DELAY100US
------- PROC _DELAY
D:0006H SYMBOL n
@@ -207,407 +230,562 @@ SYMBOL TABLE OF MODULE: .\Objects\MCU_1 (MAIN)
D:0006H SYMBOL i
D:0004H SYMBOL j
------- ENDDO
- C:08D9H LINE# 24
- C:08D9H LINE# 26
- C:08D9H LINE# 27
- C:08E4H LINE# 28
- C:08F8H LINE# 29
+ C:0D76H LINE# 24
+ C:0D76H LINE# 26
+ C:0D76H LINE# 27
+ C:0D81H LINE# 28
+ C:0D95H LINE# 29
------- ENDPROC _DELAY
------- ENDMOD DELAY
------- MODULE DISPLAY
+BL51 BANKED LINKER/LOCATER V6.22.2.0 06/04/2022 21:55:17 PAGE 5
+
+
C:0000H SYMBOL _ICE_DUMMY_
D:0090H PUBLIC P1
+ D:00A0H PUBLIC P2
D:00B0H PUBLIC P3
- C:0482H PUBLIC clear
+ C:0812H PUBLIC clear
D:00A8H PUBLIC IE
- C:08F9H PUBLIC displayInit
+ C:0D96H PUBLIC displayInit
D:00B8H PUBLIC IP
- B:00B0H.0 PUBLIC RS
- B:00B0H.1 PUBLIC RW
- C:091EH PUBLIC write
+ B:00A0H.0 PUBLIC RS
+ B:00A0H.1 PUBLIC RW
+ C:0DD4H PUBLIC write
D:0098H PUBLIC SCON
D:0088H PUBLIC TCON
- C:0547H PUBLIC miniclear
- C:060CH PUBLIC test
- B:00B0H.2 PUBLIC E
- C:0163H PUBLIC NUMBER_RPAGE0
- C:0183H PUBLIC NUMBER_RPAGE1
- C:0003H PUBLIC NAME_PAGE0
- C:0033H PUBLIC NAME_PAGE1
- B:00B0H.4 PUBLIC CSA
- B:00B0H.5 PUBLIC CSB
+ C:08D7H PUBLIC miniclear
+ C:099CH PUBLIC test
+ B:00A0H.2 PUBLIC E
+ B:00A0H.4 PUBLIC CSA
+ B:00A0H.5 PUBLIC CSB
D:00C8H PUBLIC T2CON
- C:0063H PUBLIC NUMBER_PAGE0
-BL51 BANKED LINKER/LOCATER V6.22.2.0 05/19/2022 21:13:03 PAGE 5
-
-
D:00D0H PUBLIC PSW
- C:00E3H PUBLIC NUMBER_PAGE1
- C:0915H SYMBOL L?0055
+ C:0DCBH SYMBOL L?0055
------- PROC L?0054
------- ENDPROC L?0054
- C:0915H SYMBOL L?0055
+ C:0DCBH SYMBOL L?0055
------- PROC WRITE
- C:091EH LINE# 18
- C:091EH LINE# 19
- C:091EH LINE# 20
- C:0920H LINE# 21
- C:0922H LINE# 22
- C:0924H LINE# 23
- C:092BH LINE# 24
- C:092DH LINE# 25
+ C:0DD4H LINE# 17
+ C:0DD4H LINE# 18
+ C:0DD4H LINE# 19
+ C:0DD6H LINE# 20
+ C:0DD8H LINE# 21
+ C:0DDAH LINE# 22
+ C:0DE1H LINE# 23
+ C:0DE3H LINE# 24
------- ENDPROC WRITE
------- PROC CLEAR
------- DO
- X:0012H SYMBOL i
- X:0014H SYMBOL j
+ X:0021H SYMBOL i
+ X:0023H SYMBOL j
------- ENDDO
- C:0482H LINE# 29
- C:0482H LINE# 30
- C:0482H LINE# 32
- C:0484H LINE# 33
- C:0486H LINE# 34
- C:049DH LINE# 35
- C:049DH LINE# 36
- C:049DH LINE# 37
- C:049DH LINE# 38
- C:049DH LINE# 39
- C:04A0H LINE# 40
- C:04A3H LINE# 41
- C:04A6H LINE# 43
- C:04ADH LINE# 44
- C:04ADH LINE# 45
- C:04AFH LINE# 46
- C:04B1H LINE# 47
- C:04B4H LINE# 48
- C:04B7H LINE# 49
- C:04D4H LINE# 50
- C:04E4H LINE# 51
- C:04E6H LINE# 52
- C:04E8H LINE# 53
- C:04FFH LINE# 54
- C:04FFH LINE# 55
- C:04FFH LINE# 56
- C:04FFH LINE# 57
- C:04FFH LINE# 58
- C:0502H LINE# 59
- C:0505H LINE# 60
- C:0508H LINE# 62
- C:050FH LINE# 63
- C:050FH LINE# 64
- C:0511H LINE# 65
- C:0513H LINE# 66
- C:0516H LINE# 67
-BL51 BANKED LINKER/LOCATER V6.22.2.0 05/19/2022 21:13:03 PAGE 6
+ C:0812H LINE# 28
+ C:0812H LINE# 29
+ C:0812H LINE# 31
+ C:0814H LINE# 32
+ C:0816H LINE# 33
+ C:082DH LINE# 34
+ C:082DH LINE# 35
+ C:082DH LINE# 36
+ C:082DH LINE# 37
+ C:082DH LINE# 38
+ C:0830H LINE# 39
+ C:0833H LINE# 40
+ C:0836H LINE# 42
+ C:083DH LINE# 43
+ C:083DH LINE# 44
+ C:083FH LINE# 45
+ C:0841H LINE# 46
+ C:0844H LINE# 47
+BL51 BANKED LINKER/LOCATER V6.22.2.0 06/04/2022 21:55:17 PAGE 6
- C:0519H LINE# 68
- C:0536H LINE# 69
- C:0546H LINE# 70
+ C:0847H LINE# 48
+ C:0864H LINE# 49
+ C:0874H LINE# 50
+ C:0876H LINE# 51
+ C:0878H LINE# 52
+ C:088FH LINE# 53
+ C:088FH LINE# 54
+ C:088FH LINE# 55
+ C:088FH LINE# 56
+ C:088FH LINE# 57
+ C:0892H LINE# 58
+ C:0895H LINE# 59
+ C:0898H LINE# 61
+ C:089FH LINE# 62
+ C:089FH LINE# 63
+ C:08A1H LINE# 64
+ C:08A3H LINE# 65
+ C:08A6H LINE# 66
+ C:08A9H LINE# 67
+ C:08C6H LINE# 68
+ C:08D6H LINE# 69
------- ENDPROC CLEAR
------- PROC MINICLEAR
------- DO
- X:0016H SYMBOL i
- X:0018H SYMBOL j
+ X:003EH SYMBOL i
+ X:0040H SYMBOL j
------- ENDDO
- C:0547H LINE# 73
- C:0547H LINE# 74
- C:0547H LINE# 76
- C:0549H LINE# 77
- C:054BH LINE# 78
- C:0562H LINE# 79
- C:0562H LINE# 80
- C:0562H LINE# 81
- C:0562H LINE# 82
- C:0562H LINE# 83
- C:0565H LINE# 84
- C:0568H LINE# 85
- C:056BH LINE# 87
- C:0572H LINE# 88
- C:0572H LINE# 89
- C:0574H LINE# 90
- C:0576H LINE# 91
- C:0579H LINE# 92
- C:057CH LINE# 93
- C:0599H LINE# 94
- C:05A9H LINE# 95
- C:05ABH LINE# 96
- C:05ADH LINE# 97
- C:05C4H LINE# 98
- C:05C4H LINE# 99
- C:05C4H LINE# 100
- C:05C4H LINE# 101
- C:05C4H LINE# 102
- C:05C7H LINE# 103
- C:05CAH LINE# 104
- C:05CDH LINE# 106
- C:05D4H LINE# 107
- C:05D4H LINE# 108
- C:05D6H LINE# 109
- C:05D8H LINE# 110
- C:05DBH LINE# 111
- C:05DEH LINE# 112
- C:05FBH LINE# 113
- C:060BH LINE# 114
+ C:08D7H LINE# 72
+ C:08D7H LINE# 73
+ C:08D7H LINE# 75
+ C:08D9H LINE# 76
+ C:08DBH LINE# 77
+ C:08F2H LINE# 78
+ C:08F2H LINE# 79
+ C:08F2H LINE# 80
+ C:08F2H LINE# 81
+ C:08F2H LINE# 82
+ C:08F5H LINE# 83
+ C:08F8H LINE# 84
+ C:08FBH LINE# 86
+ C:0902H LINE# 87
+ C:0902H LINE# 88
+ C:0904H LINE# 89
+ C:0906H LINE# 90
+ C:0909H LINE# 91
+ C:090CH LINE# 92
+ C:0929H LINE# 93
+ C:0939H LINE# 94
+ C:093BH LINE# 95
+ C:093DH LINE# 96
+ C:0954H LINE# 97
+ C:0954H LINE# 98
+ C:0954H LINE# 99
+ C:0954H LINE# 100
+ C:0954H LINE# 101
+ C:0957H LINE# 102
+ C:095AH LINE# 103
+BL51 BANKED LINKER/LOCATER V6.22.2.0 06/04/2022 21:55:17 PAGE 7
+
+
+ C:095DH LINE# 105
+ C:0964H LINE# 106
+ C:0964H LINE# 107
+ C:0966H LINE# 108
+ C:0968H LINE# 109
+ C:096BH LINE# 110
+ C:096EH LINE# 111
+ C:098BH LINE# 112
+ C:099BH LINE# 113
------- ENDPROC MINICLEAR
------- PROC DISPLAYINIT
- C:08F9H LINE# 115
- C:08F9H LINE# 116
- C:08F9H LINE# 117
- C:08FBH LINE# 118
- C:08FDH LINE# 119
- C:08FFH LINE# 120
- C:0901H LINE# 121
-BL51 BANKED LINKER/LOCATER V6.22.2.0 05/19/2022 21:13:03 PAGE 7
-
-
- C:0903H LINE# 122
- C:0906H LINE# 123
- C:0909H LINE# 125
- C:090BH LINE# 126
- C:090DH LINE# 127
- C:090FH LINE# 128
- C:0912H LINE# 129
+ C:0D96H LINE# 114
+ C:0D96H LINE# 115
+ C:0D96H LINE# 116
+ C:0D98H LINE# 117
+ C:0D9AH LINE# 118
+ C:0D9CH LINE# 119
+ C:0D9EH LINE# 120
+ C:0DA0H LINE# 121
+ C:0DA3H LINE# 122
+ C:0DA6H LINE# 124
+ C:0DA8H LINE# 125
+ C:0DAAH LINE# 126
+ C:0DACH LINE# 127
+ C:0DAFH LINE# 128
------- ENDPROC DISPLAYINIT
------- PROC TEST
------- DO
- X:001AH SYMBOL i
- X:001CH SYMBOL j
+ X:0042H SYMBOL i
+ X:0044H SYMBOL j
------- ENDDO
- C:060CH LINE# 132
- C:060CH LINE# 133
- C:060CH LINE# 135
- C:060EH LINE# 136
- C:0610H LINE# 137
- C:0627H LINE# 138
- C:0627H LINE# 139
- C:0627H LINE# 140
- C:0627H LINE# 141
- C:0627H LINE# 142
- C:062AH LINE# 143
- C:062DH LINE# 144
- C:0630H LINE# 146
- C:0637H LINE# 147
- C:0637H LINE# 148
- C:0639H LINE# 149
- C:063BH LINE# 150
- C:063EH LINE# 151
- C:0641H LINE# 152
- C:065EH LINE# 153
- C:066EH LINE# 154
- C:0670H LINE# 155
- C:0672H LINE# 156
- C:0689H LINE# 157
- C:0689H LINE# 158
- C:0689H LINE# 159
- C:0689H LINE# 160
- C:0689H LINE# 161
- C:068CH LINE# 162
- C:068FH LINE# 163
- C:0692H LINE# 165
- C:0699H LINE# 166
- C:0699H LINE# 167
- C:069BH LINE# 168
- C:069DH LINE# 169
- C:06A0H LINE# 170
- C:06A3H LINE# 171
- C:06C0H LINE# 172
- C:06D0H LINE# 173
+ C:099CH LINE# 131
+ C:099CH LINE# 132
+ C:099CH LINE# 134
+ C:099EH LINE# 135
+ C:09A0H LINE# 136
+ C:09B7H LINE# 137
+ C:09B7H LINE# 138
+ C:09B7H LINE# 139
+ C:09B7H LINE# 140
+ C:09B7H LINE# 141
+ C:09BAH LINE# 142
+ C:09BDH LINE# 143
+ C:09C0H LINE# 145
+ C:09C7H LINE# 146
+ C:09C7H LINE# 147
+ C:09C9H LINE# 148
+ C:09CBH LINE# 149
+ C:09CEH LINE# 150
+ C:09D1H LINE# 151
+ C:09EEH LINE# 152
+ C:09FEH LINE# 153
+ C:0A00H LINE# 154
+ C:0A02H LINE# 155
+ C:0A19H LINE# 156
+ C:0A19H LINE# 157
+ C:0A19H LINE# 158
+BL51 BANKED LINKER/LOCATER V6.22.2.0 06/04/2022 21:55:17 PAGE 8
+
+
+ C:0A19H LINE# 159
+ C:0A19H LINE# 160
+ C:0A1CH LINE# 161
+ C:0A1FH LINE# 162
+ C:0A22H LINE# 164
+ C:0A29H LINE# 165
+ C:0A29H LINE# 166
+ C:0A2BH LINE# 167
+ C:0A2DH LINE# 168
+ C:0A30H LINE# 169
+ C:0A33H LINE# 170
+ C:0A50H LINE# 171
+ C:0A60H LINE# 172
------- ENDPROC TEST
------- ENDMOD DISPLAY
------- MODULE DRAW
C:0000H SYMBOL _ICE_DUMMY_
-BL51 BANKED LINKER/LOCATER V6.22.2.0 05/19/2022 21:13:03 PAGE 8
-
-
D:0090H PUBLIC P1
+ D:00A0H PUBLIC P2
D:00B0H PUBLIC P3
D:00A8H PUBLIC IE
D:00B8H PUBLIC IP
- B:00B0H.0 PUBLIC RS
- B:00B0H.1 PUBLIC RW
+ B:00A0H.0 PUBLIC RS
+ B:00A0H.1 PUBLIC RW
D:0098H PUBLIC SCON
D:0088H PUBLIC TCON
- C:0303H PUBLIC NUMBER_RPAGE0
- C:0323H PUBLIC NUMBER_RPAGE1
- C:01A3H PUBLIC NAME_PAGE0
- C:01D3H PUBLIC NAME_PAGE1
- C:06D1H PUBLIC drawNAME
- B:00B0H.4 PUBLIC CSA
- B:00B0H.5 PUBLIC CSB
+ C:05C2H PUBLIC NUMBER_RPAGE0
+ C:05E2H PUBLIC NUMBER_RPAGE1
+ C:0462H PUBLIC NAME_PAGE0
+ C:0492H PUBLIC NAME_PAGE1
+ C:0A61H PUBLIC drawNAME
+ B:00A0H.4 PUBLIC CSA
+ B:00A0H.5 PUBLIC CSB
D:00C8H PUBLIC T2CON
D:00D0H PUBLIC PSW
- C:0203H PUBLIC NUMBER_PAGE0
- C:0283H PUBLIC NUMBER_PAGE1
- C:0343H PUBLIC drawNUMBER
+ C:04C2H PUBLIC NUMBER_PAGE0
+ C:0542H PUBLIC NUMBER_PAGE1
+ C:0602H PUBLIC drawNUMBER
------- PROC DRAWNUMBER
------- DO
- X:0012H SYMBOL j
+ X:0021H SYMBOL j
------- ENDDO
- C:0343H LINE# 12
- C:0343H LINE# 13
- C:0343H LINE# 15
- C:034AH LINE# 16
- C:034AH LINE# 19
- C:034CH LINE# 20
- C:034EH LINE# 21
- C:0350H LINE# 22
- C:0352H LINE# 23
- C:0355H LINE# 24
- C:0358H LINE# 25
- C:0361H LINE# 26
- C:0364H LINE# 28
- C:0366H LINE# 29
- C:0368H LINE# 30
- C:0385H LINE# 31
- C:0388H LINE# 33
- C:038AH LINE# 34
- C:038CH LINE# 35
- C:038FH LINE# 36
- C:0392H LINE# 37
- C:039BH LINE# 38
- C:039EH LINE# 40
- C:03A0H LINE# 41
- C:03A2H LINE# 42
- C:03BFH LINE# 43
- C:03C2H LINE# 46
- C:03E2H LINE# 47
- C:03E9H LINE# 48
- C:03E9H LINE# 51
- C:03EBH LINE# 52
- C:03EDH LINE# 53
- C:03EFH LINE# 54
-BL51 BANKED LINKER/LOCATER V6.22.2.0 05/19/2022 21:13:03 PAGE 9
+ C:0602H LINE# 12
+ C:0602H LINE# 13
+ C:0602H LINE# 15
+ C:0609H LINE# 16
+ C:0609H LINE# 19
+ C:060BH LINE# 20
+ C:060DH LINE# 21
+ C:060FH LINE# 22
+ C:0611H LINE# 23
+ C:0614H LINE# 24
+ C:0617H LINE# 25
+ C:0620H LINE# 26
+ C:0623H LINE# 28
+ C:0625H LINE# 29
+BL51 BANKED LINKER/LOCATER V6.22.2.0 06/04/2022 21:55:17 PAGE 9
- C:03F1H LINE# 55
- C:03F4H LINE# 56
- C:03F7H LINE# 57
- C:0400H LINE# 58
- C:0403H LINE# 60
- C:0405H LINE# 61
- C:0407H LINE# 62
- C:0424H LINE# 63
- C:0427H LINE# 65
- C:0429H LINE# 66
- C:042BH LINE# 67
- C:042EH LINE# 68
- C:0431H LINE# 69
- C:043AH LINE# 70
- C:043DH LINE# 72
- C:043FH LINE# 73
- C:0441H LINE# 74
- C:045EH LINE# 75
- C:0461H LINE# 78
- C:0481H LINE# 79
+ C:0627H LINE# 30
+ C:0644H LINE# 31
+ C:0647H LINE# 33
+ C:0649H LINE# 34
+ C:064BH LINE# 35
+ C:064EH LINE# 36
+ C:0651H LINE# 37
+ C:065AH LINE# 38
+ C:065DH LINE# 40
+ C:065FH LINE# 41
+ C:0661H LINE# 42
+ C:067EH LINE# 43
+ C:0681H LINE# 46
+ C:06A1H LINE# 47
+ C:06A8H LINE# 48
+ C:06A8H LINE# 51
+ C:06AAH LINE# 52
+ C:06ACH LINE# 53
+ C:06AEH LINE# 54
+ C:06B0H LINE# 55
+ C:06B3H LINE# 56
+ C:06B6H LINE# 57
+ C:06BFH LINE# 58
+ C:06C2H LINE# 60
+ C:06C4H LINE# 61
+ C:06C6H LINE# 62
+ C:06E3H LINE# 63
+ C:06E6H LINE# 65
+ C:06E8H LINE# 66
+ C:06EAH LINE# 67
+ C:06EDH LINE# 68
+ C:06F0H LINE# 69
+ C:06F9H LINE# 70
+ C:06FCH LINE# 72
+ C:06FEH LINE# 73
+ C:0700H LINE# 74
+ C:071DH LINE# 75
+ C:0720H LINE# 78
+ C:0740H LINE# 79
------- ENDPROC DRAWNUMBER
------- PROC DRAWNAME
------- DO
- X:0012H SYMBOL j
+ X:0021H SYMBOL j
------- ENDDO
- C:06D1H LINE# 81
- C:06D1H LINE# 82
- C:06D1H LINE# 85
- C:06D8H LINE# 86
- C:06D8H LINE# 89
- C:06DAH LINE# 90
- C:06DCH LINE# 91
- C:06DEH LINE# 92
- C:06E0H LINE# 93
- C:06E3H LINE# 94
- C:06E6H LINE# 95
- C:06EFH LINE# 96
- C:06F2H LINE# 98
- C:06F4H LINE# 99
- C:06F6H LINE# 100
- C:070AH LINE# 101
- C:070DH LINE# 103
- C:070FH LINE# 104
- C:0711H LINE# 105
- C:0714H LINE# 106
- C:0717H LINE# 107
- C:0720H LINE# 108
- C:0723H LINE# 110
- C:0725H LINE# 111
- C:0727H LINE# 112
- C:073BH LINE# 113
- C:073EH LINE# 116
- C:075EH LINE# 117
+ C:0A61H LINE# 81
+ C:0A61H LINE# 82
+ C:0A61H LINE# 85
+ C:0A68H LINE# 86
+ C:0A68H LINE# 89
+ C:0A6AH LINE# 90
+ C:0A6CH LINE# 91
+ C:0A6EH LINE# 92
+ C:0A70H LINE# 93
+ C:0A73H LINE# 94
+ C:0A76H LINE# 95
+ C:0A7FH LINE# 96
+ C:0A82H LINE# 98
+BL51 BANKED LINKER/LOCATER V6.22.2.0 06/04/2022 21:55:17 PAGE 10
+
+
+ C:0A84H LINE# 99
+ C:0A86H LINE# 100
+ C:0A9AH LINE# 101
+ C:0A9DH LINE# 103
+ C:0A9FH LINE# 104
+ C:0AA1H LINE# 105
+ C:0AA4H LINE# 106
+ C:0AA7H LINE# 107
+ C:0AB0H LINE# 108
+ C:0AB3H LINE# 110
+ C:0AB5H LINE# 111
+ C:0AB7H LINE# 112
+ C:0ACBH LINE# 113
+ C:0ACEH LINE# 116
+ C:0AEEH LINE# 117
------- ENDPROC DRAWNAME
------- ENDMOD DRAW
+ ------- MODULE BLOCK
+ C:0000H SYMBOL _ICE_DUMMY_
+ X:0032H PUBLIC piece
+ X:0035H PUBLIC base
+ C:0B7BH PUBLIC genPiece
+ C:0C9BH PUBLIC blockInit
+ C:028BH PUBLIC genShape
+ C:0D47H PUBLIC groupInit
+ ------- PROC GROUPINIT
+ X:002CH SYMBOL g
+ X:0031H SYMBOL i
+ ------- DO
+ C:0D47H SYMBOL retry
+ ------- ENDDO
+ C:0D47H LINE# 26
+ C:0D47H LINE# 27
+ C:0D47H LINE# 28
+ C:0D47H LINE# 29
+ C:0D4FH LINE# 30
+ C:0D54H LINE# 31
+ C:0D71H LINE# 32
+ C:0D75H LINE# 33
+ C:0D75H LINE# 34
+ ------- ENDPROC GROUPINIT
+ ------- PROC BLOCKINIT
+ C:0C9BH LINE# 6
+ C:0C9BH LINE# 7
+ C:0C9BH LINE# 8
+ C:0CB6H LINE# 9
+ ------- ENDPROC BLOCKINIT
+ ------- PROC GENPIECE
+ ------- DO
+ X:004FH SYMBOL i
+ ------- ENDDO
+ C:0B7BH LINE# 12
+ C:0B7BH LINE# 13
+ C:0B7BH LINE# 14
+ C:0B8CH LINE# 15
+ C:0BA7H LINE# 16
+BL51 BANKED LINKER/LOCATER V6.22.2.0 06/04/2022 21:55:17 PAGE 11
+
+
+ ------- ENDPROC GENPIECE
+ ------- PROC GENSHAPE
+ X:0025H SYMBOL g
+ ------- DO
+ X:002AH SYMBOL random
+ ------- ENDDO
+ C:028BH LINE# 19
+ C:028BH LINE# 20
+ C:028BH LINE# 22
+ C:029DH LINE# 25
+ C:02A5H LINE# 26
+ C:02A5H LINE# 27
+ C:02BBH LINE# 28
+ C:02BBH LINE# 29
+ C:02C8H LINE# 30
+ C:02DBH LINE# 31
+ C:02E3H LINE# 32
+ C:02E8H LINE# 33
+ C:02EAH LINE# 35
+ C:02EAH LINE# 36
+ C:02F7H LINE# 37
+ C:030AH LINE# 38
+ C:0312H LINE# 39
+ C:031AH LINE# 40
+ C:031AH LINE# 41
+ C:031AH LINE# 43
+ C:0325H LINE# 44
+ C:0325H LINE# 45
+ C:033BH LINE# 46
+ C:033BH LINE# 47
+ C:0348H LINE# 48
+ C:035BH LINE# 49
+ C:0363H LINE# 50
+ C:036BH LINE# 51
+ C:0373H LINE# 52
+ C:0378H LINE# 53
+ C:037AH LINE# 55
+ C:037AH LINE# 56
+ C:0387H LINE# 57
+ C:039AH LINE# 58
+ C:03A2H LINE# 59
+ C:03AAH LINE# 60
+ C:03B2H LINE# 61
+ C:03BAH LINE# 62
+ C:03BAH LINE# 63
+ C:03BAH LINE# 65
+ C:03C5H LINE# 66
+ C:03C5H LINE# 67
+ C:03D2H LINE# 68
+ C:03D2H LINE# 69
+ C:03DFH LINE# 70
+ C:03F2H LINE# 71
+ C:03FAH LINE# 72
+ C:0402H LINE# 73
+ C:040AH LINE# 74
+ C:0412H LINE# 75
+ C:041AH LINE# 76
+BL51 BANKED LINKER/LOCATER V6.22.2.0 06/04/2022 21:55:17 PAGE 12
+
+
+ C:041FH LINE# 77
+ C:0421H LINE# 79
+ C:0421H LINE# 80
+ C:042EH LINE# 81
+ C:0441H LINE# 82
+ C:0449H LINE# 83
+ C:0451H LINE# 84
+ C:0459H LINE# 85
+ C:0461H LINE# 86
+ C:0461H LINE# 87
+ C:0461H LINE# 89
+ ------- ENDPROC GENSHAPE
+ ------- ENDMOD BLOCK
+
+ ------- MODULE ?C?COPY
+ C:00D3H PUBLIC ?C?COPY
+ ------- ENDMOD ?C?COPY
+
+ ------- MODULE ?C?CSTPTR
+ C:00F9H PUBLIC ?C?CSTPTR
+ ------- ENDMOD ?C?CSTPTR
+
+ ------- MODULE ?C?CSTOPTR
+ C:010BH PUBLIC ?C?CSTOPTR
+ ------- ENDMOD ?C?CSTOPTR
+
+ ------- MODULE ?C?SIDIV
+ C:012DH PUBLIC ?C?SIDIV
+ ------- ENDMOD ?C?SIDIV
+
------- MODULE ?C?PLDPTR
-BL51 BANKED LINKER/LOCATER V6.22.2.0 05/19/2022 21:13:03 PAGE 10
-
-
- C:07EBH PUBLIC ?C?PLDPTR
+ C:0163H PUBLIC ?C?PLDPTR
------- ENDMOD ?C?PLDPTR
------- MODULE ?C?PLDOPTR
- C:080BH PUBLIC ?C?PLDOPTR
+ C:0183H PUBLIC ?C?PLDOPTR
------- ENDMOD ?C?PLDOPTR
------- MODULE ?C?ICALL
- C:083BH PUBLIC ?C?ICALL
- C:083FH PUBLIC ?C?ICALL2
+ C:01B3H PUBLIC ?C?ICALL
+ C:01B7H PUBLIC ?C?ICALL2
------- ENDMOD ?C?ICALL
+ ------- MODULE RAND
+ X:0046H PUBLIC ?SRAND?BYTE
+ C:0BCAH PUBLIC RAND
+ C:0C08H PUBLIC _SRAND
+ ------- ENDMOD RAND
+
+ ------- MODULE MALLOC
+ C:0741H PUBLIC _malloc
+ ------- ENDMOD MALLOC
+
+ ------- MODULE CALLOC
+ C:0C59H PUBLIC _calloc
+ ------- ENDMOD CALLOC
+
+BL51 BANKED LINKER/LOCATER V6.22.2.0 06/04/2022 21:55:17 PAGE 13
+
+
+ ------- MODULE ?C?IMUL
+ C:01B9H PUBLIC ?C?IMUL
+ ------- ENDMOD ?C?IMUL
+
+ ------- MODULE ?C?UIDIV
+ C:01CBH PUBLIC ?C?UIDIV
+ ------- ENDMOD ?C?UIDIV
+
+ ------- MODULE ?C?LLDXDATA
+ C:0220H PUBLIC ?C?LLDXDATA
+ ------- ENDMOD ?C?LLDXDATA
+
+ ------- MODULE ?C?LSTXDATA
+ C:022CH PUBLIC ?C?LSTXDATA
+ ------- ENDMOD ?C?LSTXDATA
+
------- MODULE ?C?PLDIDATA
- C:0841H PUBLIC ?C?PLDIDATA
+ C:0238H PUBLIC ?C?PLDIDATA
------- ENDMOD ?C?PLDIDATA
------- MODULE ?C?PLDXDATA
- C:084AH PUBLIC ?C?PLDXDATA
+ C:0241H PUBLIC ?C?PLDXDATA
------- ENDMOD ?C?PLDXDATA
------- MODULE ?C?PLDPDATA
- C:0853H PUBLIC ?C?PLDPDATA
+ C:024AH PUBLIC ?C?PLDPDATA
------- ENDMOD ?C?PLDPDATA
------- MODULE ?C?PLDCODE
- C:085CH PUBLIC ?C?PLDCODE
+ C:0253H PUBLIC ?C?PLDCODE
------- ENDMOD ?C?PLDCODE
-*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
- SYMBOL: NUMBER_RPAGE1
- MODULE: .\Objects\draw.obj (DRAW)
+ ------- MODULE ?C?MEMSET
+ C:025FH PUBLIC ?C?MEMSET
+ ------- ENDMOD ?C?MEMSET
-*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
- SYMBOL: NUMBER_RPAGE0
- MODULE: .\Objects\draw.obj (DRAW)
-
-*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
- SYMBOL: NUMBER_PAGE1
- MODULE: .\Objects\draw.obj (DRAW)
-
-*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
- SYMBOL: NUMBER_PAGE0
- MODULE: .\Objects\draw.obj (DRAW)
-
-*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
- SYMBOL: NAME_PAGE1
- MODULE: .\Objects\draw.obj (DRAW)
-
-*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
- SYMBOL: NAME_PAGE0
- MODULE: .\Objects\draw.obj (DRAW)
+ ------- MODULE INIT_MEM
+ X:0015H PUBLIC __mem_avail__
+ C:0CD7H PUBLIC _init_mempool
+ ------- ENDMOD INIT_MEM
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
SEGMENT: ?PR?DELAY100US?DELAY
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
SEGMENT: ?PR?MINICLEAR?DISPLAY
-BL51 BANKED LINKER/LOCATER V6.22.2.0 05/19/2022 21:13:03 PAGE 11
-
-
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
SEGMENT: ?PR?TEST?DISPLAY
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
- SEGMENT: ?CO?DISPLAY
+ SEGMENT: ?PR?BLOCKINIT?BLOCK
-Program Size: data=9.0 xdata=30 code=2386
-LINK/LOCATE RUN COMPLETE. 4 WARNING(S), 6 ERROR(S)
+*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
+ SEGMENT: ?PR?GENPIECE?BLOCK
+
+*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
+BL51 BANKED LINKER/LOCATER V6.22.2.0 06/04/2022 21:55:17 PAGE 14
+
+
+ SEGMENT: ?PR?GENSHAPE?BLOCK
+
+*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
+ SEGMENT: ?PR?_INIT_MEMPOOL?INIT_MEM
+
+Program Size: data=9.0 xdata=80 code=3582
+LINK/LOCATE RUN COMPLETE. 7 WARNING(S), 0 ERROR(S)
diff --git a/MCU/MCU_REAL _FINAL/MCU_1.uvopt b/MCU/MCU_REAL _FINAL/MCU_1.uvopt
index a4367f6..ca2ce1a 100644
--- a/MCU/MCU_REAL _FINAL/MCU_1.uvopt
+++ b/MCU/MCU_REAL _FINAL/MCU_1.uvopt
@@ -269,6 +269,18 @@
0
0
+
+ 1
+ 6
+ 1
+ 0
+ 0
+ 0
+ .\block.c
+ block.c
+ 0
+ 0
+
@@ -279,7 +291,7 @@
0
2
- 6
+ 7
5
0
0
@@ -291,7 +303,7 @@
2
- 7
+ 8
5
0
0
@@ -303,7 +315,7 @@
2
- 8
+ 9
5
0
0
@@ -315,7 +327,7 @@
2
- 9
+ 10
5
0
0
@@ -327,7 +339,7 @@
2
- 10
+ 11
5
0
0
@@ -337,6 +349,30 @@
0
0
+
+ 2
+ 12
+ 5
+ 0
+ 0
+ 0
+ .\button.h
+ button.h
+ 0
+ 0
+
+
+ 2
+ 13
+ 5
+ 0
+ 0
+ 0
+ .\block.h
+ block.h
+ 0
+ 0
+
diff --git a/MCU/MCU_REAL _FINAL/MCU_1.uvproj b/MCU/MCU_REAL _FINAL/MCU_1.uvproj
index 027ff48..0feb962 100644
--- a/MCU/MCU_REAL _FINAL/MCU_1.uvproj
+++ b/MCU/MCU_REAL _FINAL/MCU_1.uvproj
@@ -401,6 +401,11 @@
1
.\draw.c
+
+ block.c
+ 1
+ .\block.c
+
@@ -431,6 +436,16 @@
5
.\draw.h
+
+ button.h
+ 5
+ .\button.h
+
+
+ block.h
+ 5
+ .\block.h
+
diff --git a/MCU/MCU_REAL _FINAL/Nu_Link_8051_Driver.ini b/MCU/MCU_REAL _FINAL/Nu_Link_8051_Driver.ini
new file mode 100644
index 0000000..01f39b4
--- /dev/null
+++ b/MCU/MCU_REAL _FINAL/Nu_Link_8051_Driver.ini
@@ -0,0 +1,19 @@
+[Version]
+Nu_LinkVersion=V1.1
+[Process]
+ProcessID=0x00000000
+ProcessCreationTime_L=0x00000000
+ProcessCreationTime_H=0x00000000
+NuLinkID=0x00000000
+[Option]
+MaxClock=1
+EnablePCLK=1
+Erase=0
+Program=1
+Verify=1
+ResetAndRun=1
+UpdateSprom=0
+IOVoltage=3300
+EnableMemAcc=0
+MemAccPeriod=1000
+EnableLog=0
\ No newline at end of file
diff --git a/MCU/MCU_REAL _FINAL/block.c b/MCU/MCU_REAL _FINAL/block.c
new file mode 100644
index 0000000..adbecee
--- /dev/null
+++ b/MCU/MCU_REAL _FINAL/block.c
@@ -0,0 +1,89 @@
+#include "block.h"
+
+Group *base;
+Group *piece;
+
+void blockInit()
+{
+ base=(Group*)calloc(1,sizeof(Group));
+ groupInit(*base,64);
+}
+
+void genPiece()
+{
+ unsigned char i=2+rand()%3;
+ piece=(Group*)calloc(1,sizeof(Group));
+ groupInit(*piece,i);
+}
+
+void genShape(Group g)
+{
+ //Ҫһ
+ int random=rand()%4;
+
+ //
+ if(g.len==2)
+ {
+ if(random%2==0)
+ {
+ g.list[0].x=4; //
+ g.list[0].y=8; //
+ g.list[1].x=4;
+ g.list[1].y=9;
+ }
+ else
+ {
+ g.list[0].x=4; ////
+ g.list[0].y=8;
+ g.list[1].x=5;
+ g.list[1].y=8;
+ }
+ }
+ //
+ if(g.len==3)
+ {
+ if(random%2==0)
+ {
+ g.list[0].x=4; //
+ g.list[0].y=8; //
+ g.list[1].x=4; //
+ g.list[1].y=9;
+ g.list[2].x=4;
+ g.list[2].y=10;
+ }
+ else
+ {
+ g.list[0].x=4; //////
+ g.list[0].y=8;
+ g.list[1].x=5;
+ g.list[1].y=8;
+ g.list[2].x=4;
+ g.list[2].y=9;
+ }
+ }
+ //ĸ
+ if(g.len==3)
+ {
+ if(random==0)
+ {
+ g.list[0].x=4; //
+ g.list[0].y=8; //
+ g.list[1].x=4; ////
+ g.list[1].y=9;
+ g.list[2].x=4;
+ g.list[2].y=10;
+ g.list[3].x=5;
+ g.list[3].y=8;
+ }
+ else
+ {
+ g.list[0].x=4;
+ g.list[0].y=8;
+ g.list[1].x=5;
+ g.list[1].y=8;
+ g.list[2].x=4;
+ g.list[2].y=9;
+ }
+ }
+
+}
\ No newline at end of file
diff --git a/MCU/MCU_REAL _FINAL/block.h b/MCU/MCU_REAL _FINAL/block.h
new file mode 100644
index 0000000..6f14f41
--- /dev/null
+++ b/MCU/MCU_REAL _FINAL/block.h
@@ -0,0 +1,36 @@
+#ifndef _BLOCK_H_
+#define _BLOCK_H_
+#include
+
+#define MAX_X 8
+#define MAX_Y 8
+
+
+// ṹ
+struct _dot
+{
+ unsigned char x;
+ unsigned char y;
+} ;
+typedef struct _dot Dot;
+
+// ṹ
+struct _group
+{
+ unsigned char used;//ӵеĵ
+ unsigned char len; //ڴ泤
+ Dot* list;
+};
+typedef struct _group Group;
+
+void groupInit(Group g,unsigned char i)
+{
+ retry:
+ g.len=i;
+ g.used=0;
+ g.list=(Dot*)malloc(sizeof(Dot)*g.len);
+ if(!g.list)
+ goto retry;
+}
+
+#endif
\ No newline at end of file
diff --git a/MCU/MCU_REAL _FINAL/button.h b/MCU/MCU_REAL _FINAL/button.h
new file mode 100644
index 0000000..f842c85
--- /dev/null
+++ b/MCU/MCU_REAL _FINAL/button.h
@@ -0,0 +1,6 @@
+#ifndef _BUTTON_H_
+#define _BUTTON_H_
+
+enum OPR {left,right,confirm,idle};
+
+#endif
\ No newline at end of file
diff --git a/MCU/MCU_REAL _FINAL/display.c b/MCU/MCU_REAL _FINAL/display.c
index 69997b3..db90c6b 100644
--- a/MCU/MCU_REAL _FINAL/display.c
+++ b/MCU/MCU_REAL _FINAL/display.c
@@ -1,17 +1,16 @@
#include
#include "display.h"
#include "delay.h"
-#include "img.h"
+
// DB P1
// CTL P3
-sbit RS = P3 ^ 0;
-sbit RW = P3 ^ 1;
-sbit E = P3 ^ 2;
-sbit CSA = P3 ^ 4;
-sbit CSB = P3 ^ 5;
-
+sbit RS = P2 ^ 0;
+sbit RW = P2 ^ 1;
+sbit E = P2 ^ 2;
+sbit CSA = P2 ^ 4;
+sbit CSB = P2 ^ 5;
diff --git a/MCU/MCU_REAL _FINAL/draw.c b/MCU/MCU_REAL _FINAL/draw.c
index 05acd1f..8ad9970 100644
--- a/MCU/MCU_REAL _FINAL/draw.c
+++ b/MCU/MCU_REAL _FINAL/draw.c
@@ -55,7 +55,7 @@ void drawNUMBER()
P1 = 0xb8 + 2;
write();
P1 = 0X40 + j;
- write(); //ҳ2jA
+ write(); //ҳ2jB
RS = 1;
RW = 0;
@@ -67,7 +67,7 @@ void drawNUMBER()
P1 = 0xb8 + 3;
write();
P1 = 0X40 + j;
- write(); //ҳ3jA
+ write(); //ҳ3jB
RS = 1;
RW = 0;
@@ -111,7 +111,28 @@ void drawNAME()
RW = 0;
P1 = NAME_PAGE1[j - 1];
write();
+ }
+}
+void drawFullIMG(unsigned char img[])
+{
+ unsigned int j,i;
+ for(j = 0; j < 64; j++)
+ for(i=0;i<8;i++)
+ {
+ CSA = 1;
+ CSB = 0;
+ RS = 0;
+ RW = 0;
+ P1 = 0xb8 + i;
+ write();
+ P1 = 0X40 + j;
+ write(); //ҳijA
+
+ RS = 1;
+ RW = 0;
+ P1 = img[j - 1];
+ write();
}
}
\ No newline at end of file
diff --git a/MCU/MCU_REAL _FINAL/img.h b/MCU/MCU_REAL _FINAL/img.h
index c9ff8c1..766e571 100644
--- a/MCU/MCU_REAL _FINAL/img.h
+++ b/MCU/MCU_REAL _FINAL/img.h
@@ -1,3 +1,8 @@
+#ifndef _IMG_H_
+#define _IMG_H_
+
+
+//
code unsigned char NAME_PAGE0[] =
{
0x10, 0x60, 0x02, 0x0C, 0xC0, 0x04, 0x04, 0x04, 0x04, 0xFC, 0x04, 0x04, 0x04, 0x04, 0x00, 0x00,
@@ -13,31 +18,19 @@ code unsigned char NAME_PAGE1[] =
};
-
-code unsigned NUMBER_PAGE0[]={
+//ѧ
+code unsigned char NUMBER_PAGE0[]={
-/*-- : 2 --*/
0x00,0x70,0x08,0x08,0x08,0x08,0xF0,0x00,
-/*-- : 0 --*/
0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,
-/*-- : 2 --*/
0x00,0x70,0x08,0x08,0x08,0x08,0xF0,0x00,
-/*-- : 0 --*/
0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,
-/*-- : 1 --*/
0x00,0x00,0x10,0x10,0xF8,0x00,0x00,0x00,
-/*-- : 1 --*/
0x00,0x00,0x10,0x10,0xF8,0x00,0x00,0x00,
-/*-- : 4 --*/
0x00,0x00,0x80,0x40,0x30,0xF8,0x00,0x00,
-/*-- : 4 --*/
0x00,0x00,0x80,0x40,0x30,0xF8,0x00,0x00,
-
};
-
-
-
-code unsigned NUMBER_PAGE1[]={
+code unsigned char NUMBER_PAGE1[]={
0x00,0x30,0x28,0x24,0x22,0x21,0x30,0x00,
0x00,0x0F,0x10,0x20,0x20,0x10,0x0F,0x00,
0x00,0x30,0x28,0x24,0x22,0x21,0x30,0x00,
@@ -46,21 +39,85 @@ code unsigned NUMBER_PAGE1[]={
0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,
0x00,0x06,0x05,0x24,0x24,0x3F,0x24,0x24,
0x00,0x06,0x05,0x24,0x24,0x3F,0x24,0x24,
-
};
-
-code unsigned NUMBER_RPAGE0[]=
+//ѧ
+code unsigned char NUMBER_RPAGE0[]=
{
0x00,0xF0,0x08,0x08,0x08,0x10,0xE0,0x00,
0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,
};
-
-code unsigned NUMBER_RPAGE1[]=
+code unsigned char NUMBER_RPAGE1[]=
{
0x00,0x01,0x12,0x22,0x22,0x11,0x0F,0x00,
0x00,0x0F,0x10,0x20,0x20,0x10,0x0F,0x00,
};
+code unsigned char MAIN_MENU={
+0x00,0x00,0x00,0x00,0x20,0xA0,0xA0,0xA0,0xF0,0xA0,0xA0,0xF0,0xA0,0xA0,0xE0,0x20,
+0x00,0x00,0x00,0xC0,0x40,0x50,0x60,0xC0,0x40,0x60,0x50,0x40,0xC0,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x48,0x48,0x2B,0x1C,0x08,0xFD,0x0A,0x18,0x2C,0x4A,0x49,0x40,
+0x00,0x10,0x10,0x17,0x15,0x15,0x15,0xFF,0x15,0x15,0x15,0x15,0x17,0x10,0x10,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x20,0x00,0xE0,0x40,0x40,
+0xF0,0x40,0x40,0x40,0x00,0x00,0x00,0x20,0x20,0xE0,0x20,0x20,0xA0,0xA0,0xE0,0xA0,
+0xA0,0xA0,0x20,0x00,0x00,0x00,0x00,0x10,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x81,0x41,0x7F,0x41,0xA1,0x91,0x8F,
+0x81,0xBF,0xA1,0xA1,0x91,0x80,0x00,0x20,0x20,0x1F,0x10,0x90,0xBF,0x40,0x30,0x2E,
+0x20,0x5F,0x80,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x20,0x00,0xE0,0x40,0x40,
+0xF0,0x40,0x40,0x40,0x00,0x00,0x00,0x20,0x20,0xE0,0x20,0x20,0xA0,0xA0,0xE0,0xA0,
+0xA0,0xA0,0x20,0x00,0x00,0x40,0x30,0x10,0x10,0x30,0xE0,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x81,0x41,0x7F,0x41,0xA1,0x91,0x8F,
+0x81,0xBF,0xA1,0xA1,0x91,0x80,0x00,0x20,0x20,0x1F,0x10,0x90,0xBF,0x40,0x30,0x2E,
+0x20,0x5F,0x80,0x00,0x00,0x20,0x30,0x28,0x24,0x23,0x21,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,}
+
//void writeData(unsigned char d)
//{
// RS = 1;
@@ -88,4 +145,6 @@ code unsigned NUMBER_RPAGE1[]=
//void setY(unsigned char p)
//{
// setCommand(0x40 + p);
-//}
\ No newline at end of file
+//}
+
+#endif
\ No newline at end of file
diff --git a/MCU/MCU_REAL _FINAL/main.c b/MCU/MCU_REAL _FINAL/main.c
index 0aaff26..5a97064 100644
--- a/MCU/MCU_REAL _FINAL/main.c
+++ b/MCU/MCU_REAL _FINAL/main.c
@@ -3,24 +3,25 @@
#include "display.h"
#include "menu.h"
#include "draw.h"
+#include "button.h"
extern Menu *NOW;
+enum OPR opr=idle;
+sbit RS = P2 ^ 0;
+sbit RW = P2 ^ 1;
+sbit E = P2 ^ 2;
+sbit CSA = P2 ^ 4;
+sbit CSB = P2 ^ 5;
-sbit RS = P3 ^ 0;
-sbit RW = P3 ^ 1;
-sbit E = P3 ^ 2;
-sbit CSA = P3 ^ 4;
-sbit CSB = P3 ^ 5;
-
-
+sbit LCDRST =P2^3;
int main()
{
menuInit();
- NOW->f(NOW);
+
+
while(1)
- {
+ {
+ NOW->f(NOW,opr);
-
-
- }
+ }
}
\ No newline at end of file
diff --git a/MCU/MCU_REAL _FINAL/menu.c b/MCU/MCU_REAL _FINAL/menu.c
index b6943b3..7702094 100644
--- a/MCU/MCU_REAL _FINAL/menu.c
+++ b/MCU/MCU_REAL _FINAL/menu.c
@@ -3,19 +3,20 @@
#include "delay.h"
#include "draw.h"
-Menu M_MAINMANU;
+Menu M_MAINMANU;//˵
+Menu M_PLAYMODE1; //˹
-Menu* NOW; //ڲ˵ָ
+Menu* NOW; //ǰ˵ָ
//ʼ˵
-void m_startup(struct _menu* this)
+void m_startup(struct _menu* this,enum OPR opr)
{
displayInit();
clear();
@@ -23,7 +24,7 @@ void m_startup(struct _menu* this)
delay(1000);
drawNUMBER();
delay(3000);
- clear();
+// clear();
NOW=this->n;
}
Menu M_STARTUP={&M_MAINMANU,m_startup};
diff --git a/MCU/MCU_REAL _FINAL/menu.h b/MCU/MCU_REAL _FINAL/menu.h
index ee37d7b..a216675 100644
--- a/MCU/MCU_REAL _FINAL/menu.h
+++ b/MCU/MCU_REAL _FINAL/menu.h
@@ -1,7 +1,13 @@
+#ifndef _MENU_H_
+#define _MENU_H_
+#include "button.h"
+
typedef struct _menu
{
struct _menu* n;
- void(*f)(struct _menu* this);
+ void(*f)(struct _menu* this, enum OPR opr);
}Menu;
-void menuInit();
\ No newline at end of file
+void menuInit();
+
+#endif
\ No newline at end of file