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