├── L1Demo-C-example
└── L1DemoProto.X
│ ├── nbproject
│ ├── project.properties
│ ├── private
│ │ ├── private.properties
│ │ ├── private.xml
│ │ └── configurations.xml
│ ├── Makefile-genesis.properties
│ ├── Makefile-variables.mk
│ ├── project.xml
│ ├── Package-default.bash
│ ├── Makefile-local-default.mk
│ ├── Makefile-impl.mk
│ └── Makefile-default.mk
│ ├── ipu
│ ├── rawimg
│ ├── rawimg.cmp
│ ├── testimage.png
│ ├── inflate.pl
│ ├── deflate.pl
│ ├── stringpack.pl
│ ├── makeraw.c
│ └── README.md
│ ├── build
│ └── default
│ │ └── production
│ │ ├── main.o.d
│ │ └── main.o
│ ├── README.md
│ ├── dist
│ └── default
│ │ └── production
│ │ ├── L1DemoProto.X.production.elf
│ │ └── L1DemoProto.X.production.map
│ ├── build.sh
│ ├── 8bpp-colors.pl
│ ├── Makefile
│ ├── music.h
│ ├── 320x240-hack
│ └── main.c
│ ├── 80x480-double
│ └── main.c
│ ├── clut
│ └── main.c
│ ├── testgfx.h
│ └── arko rotate
│ ├── fonts.h
│ └── main.c
├── L1Demo-asm-example
├── L1Demo-asm.X
│ ├── nbproject
│ │ ├── project.properties
│ │ ├── private
│ │ │ ├── private.properties
│ │ │ ├── private.xml
│ │ │ └── configurations.xml
│ │ ├── Makefile-genesis.properties
│ │ ├── Makefile-variables.mk
│ │ ├── project.xml
│ │ ├── Package-default.bash
│ │ ├── Makefile-local-default.mk
│ │ ├── Makefile-impl.mk
│ │ └── Makefile-default.mk
│ ├── build
│ │ └── default
│ │ │ └── production
│ │ │ └── _ext
│ │ │ └── 1472
│ │ │ ├── L1Demo-sam.o.d
│ │ │ └── L1Demo-sam.o
│ ├── dist
│ │ └── default
│ │ │ └── production
│ │ │ ├── L1Demo-asm.X.production.elf
│ │ │ └── L1Demo-asm.X.production.map
│ └── Makefile
├── L1Demo-asm.mcw
├── L1Demo-asm.mcs
├── macros.inc
├── L1Demo-asm.mcp
└── Fonts.inc
├── L1Demo-asm-Leo_audio
└── L1Demo-asm
│ ├── L1Demo-asm.X
│ ├── nbproject
│ │ ├── project.properties
│ │ ├── private
│ │ │ ├── private.properties
│ │ │ ├── private.xml
│ │ │ └── configurations.xml
│ │ ├── Makefile-genesis.properties
│ │ ├── Makefile-variables.mk
│ │ ├── project.xml
│ │ ├── Package-default.bash
│ │ ├── Makefile-local-default.mk
│ │ ├── Makefile-impl.mk
│ │ └── Makefile-default.mk
│ ├── build
│ │ └── default
│ │ │ └── production
│ │ │ └── _ext
│ │ │ └── 1472
│ │ │ ├── L1Demo-sam.o.d
│ │ │ └── L1Demo-sam.o
│ ├── dist
│ │ └── default
│ │ │ └── production
│ │ │ ├── L1Demo-asm.X.production.elf
│ │ │ └── L1Demo-asm.X.production.map
│ └── Makefile
│ ├── L1Demo-asm.mcw
│ ├── L1Demo-asm.mcs
│ ├── macros.inc
│ ├── L1Demo-asm.mcp
│ └── Fonts.inc
├── L1Demo-PCB
├── L1Demoscene_v4.pdf
├── L1Demoboard_BOM.xlsx
├── arko_l1demo_partlist.xlsx
└── L1Demoscene_panelized
│ ├── pnl-panel_outline.gm1
│ ├── pnl-panel_V-cut.gbr
│ ├── pnl-panel_pins-NPTH.txt
│ └── pnl_bottom_soldermask.gbs
├── L1Demo-asm-example_v8
├── L1Demo-sam.o
├── L1Demo-asm.cof
├── L1Demo-asm.map
├── L1Demo-asm.mcw
├── macros.inc
├── L1Demo-asm.mcp
├── L1Demo-asm.mcs
└── Fonts.inc
├── L1Demo-asm-Leo_v8_audio
└── L1Demo-asm
│ ├── L1Demo-asm.cof
│ ├── L1Demo-asm.map
│ ├── L1Demo-asm.mcw
│ ├── L1Demo-sam.o
│ ├── macros.inc
│ ├── L1Demo-asm.mcp
│ ├── L1Demo-asm.mcs
│ └── Fonts.inc
├── .gitattributes
└── .gitignore
/L1Demo-C-example/L1DemoProto.X/nbproject/project.properties:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/L1Demo-asm-example/L1Demo-asm.X/nbproject/project.properties:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/nbproject/private/private.properties:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/L1Demo-asm-example/L1Demo-asm.X/nbproject/private/private.properties:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/L1Demo-asm-Leo_audio/L1Demo-asm/L1Demo-asm.X/nbproject/project.properties:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/L1Demo-asm-Leo_audio/L1Demo-asm/L1Demo-asm.X/nbproject/private/private.properties:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/L1Demo-PCB/L1Demoscene_v4.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arkorobotics/L1DemosceneBoard/HEAD/L1Demo-PCB/L1Demoscene_v4.pdf
--------------------------------------------------------------------------------
/L1Demo-PCB/L1Demoboard_BOM.xlsx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arkorobotics/L1DemosceneBoard/HEAD/L1Demo-PCB/L1Demoboard_BOM.xlsx
--------------------------------------------------------------------------------
/L1Demo-asm-example/L1Demo-asm.mcw:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arkorobotics/L1DemosceneBoard/HEAD/L1Demo-asm-example/L1Demo-asm.mcw
--------------------------------------------------------------------------------
/L1Demo-asm-example_v8/L1Demo-sam.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arkorobotics/L1DemosceneBoard/HEAD/L1Demo-asm-example_v8/L1Demo-sam.o
--------------------------------------------------------------------------------
/L1Demo-PCB/arko_l1demo_partlist.xlsx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arkorobotics/L1DemosceneBoard/HEAD/L1Demo-PCB/arko_l1demo_partlist.xlsx
--------------------------------------------------------------------------------
/L1Demo-asm-example_v8/L1Demo-asm.cof:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arkorobotics/L1DemosceneBoard/HEAD/L1Demo-asm-example_v8/L1Demo-asm.cof
--------------------------------------------------------------------------------
/L1Demo-asm-example_v8/L1Demo-asm.map:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arkorobotics/L1DemosceneBoard/HEAD/L1Demo-asm-example_v8/L1Demo-asm.map
--------------------------------------------------------------------------------
/L1Demo-asm-example_v8/L1Demo-asm.mcw:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arkorobotics/L1DemosceneBoard/HEAD/L1Demo-asm-example_v8/L1Demo-asm.mcw
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/ipu/rawimg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arkorobotics/L1DemosceneBoard/HEAD/L1Demo-C-example/L1DemoProto.X/ipu/rawimg
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/ipu/rawimg.cmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arkorobotics/L1DemosceneBoard/HEAD/L1Demo-C-example/L1DemoProto.X/ipu/rawimg.cmp
--------------------------------------------------------------------------------
/L1Demo-asm-Leo_audio/L1Demo-asm/L1Demo-asm.mcw:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arkorobotics/L1DemosceneBoard/HEAD/L1Demo-asm-Leo_audio/L1Demo-asm/L1Demo-asm.mcw
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/ipu/testimage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arkorobotics/L1DemosceneBoard/HEAD/L1Demo-C-example/L1DemoProto.X/ipu/testimage.png
--------------------------------------------------------------------------------
/L1Demo-asm-Leo_v8_audio/L1Demo-asm/L1Demo-asm.cof:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arkorobotics/L1DemosceneBoard/HEAD/L1Demo-asm-Leo_v8_audio/L1Demo-asm/L1Demo-asm.cof
--------------------------------------------------------------------------------
/L1Demo-asm-Leo_v8_audio/L1Demo-asm/L1Demo-asm.map:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arkorobotics/L1DemosceneBoard/HEAD/L1Demo-asm-Leo_v8_audio/L1Demo-asm/L1Demo-asm.map
--------------------------------------------------------------------------------
/L1Demo-asm-Leo_v8_audio/L1Demo-asm/L1Demo-asm.mcw:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arkorobotics/L1DemosceneBoard/HEAD/L1Demo-asm-Leo_v8_audio/L1Demo-asm/L1Demo-asm.mcw
--------------------------------------------------------------------------------
/L1Demo-asm-Leo_v8_audio/L1Demo-asm/L1Demo-sam.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arkorobotics/L1DemosceneBoard/HEAD/L1Demo-asm-Leo_v8_audio/L1Demo-asm/L1Demo-sam.o
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/build/default/production/main.o.d:
--------------------------------------------------------------------------------
1 | build/default/production/main.o: \
2 | main.c \
3 | fonts.h \
4 | music.h \
5 | sprites.h \
6 | screens.h
7 |
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/build/default/production/main.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arkorobotics/L1DemosceneBoard/HEAD/L1Demo-C-example/L1DemoProto.X/build/default/production/main.o
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/ipu/inflate.pl:
--------------------------------------------------------------------------------
1 | #!/usr/bin/perl
2 |
3 | use warnings;
4 | use strict;
5 |
6 | use IO::Uncompress::RawInflate qw(rawinflate);
7 |
8 | rawinflate "-" => "-";
9 |
--------------------------------------------------------------------------------
/L1Demo-asm-example/L1Demo-asm.X/build/default/production/_ext/1472/L1Demo-sam.o.d:
--------------------------------------------------------------------------------
1 | build/default/production/_ext/1472/L1Demo-sam.o: \
2 | ../Fonts.inc \
3 | ../macros.inc \
4 | ../L1Demo-sam.s
5 |
--------------------------------------------------------------------------------
/L1Demo-asm-Leo_audio/L1Demo-asm/L1Demo-asm.X/build/default/production/_ext/1472/L1Demo-sam.o.d:
--------------------------------------------------------------------------------
1 | build/default/production/_ext/1472/L1Demo-sam.o: \
2 | ../Fonts.inc \
3 | ../macros.inc \
4 | ../L1Demo-sam.s
5 |
--------------------------------------------------------------------------------
/L1Demo-asm-example/L1Demo-asm.X/build/default/production/_ext/1472/L1Demo-sam.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arkorobotics/L1DemosceneBoard/HEAD/L1Demo-asm-example/L1Demo-asm.X/build/default/production/_ext/1472/L1Demo-sam.o
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/README.md:
--------------------------------------------------------------------------------
1 | # Layer 1 demo board code
2 |
3 | This is where I'll be dumping my L1 Demo code as I slowly cobble it together.
4 | See https://github.com/arkorobotics/L1DemosceneBoard for more examples.
5 |
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/dist/default/production/L1DemoProto.X.production.elf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arkorobotics/L1DemosceneBoard/HEAD/L1Demo-C-example/L1DemoProto.X/dist/default/production/L1DemoProto.X.production.elf
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/dist/default/production/L1DemoProto.X.production.map:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arkorobotics/L1DemosceneBoard/HEAD/L1Demo-C-example/L1DemoProto.X/dist/default/production/L1DemoProto.X.production.map
--------------------------------------------------------------------------------
/L1Demo-asm-example/L1Demo-asm.X/dist/default/production/L1Demo-asm.X.production.elf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arkorobotics/L1DemosceneBoard/HEAD/L1Demo-asm-example/L1Demo-asm.X/dist/default/production/L1Demo-asm.X.production.elf
--------------------------------------------------------------------------------
/L1Demo-asm-example/L1Demo-asm.X/dist/default/production/L1Demo-asm.X.production.map:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arkorobotics/L1DemosceneBoard/HEAD/L1Demo-asm-example/L1Demo-asm.X/dist/default/production/L1Demo-asm.X.production.map
--------------------------------------------------------------------------------
/L1Demo-asm-Leo_audio/L1Demo-asm/L1Demo-asm.X/build/default/production/_ext/1472/L1Demo-sam.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arkorobotics/L1DemosceneBoard/HEAD/L1Demo-asm-Leo_audio/L1Demo-asm/L1Demo-asm.X/build/default/production/_ext/1472/L1Demo-sam.o
--------------------------------------------------------------------------------
/L1Demo-asm-Leo_audio/L1Demo-asm/L1Demo-asm.X/dist/default/production/L1Demo-asm.X.production.elf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arkorobotics/L1DemosceneBoard/HEAD/L1Demo-asm-Leo_audio/L1Demo-asm/L1Demo-asm.X/dist/default/production/L1Demo-asm.X.production.elf
--------------------------------------------------------------------------------
/L1Demo-asm-Leo_audio/L1Demo-asm/L1Demo-asm.X/dist/default/production/L1Demo-asm.X.production.map:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/arkorobotics/L1DemosceneBoard/HEAD/L1Demo-asm-Leo_audio/L1Demo-asm/L1Demo-asm.X/dist/default/production/L1Demo-asm.X.production.map
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/ipu/deflate.pl:
--------------------------------------------------------------------------------
1 | #!/usr/bin/perl
2 |
3 | use warnings;
4 | use strict;
5 |
6 | use IO::Compress::RawDeflate qw(rawdeflate :level :strategy);
7 |
8 | rawdeflate "-" => "-", -Level => Z_BEST_COMPRESSION, -Strategy => Z_FIXED;
9 |
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/ipu/stringpack.pl:
--------------------------------------------------------------------------------
1 | #!/usr/bin/perl
2 |
3 | use warnings;
4 | use strict;
5 |
6 | my $x = 0;
7 | while(defined(my $c = getc())) {
8 | $c = unpack("C", $c)
9 | printf "0x%x,", $c;
10 | if(++$x > 8) {
11 | $x = 0;
12 | printf "\n";
13 | }
14 |
15 | }
16 |
--------------------------------------------------------------------------------
/L1Demo-PCB/L1Demoscene_panelized/pnl-panel_outline.gm1:
--------------------------------------------------------------------------------
1 | G75*
2 | G70*
3 | %OFA0B0*%
4 | %FSLAX25Y25*%
5 | %IPPOS*%
6 | %LPD*%
7 | %AMOC8*
8 | 5,1,8,0,0,1.08239X$1,22.5*
9 | %
10 | %ADD10C,0.00100*%
11 | D10*
12 | X0010000Y-026516D02*
13 | X0010000Y0243366D01*
14 | X1191100Y0243366D01*
15 | X1191100Y-026516D01*
16 | X0010000Y-026516D01*
17 | M02*
18 |
--------------------------------------------------------------------------------
/L1Demo-asm-example/L1Demo-asm.mcs:
--------------------------------------------------------------------------------
1 | [Header]
2 | MagicCookie={0b13fe8c-dfe0-40eb-8900-6712719559a7}
3 | Version=1.0
4 | [TOOL_LOC_STAMPS]
5 | tool_loc{DE18EB1A-B46B-486B-B96F-A811A635DFAC}=C:\Program Files (x86)\Microchip\MPLAB ASM30 Suite\bin\pic30-as.exe
6 | tool_loc{433C3D55-811D-409D-A6BF-159CF9355B42}=C:\Program Files\Microchip\mplabc30\v3.31\bin\pic30-ld.exe
7 |
--------------------------------------------------------------------------------
/L1Demo-asm-Leo_audio/L1Demo-asm/L1Demo-asm.mcs:
--------------------------------------------------------------------------------
1 | [Header]
2 | MagicCookie={0b13fe8c-dfe0-40eb-8900-6712719559a7}
3 | Version=1.0
4 | [TOOL_LOC_STAMPS]
5 | tool_loc{DE18EB1A-B46B-486B-B96F-A811A635DFAC}=C:\Program Files (x86)\Microchip\MPLAB ASM30 Suite\bin\pic30-as.exe
6 | tool_loc{433C3D55-811D-409D-A6BF-159CF9355B42}=C:\Program Files\Microchip\mplabc30\v3.31\bin\pic30-ld.exe
7 |
--------------------------------------------------------------------------------
/L1Demo-asm-example/L1Demo-asm.X/nbproject/private/private.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | file:/C:/Users/arko/Documents/GitHub/L1DemosceneBoard/L1Demo-asm-example/L1Demo-sam.s
5 |
6 |
7 |
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/nbproject/Makefile-genesis.properties:
--------------------------------------------------------------------------------
1 | #
2 | #Sat Feb 14 15:28:17 PST 2015
3 | default.com-microchip-mplab-nbide-toolchainXC16-XC16LanguageToolchain.md5=50eeab13277454ff034a57c2ebde7ed0
4 | default.languagetoolchain.dir=C\:\\Program Files (x86)\\Microchip\\xc16\\v1.21\\bin
5 | com-microchip-mplab-nbide-embedded-makeproject-MakeProject.md5=ac168ab0a9b512659ad42bb497aabd51
6 | default.languagetoolchain.version=1.21
7 | host.platform=windows
8 | conf.ids=default
9 |
--------------------------------------------------------------------------------
/L1Demo-asm-example/L1Demo-asm.X/nbproject/Makefile-genesis.properties:
--------------------------------------------------------------------------------
1 | #
2 | #Thu Jan 01 14:25:05 PST 2015
3 | default.com-microchip-mplab-nbide-toolchainXC16-XC16LanguageToolchain.md5=50eeab13277454ff034a57c2ebde7ed0
4 | default.languagetoolchain.dir=C\:\\Program Files (x86)\\Microchip\\xc16\\v1.21\\bin
5 | com-microchip-mplab-nbide-embedded-makeproject-MakeProject.md5=ac168ab0a9b512659ad42bb497aabd51
6 | default.languagetoolchain.version=1.21
7 | host.platform=windows
8 | conf.ids=default
9 |
--------------------------------------------------------------------------------
/L1Demo-asm-Leo_audio/L1Demo-asm/L1Demo-asm.X/nbproject/Makefile-genesis.properties:
--------------------------------------------------------------------------------
1 | #
2 | #Thu Jan 01 14:25:36 PST 2015
3 | default.com-microchip-mplab-nbide-toolchainXC16-XC16LanguageToolchain.md5=50eeab13277454ff034a57c2ebde7ed0
4 | default.languagetoolchain.dir=C\:\\Program Files (x86)\\Microchip\\xc16\\v1.21\\bin
5 | com-microchip-mplab-nbide-embedded-makeproject-MakeProject.md5=ac168ab0a9b512659ad42bb497aabd51
6 | default.languagetoolchain.version=1.21
7 | host.platform=windows
8 | conf.ids=default
9 |
--------------------------------------------------------------------------------
/L1Demo-asm-Leo_audio/L1Demo-asm/L1Demo-asm.X/nbproject/private/private.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | file:/C:/Users/arko/Desktop/Tesla/nsl/LayerOne_2015/Demoscene/Code/L1Demo-asm-Leo/L1Demo-asm/L1Demo-sam.s
5 |
6 |
7 |
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/nbproject/Makefile-variables.mk:
--------------------------------------------------------------------------------
1 | #
2 | # Generated - do not edit!
3 | #
4 | # NOCDDL
5 | #
6 | CND_BASEDIR=`pwd`
7 | # default configuration
8 | CND_ARTIFACT_DIR_default=dist/default/production
9 | CND_ARTIFACT_NAME_default=L1DemoProto.X.production.hex
10 | CND_ARTIFACT_PATH_default=dist/default/production/L1DemoProto.X.production.hex
11 | CND_PACKAGE_DIR_default=${CND_DISTDIR}/default/package
12 | CND_PACKAGE_NAME_default=l1demoproto.x.tar
13 | CND_PACKAGE_PATH_default=${CND_DISTDIR}/default/package/l1demoproto.x.tar
14 |
--------------------------------------------------------------------------------
/L1Demo-asm-example/L1Demo-asm.X/nbproject/Makefile-variables.mk:
--------------------------------------------------------------------------------
1 | #
2 | # Generated - do not edit!
3 | #
4 | # NOCDDL
5 | #
6 | CND_BASEDIR=`pwd`
7 | # default configuration
8 | CND_ARTIFACT_DIR_default=dist/default/production
9 | CND_ARTIFACT_NAME_default=L1Demo-asm.X.production.hex
10 | CND_ARTIFACT_PATH_default=dist/default/production/L1Demo-asm.X.production.hex
11 | CND_PACKAGE_DIR_default=${CND_DISTDIR}/default/package
12 | CND_PACKAGE_NAME_default=l1demo-asm.x.tar
13 | CND_PACKAGE_PATH_default=${CND_DISTDIR}/default/package/l1demo-asm.x.tar
14 |
--------------------------------------------------------------------------------
/L1Demo-asm-Leo_audio/L1Demo-asm/L1Demo-asm.X/nbproject/Makefile-variables.mk:
--------------------------------------------------------------------------------
1 | #
2 | # Generated - do not edit!
3 | #
4 | # NOCDDL
5 | #
6 | CND_BASEDIR=`pwd`
7 | # default configuration
8 | CND_ARTIFACT_DIR_default=dist/default/production
9 | CND_ARTIFACT_NAME_default=L1Demo-asm.X.production.hex
10 | CND_ARTIFACT_PATH_default=dist/default/production/L1Demo-asm.X.production.hex
11 | CND_PACKAGE_DIR_default=${CND_DISTDIR}/default/package
12 | CND_PACKAGE_NAME_default=l1demo-asm.x.tar
13 | CND_PACKAGE_PATH_default=${CND_DISTDIR}/default/package/l1demo-asm.x.tar
14 |
--------------------------------------------------------------------------------
/.gitattributes:
--------------------------------------------------------------------------------
1 | # Auto detect text files and perform LF normalization
2 | * text=auto
3 |
4 | # Custom for Visual Studio
5 | *.cs diff=csharp
6 | *.sln merge=union
7 | *.csproj merge=union
8 | *.vbproj merge=union
9 | *.fsproj merge=union
10 | *.dbproj merge=union
11 |
12 | # Standard to msysgit
13 | *.doc diff=astextplain
14 | *.DOC diff=astextplain
15 | *.docx diff=astextplain
16 | *.DOCX diff=astextplain
17 | *.dot diff=astextplain
18 | *.DOT diff=astextplain
19 | *.pdf diff=astextplain
20 | *.PDF diff=astextplain
21 | *.rtf diff=astextplain
22 | *.RTF diff=astextplain
23 |
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/nbproject/private/private.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | file:/C:/Users/arko/Documents/GitHub/L1DemosceneBoard/L1Demo-C-example/L1DemoProto.X/main.c
5 | file:/C:/Users/arko/Documents/GitHub/L1DemosceneBoard/L1Demo-C-example/L1DemoProto.X/music.h
6 |
7 |
8 |
--------------------------------------------------------------------------------
/L1Demo-asm-example/macros.inc:
--------------------------------------------------------------------------------
1 | .macro GPU_QUEUE_EMPTY_WAIT ; wait until GFX queue is empty
2 | btsc G1STAT, #PUBUSY
3 | bra $-2
4 | .endm
5 |
6 | .macro CHECK_GPU_QUEUE
7 | nop ; need one instruction cycle delay if immediate instruction before was writing to G1CMDH
8 | btsc G1STAT, #CMDFUL ; check if GFX queue
9 | bra $-2
10 | .endm
11 |
12 | .macro CHR_PRINT_POSITION x, y
13 | CHECK_GPU_QUEUE ; macro inside macro
14 | mov #(((\y)&0xF)<<12)+(\x), w0
15 | mov w0,G1CMDL
16 | mov #CHR_PRINTPOS+(\y)>>4, w0
17 | mov w0,G1CMDH
18 | .endm
19 |
--------------------------------------------------------------------------------
/L1Demo-asm-example_v8/macros.inc:
--------------------------------------------------------------------------------
1 | .macro GPU_QUEUE_EMPTY_WAIT ; wait until GFX queue is empty
2 | btsc G1STAT, #PUBUSY
3 | bra $-2
4 | .endm
5 |
6 | .macro CHECK_GPU_QUEUE
7 | nop ; need one instruction cycle delay if immediate instruction before was writing to G1CMDH
8 | btsc G1STAT, #CMDFUL ; check if GFX queue
9 | bra $-2
10 | .endm
11 |
12 | .macro CHR_PRINT_POSITION x, y
13 | CHECK_GPU_QUEUE ; macro inside macro
14 | mov #(((\y)&0xF)<<12)+(\x), w0
15 | mov w0,G1CMDL
16 | mov #CHR_PRINTPOS+(\y)>>4, w0
17 | mov w0,G1CMDH
18 | .endm
19 |
--------------------------------------------------------------------------------
/L1Demo-asm-Leo_audio/L1Demo-asm/macros.inc:
--------------------------------------------------------------------------------
1 | .macro GPU_QUEUE_EMPTY_WAIT ; wait until GFX queue is empty
2 | btsc G1STAT, #PUBUSY
3 | bra $-2
4 | .endm
5 |
6 | .macro CHECK_GPU_QUEUE
7 | nop ; need one instruction cycle delay if immediate instruction before was writing to G1CMDH
8 | btsc G1STAT, #CMDFUL ; check if GFX queue
9 | bra $-2
10 | .endm
11 |
12 | .macro CHR_PRINT_POSITION x, y
13 | CHECK_GPU_QUEUE ; macro inside macro
14 | mov #(((\y)&0xF)<<12)+(\x), w0
15 | mov w0,G1CMDL
16 | mov #CHR_PRINTPOS+(\y)>>4, w0
17 | mov w0,G1CMDH
18 | .endm
19 |
--------------------------------------------------------------------------------
/L1Demo-asm-Leo_v8_audio/L1Demo-asm/macros.inc:
--------------------------------------------------------------------------------
1 | .macro GPU_QUEUE_EMPTY_WAIT ; wait until GFX queue is empty
2 | btsc G1STAT, #PUBUSY
3 | bra $-2
4 | .endm
5 |
6 | .macro CHECK_GPU_QUEUE
7 | nop ; need one instruction cycle delay if immediate instruction before was writing to G1CMDH
8 | btsc G1STAT, #CMDFUL ; check if GFX queue
9 | bra $-2
10 | .endm
11 |
12 | .macro CHR_PRINT_POSITION x, y
13 | CHECK_GPU_QUEUE ; macro inside macro
14 | mov #(((\y)&0xF)<<12)+(\x), w0
15 | mov w0,G1CMDL
16 | mov #CHR_PRINTPOS+(\y)>>4, w0
17 | mov w0,G1CMDH
18 | .endm
19 |
--------------------------------------------------------------------------------
/L1Demo-PCB/L1Demoscene_panelized/pnl-panel_V-cut.gbr:
--------------------------------------------------------------------------------
1 | G75*
2 | G70*
3 | %OFA0B0*%
4 | %FSLAX25Y25*%
5 | %IPPOS*%
6 | %LPD*%
7 | %AMOC8*
8 | 5,1,8,0,0,1.08239X$1,22.5*
9 | %
10 | %ADD10C,0.00100*%
11 | D10*
12 | X0010000Y0010000D02*
13 | X1191100Y0010000D01*
14 | X0010000Y0206850D02*
15 | X1191100Y0206850D01*
16 | X0206850Y-026516D02*
17 | X0206850Y0243366D01*
18 | X0403700Y-026516D02*
19 | X0403700Y0243366D01*
20 | X0600550Y-026516D02*
21 | X0600550Y0243366D01*
22 | X0797400Y-026516D02*
23 | X0797400Y0243366D01*
24 | X0994250Y-026516D02*
25 | X0994250Y0243366D01*
26 | X1191100Y-026516D02*
27 | X1191100Y0243366D01*
28 | M02*
29 |
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/build.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | # I stole these commands from MPLAB X so I didn't have to keep running it
4 | set -x
5 |
6 | /opt/microchip/xc16/v1.23/bin/xc16-gcc main.c -o main.o -c -mcpu=24FJ256DA206 -MMD -MF main.o.d -mno-eds-warn -g -omf=elf -mlarge-arrays -O0 -msmart-io=1 -Wall -msfr-warn=off &&
7 | /opt/microchip/xc16/v1.23/bin/xc16-gcc -o production.elf main.o -mcpu=24FJ256DA206 -omf=elf -mlarge-arrays -Wl,--local-stack,--defsym=__MPLAB_BUILD=1,,--script=p24FJ256DA206.gld,--stack=16,--check-sections,--data-init,--pack-data,--handles,--isr,--no-gc-sections,--fill-upper=0,--stackguard=16,--no-force-link,--smart-io,-Map=production.map,--report-mem &&
8 | /opt/microchip/xc16/v1.23/bin/xc16-bin2hex production.elf -a -omf=elf
9 |
10 |
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/8bpp-colors.pl:
--------------------------------------------------------------------------------
1 | #!/usr/bin/perl
2 |
3 | use warnings;
4 | use strict;
5 |
6 | # convert 8-bit to 24-bit using info from
7 | # http://stackoverflow.com/questions/2442576/how-does-one-convert-16-bit-rgb565-to-24-bit-rgb888
8 |
9 | my $c = 0;
10 | while($c <= 0xFF) {
11 | my @bits = split(//, unpack("b8", chr($c)));
12 | my $r5 = $bits[7]<<4 | $bits[6]<<3 | $bits[5]<<2 | $bits[5]<<1 | $bits[5];
13 | my $g6 = $bits[4]<<5 | $bits[3]<<4 | $bits[2]<<3 | $bits[2]<<2 | $bits[2]<<1 | $bits[2];
14 | my $b5 = $bits[1]<<4 | $bits[0]<<3 | $bits[0]<<2 | $bits[0]<<1 | $bits[0];
15 |
16 | my $r8 = 255/31 * $r5;
17 | my $g8 = 255/63 * $g6;
18 | my $b8 = 255/31 * $b5;
19 |
20 | printf("0x%02x = #%02x%02x%02x\n", $c, $r8, $g8, $b8);
21 |
22 | $c++;
23 | }
24 |
--------------------------------------------------------------------------------
/L1Demo-asm-example/L1Demo-asm.X/nbproject/project.xml:
--------------------------------------------------------------------------------
1 |
2 | com.microchip.mplab.nbide.embedded.makeproject
3 |
4 |
5 | L1Demo-asm
6 | daf95d7c-805c-44d0-8d07-92d2c4fecf69
7 | 0
8 |
9 |
10 |
11 | inc
12 | ISO-8859-1
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Windows image file caches
2 | Thumbs.db
3 | ehthumbs.db
4 |
5 | # Folder config file
6 | Desktop.ini
7 |
8 | # Recycle Bin used on file shares
9 | $RECYCLE.BIN/
10 |
11 | # Windows Installer files
12 | *.cab
13 | *.msi
14 | *.msm
15 | *.msp
16 |
17 | # =========================
18 | # Operating System Files
19 | # =========================
20 |
21 | # OSX
22 | # =========================
23 |
24 | .DS_Store
25 | .AppleDouble
26 | .LSOverride
27 |
28 | # Icon must end with two \r
29 | Icon
30 |
31 | # Thumbnails
32 | ._*
33 |
34 | # Files that might appear on external disk
35 | .Spotlight-V100
36 | .Trashes
37 |
38 | # Directories potentially created on remote AFP share
39 | .AppleDB
40 | .AppleDesktop
41 | Network Trash Folder
42 | Temporary Items
43 | .apdisk
44 |
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/nbproject/project.xml:
--------------------------------------------------------------------------------
1 |
2 | com.microchip.mplab.nbide.embedded.makeproject
3 |
4 |
5 | L1DemoProto
6 | 5c428e8b-58de-493c-88f4-95e24dd6b18b
7 | 0
8 | c
9 |
10 | h
11 |
12 | ISO-8859-1
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/L1Demo-asm-Leo_audio/L1Demo-asm/L1Demo-asm.X/nbproject/project.xml:
--------------------------------------------------------------------------------
1 |
2 | com.microchip.mplab.nbide.embedded.makeproject
3 |
4 |
5 | L1Demo-asm
6 | daf95d7c-805c-44d0-8d07-92d2c4fecf69
7 | 0
8 |
9 |
10 |
11 | inc
12 | ISO-8859-1
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/L1Demo-PCB/L1Demoscene_panelized/pnl-panel_pins-NPTH.txt:
--------------------------------------------------------------------------------
1 | M48
2 | INCH,TZ
3 | M72
4 | T06C0.035400
5 | %
6 | T07C0.047200
7 | %
8 | T08C0.100394
9 | %
10 | T06
11 | X1600Y17109
12 | X1600Y18291
13 | X21285Y17109
14 | X21285Y18291
15 | X40970Y17109
16 | X40970Y18291
17 | X60655Y17109
18 | X60655Y18291
19 | X80340Y17109
20 | X80340Y18291
21 | X100025Y17109
22 | X100025Y18291
23 | T07
24 | X19400Y15531
25 | X20385Y15531
26 | X17432Y17500
27 | X19400Y19469
28 | X20385Y19469
29 | X39085Y15531
30 | X40070Y15531
31 | X37117Y17500
32 | X39085Y19469
33 | X40070Y19469
34 | X58770Y15531
35 | X59755Y15531
36 | X56802Y17500
37 | X58770Y19469
38 | X59755Y19469
39 | X78455Y15531
40 | X79440Y15531
41 | X76487Y17500
42 | X78455Y19469
43 | X79440Y19469
44 | X98140Y15531
45 | X99125Y15531
46 | X96172Y17500
47 | X98140Y19469
48 | X99125Y19469
49 | X117825Y15531
50 | X118810Y15531
51 | X115857Y17500
52 | X117825Y19469
53 | X118810Y19469
54 | T08
55 | X2968Y-968
56 | X2968Y22653
57 | X117141Y-968
58 | X117141Y22653
59 | M30
60 |
--------------------------------------------------------------------------------
/L1Demo-asm-example/L1Demo-asm.X/nbproject/private/configurations.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Makefile
4 | 0
5 |
6 |
7 | :=MPLABComm-USB-Microchip:=<vid>04D8:=<pid>900A:=<rev>0002:=<man>:=<prod>:=<sn>?:=<drv>x:=end
8 | C:\Program Files (x86)\Microchip\xc16\v1.21\bin
9 |
10 | place holder 1
11 | place holder 2
12 |
13 |
14 |
15 |
16 | true
17 | 0
18 | 0
19 | 0
20 |
21 |
22 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/L1Demo-asm-Leo_audio/L1Demo-asm/L1Demo-asm.X/nbproject/private/configurations.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Makefile
4 | 0
5 |
6 |
7 | :=MPLABComm-USB-Microchip:=<vid>04D8:=<pid>900A:=<rev>0002:=<man>:=<prod>:=<sn>?:=<drv>x:=end
8 | C:\Program Files (x86)\Microchip\xc16\v1.21\bin
9 |
10 | place holder 1
11 | place holder 2
12 |
13 |
14 |
15 |
16 | true
17 | 0
18 | 0
19 | 0
20 |
21 |
22 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/ipu/makeraw.c:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 |
4 | #include "testimage.c"
5 |
6 | int colors[4];
7 | int nextcolor = 0;
8 |
9 | int main() {
10 | unsigned char *head = gimp_image.pixel_data;
11 | char packin = 0;
12 | int pb = 0;
13 | while(head - gimp_image.pixel_data < sizeof(gimp_image.pixel_data)) {
14 | int color = head[0] << 16 | head[1] << 8 | head[2];
15 | int x;
16 | for(x = 0; x < nextcolor; x++) {
17 | if(colors[x] == color) {
18 | break;
19 | }
20 | }
21 | if(x > 3) {
22 | fprintf(stderr, "Too many colors\n");
23 | for(x = 0; x < nextcolor; x++) {
24 | fprintf(stderr, "%d = %x\n", x, colors[x]);
25 | }
26 | fprintf(stderr, "next = %x\n", color);
27 | exit(1);
28 | }
29 | if(x == nextcolor) {
30 | colors[x] = color;
31 | nextcolor++;
32 | }
33 | packin |= (x & 0x3) << pb;
34 | pb += 2;
35 | if(pb > 6) {
36 | putchar(packin);
37 | packin = 0;
38 | pb = 0;
39 | }
40 |
41 | head += gimp_image.bytes_per_pixel;
42 | }
43 |
44 | int x;
45 | for(x = 0; x < nextcolor; x++) {
46 | fprintf(stderr, "%d = %x\n", x, colors[x]);
47 | }
48 | }
49 |
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/nbproject/private/configurations.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Makefile
4 | 0
5 |
6 |
7 | :=MPLABComm-USB-Microchip:=<vid>04D8:=<pid>900A:=<rev>0002:=<man>Microchip Technology Inc.:=<prod>PICkit 3:=<sn>BUR132282398:=<drv>x:=end
8 | C:\Program Files (x86)\Microchip\xc16\v1.21\bin
9 |
10 | place holder 1
11 | place holder 2
12 |
13 |
14 |
15 |
16 | true
17 | 0
18 | 0
19 | 0
20 |
21 |
22 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/L1Demo-asm-example_v8/L1Demo-asm.mcp:
--------------------------------------------------------------------------------
1 | [HEADER]
2 | magic_cookie={66E99B07-E706-4689-9E80-9B2582898A13}
3 | file_version=1.0
4 | device=PIC24FJ256DA206
5 | [PATH_INFO]
6 | BuildDirPolicy=BuildDirIsProjectDir
7 | dir_src=
8 | dir_bin=
9 | dir_tmp=
10 | dir_sin=
11 | dir_inc=
12 | dir_lib=
13 | dir_lkr=
14 | [CAT_FILTERS]
15 | filter_src=*.s;*.c
16 | filter_inc=*.h;*.inc
17 | filter_obj=*.o
18 | filter_lib=*.a
19 | filter_lkr=*.gld
20 | [CAT_SUBFOLDERS]
21 | subfolder_src=
22 | subfolder_inc=
23 | subfolder_obj=
24 | subfolder_lib=
25 | subfolder_lkr=
26 | [FILE_SUBFOLDERS]
27 | file_000=.
28 | file_001=.
29 | file_002=.
30 | [GENERATED_FILES]
31 | file_000=no
32 | file_001=no
33 | file_002=no
34 | [OTHER_FILES]
35 | file_000=no
36 | file_001=no
37 | file_002=no
38 | [FILE_INFO]
39 | file_000=L1Demo-sam.s
40 | file_001=macros.inc
41 | file_002=Fonts.inc
42 | [SUITE_INFO]
43 | suite_guid={9BCCB495-CD65-480A-BA76-63D8E78B117F}
44 | suite_state=
45 | [TOOL_SETTINGS]
46 | TS{8493B2ED-D539-4951-86C9-24D5331F0393}=-g
47 | TS{F9CE474D-6A6C-401D-A11E-BEE01B244D79}=-g -Wall
48 | TS{21A8AA9B-E75C-40B6-B3AE-9CBC16FF2EF9}=-o"$(BINDIR_)$(TARGETBASE).$(TARGETSUFFIX)" -Map="$(BINDIR_)$(TARGETBASE).map" --report-mem
49 | TS{45B3B6E0-6DAF-4E40-8D20-CFB1B620134D}=
50 | [INSTRUMENTED_TRACE]
51 | enable=0
52 | transport=0
53 | format=0
54 | [CUSTOM_BUILD]
55 | Pre-Build=
56 | Pre-BuildEnabled=1
57 | Post-Build=
58 | Post-BuildEnabled=1
59 |
--------------------------------------------------------------------------------
/L1Demo-asm-Leo_v8_audio/L1Demo-asm/L1Demo-asm.mcp:
--------------------------------------------------------------------------------
1 | [HEADER]
2 | magic_cookie={66E99B07-E706-4689-9E80-9B2582898A13}
3 | file_version=1.0
4 | device=PIC24FJ256DA206
5 | [PATH_INFO]
6 | BuildDirPolicy=BuildDirIsProjectDir
7 | dir_src=
8 | dir_bin=
9 | dir_tmp=
10 | dir_sin=
11 | dir_inc=
12 | dir_lib=
13 | dir_lkr=
14 | [CAT_FILTERS]
15 | filter_src=*.s;*.c
16 | filter_inc=*.h;*.inc
17 | filter_obj=*.o
18 | filter_lib=*.a
19 | filter_lkr=*.gld
20 | [CAT_SUBFOLDERS]
21 | subfolder_src=
22 | subfolder_inc=
23 | subfolder_obj=
24 | subfolder_lib=
25 | subfolder_lkr=
26 | [FILE_SUBFOLDERS]
27 | file_000=.
28 | file_001=.
29 | file_002=.
30 | [GENERATED_FILES]
31 | file_000=no
32 | file_001=no
33 | file_002=no
34 | [OTHER_FILES]
35 | file_000=no
36 | file_001=no
37 | file_002=no
38 | [FILE_INFO]
39 | file_000=L1Demo-sam.s
40 | file_001=macros.inc
41 | file_002=Fonts.inc
42 | [SUITE_INFO]
43 | suite_guid={9BCCB495-CD65-480A-BA76-63D8E78B117F}
44 | suite_state=
45 | [TOOL_SETTINGS]
46 | TS{8493B2ED-D539-4951-86C9-24D5331F0393}=-g
47 | TS{F9CE474D-6A6C-401D-A11E-BEE01B244D79}=-g -Wall
48 | TS{21A8AA9B-E75C-40B6-B3AE-9CBC16FF2EF9}=-o"$(BINDIR_)$(TARGETBASE).$(TARGETSUFFIX)" -Map="$(BINDIR_)$(TARGETBASE).map" --report-mem
49 | TS{45B3B6E0-6DAF-4E40-8D20-CFB1B620134D}=
50 | [INSTRUMENTED_TRACE]
51 | enable=0
52 | transport=0
53 | format=0
54 | [CUSTOM_BUILD]
55 | Pre-Build=
56 | Pre-BuildEnabled=1
57 | Post-Build=
58 | Post-BuildEnabled=1
59 |
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/ipu/README.md:
--------------------------------------------------------------------------------
1 | # IPU Tools
2 |
3 | The PIC24F supports a subset of the RFC1951 DEFLATE compression algorithm.
4 | These scripts can be used to convert an image to a compressed form that can be
5 | decompressed by the IPU.
6 |
7 | Note: Currently produces 2bpp images.
8 |
9 | ## Converting an image into a raw format for the PIC24F
10 |
11 | 1. First, take your image into GIMP (or equivalent). Use `Image -> Mode ->
12 | Indexed...` to set the image to only have 3 indexed colors.
13 | 2. Now use `File -> Export As...` to export it as a C source file (in my case,
14 | testimage.c). Make sure to uncheck "use glib types".
15 | 3. Modify makeraw.c to include the file you just saved. Compile makeraw.c
16 | (`gcc -o makeraw makeraw.c`) and run it, redirecting output (`./makeraw >
17 | rawimg`). It will print the index -> color mapping to stderr.
18 | 4. The image is now suitable for our framebuffer!
19 |
20 | ## Compressing
21 |
22 | If you want to see results immediately, you can skip this step and dump it
23 | right into the framebuffer.
24 |
25 | 1. Use deflate.pl to compress the raw image (`deflate.pl < rawimg >
26 | rawimg.cmp`).
27 |
28 | ## Putting it in the PIC24F
29 |
30 | 1. To get it into the source code, I made stringpack.pl to C array-ify a file.
31 | So we hit it with that (`./stringpack.pl < rawimg`), and copy-paste the output
32 | into our source file inbetween the braces:
33 | ```
34 | __eds__ uint8_t gfx_compressed[] __attribute__((space(eds))) = {
35 | // HERE!
36 | };
37 | ```
38 | 2. Now it's ready for the IPU to decompress it onto the framebuffer, or
39 | anywhere else.
40 |
41 |
--------------------------------------------------------------------------------
/L1Demo-asm-example/L1Demo-asm.mcp:
--------------------------------------------------------------------------------
1 | [HEADER]
2 | magic_cookie={66E99B07-E706-4689-9E80-9B2582898A13}
3 | file_version=1.0
4 | device=PIC24FJ256DA206
5 | [PATH_INFO]
6 | BuildDirPolicy=BuildDirIsProjectDir
7 | dir_src=
8 | dir_bin=
9 | dir_tmp=
10 | dir_sin=
11 | dir_inc=
12 | dir_lib=
13 | dir_lkr=
14 | [CAT_FILTERS]
15 | filter_src=*.s;*.c
16 | filter_inc=*.h;*.inc
17 | filter_obj=*.o
18 | filter_lib=*.a
19 | filter_lkr=*.gld
20 | [CAT_SUBFOLDERS]
21 | subfolder_src=
22 | subfolder_inc=
23 | subfolder_obj=
24 | subfolder_lib=
25 | subfolder_lkr=
26 | [FILE_SUBFOLDERS]
27 | file_000=.
28 | file_001=.
29 | file_002=.
30 | file_003=.
31 | file_004=.
32 | [GENERATED_FILES]
33 | file_000=no
34 | file_001=no
35 | file_002=no
36 | file_003=no
37 | file_004=no
38 | [OTHER_FILES]
39 | file_000=no
40 | file_001=no
41 | file_002=no
42 | file_003=no
43 | file_004=no
44 | [FILE_INFO]
45 | file_000=L1Demo-sam.s
46 | file_001=C:\Program Files\Microchip\MPLAB ASM30 Suite\Support\PIC24F\inc\p24FJ256DA206.inc
47 | file_002=macros.inc
48 | file_003=Fonts.inc
49 | file_004=C:\Program Files\Microchip\MPLAB ASM30 Suite\Support\PIC24F\gld\p24FJ256DA206.gld
50 | [SUITE_INFO]
51 | suite_guid={479DDE59-4D56-455E-855E-FFF59A3DB57E}
52 | suite_state=
53 | [TOOL_SETTINGS]
54 | TS{7D9C6ECE-785D-44CB-BA22-17BF2E119622}=-g
55 | TS{25AC22BD-2378-4FDB-BFB6-7345A15512D3}=-g -Wall
56 | TS{7DAC9A1D-4C45-45D6-B25A-D117C74E8F5A}=-o"$(BINDIR_)$(TARGETBASE).$(TARGETSUFFIX)" -Map="$(BINDIR_)$(TARGETBASE).map" --report-mem
57 | TS{509E5861-1E2A-483B-8B6B-CA8DB7F2DD78}=
58 | [INSTRUMENTED_TRACE]
59 | enable=0
60 | transport=0
61 | format=0
62 | [CUSTOM_BUILD]
63 | Pre-Build=
64 | Pre-BuildEnabled=1
65 | Post-Build=
66 | Post-BuildEnabled=1
67 |
--------------------------------------------------------------------------------
/L1Demo-asm-Leo_audio/L1Demo-asm/L1Demo-asm.mcp:
--------------------------------------------------------------------------------
1 | [HEADER]
2 | magic_cookie={66E99B07-E706-4689-9E80-9B2582898A13}
3 | file_version=1.0
4 | device=PIC24FJ256DA206
5 | [PATH_INFO]
6 | BuildDirPolicy=BuildDirIsProjectDir
7 | dir_src=
8 | dir_bin=
9 | dir_tmp=
10 | dir_sin=
11 | dir_inc=
12 | dir_lib=
13 | dir_lkr=
14 | [CAT_FILTERS]
15 | filter_src=*.s;*.c
16 | filter_inc=*.h;*.inc
17 | filter_obj=*.o
18 | filter_lib=*.a
19 | filter_lkr=*.gld
20 | [CAT_SUBFOLDERS]
21 | subfolder_src=
22 | subfolder_inc=
23 | subfolder_obj=
24 | subfolder_lib=
25 | subfolder_lkr=
26 | [FILE_SUBFOLDERS]
27 | file_000=.
28 | file_001=.
29 | file_002=.
30 | file_003=.
31 | file_004=.
32 | [GENERATED_FILES]
33 | file_000=no
34 | file_001=no
35 | file_002=no
36 | file_003=no
37 | file_004=no
38 | [OTHER_FILES]
39 | file_000=no
40 | file_001=no
41 | file_002=no
42 | file_003=no
43 | file_004=no
44 | [FILE_INFO]
45 | file_000=L1Demo-sam.s
46 | file_001=C:\Program Files\Microchip\MPLAB ASM30 Suite\Support\PIC24F\inc\p24FJ256DA206.inc
47 | file_002=macros.inc
48 | file_003=Fonts.inc
49 | file_004=C:\Program Files\Microchip\MPLAB ASM30 Suite\Support\PIC24F\gld\p24FJ256DA206.gld
50 | [SUITE_INFO]
51 | suite_guid={479DDE59-4D56-455E-855E-FFF59A3DB57E}
52 | suite_state=
53 | [TOOL_SETTINGS]
54 | TS{7D9C6ECE-785D-44CB-BA22-17BF2E119622}=-g
55 | TS{25AC22BD-2378-4FDB-BFB6-7345A15512D3}=-g -Wall
56 | TS{7DAC9A1D-4C45-45D6-B25A-D117C74E8F5A}=-o"$(BINDIR_)$(TARGETBASE).$(TARGETSUFFIX)" -Map="$(BINDIR_)$(TARGETBASE).map" --report-mem
57 | TS{509E5861-1E2A-483B-8B6B-CA8DB7F2DD78}=
58 | [INSTRUMENTED_TRACE]
59 | enable=0
60 | transport=0
61 | format=0
62 | [CUSTOM_BUILD]
63 | Pre-Build=
64 | Pre-BuildEnabled=1
65 | Post-Build=
66 | Post-BuildEnabled=1
67 |
--------------------------------------------------------------------------------
/L1Demo-asm-example/L1Demo-asm.X/nbproject/Package-default.bash:
--------------------------------------------------------------------------------
1 | #!/bin/bash -x
2 |
3 | #
4 | # Generated - do not edit!
5 | #
6 |
7 | # Macros
8 | TOP=`pwd`
9 | CND_CONF=default
10 | CND_DISTDIR=dist
11 | TMPDIR=build/${CND_CONF}/${IMAGE_TYPE}/tmp-packaging
12 | TMPDIRNAME=tmp-packaging
13 | OUTPUT_PATH=dist/${CND_CONF}/${IMAGE_TYPE}/L1Demo-asm.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}
14 | OUTPUT_BASENAME=L1Demo-asm.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}
15 | PACKAGE_TOP_DIR=l1demo-asm.x/
16 |
17 | # Functions
18 | function checkReturnCode
19 | {
20 | rc=$?
21 | if [ $rc != 0 ]
22 | then
23 | exit $rc
24 | fi
25 | }
26 | function makeDirectory
27 | # $1 directory path
28 | # $2 permission (optional)
29 | {
30 | mkdir -p "$1"
31 | checkReturnCode
32 | if [ "$2" != "" ]
33 | then
34 | chmod $2 "$1"
35 | checkReturnCode
36 | fi
37 | }
38 | function copyFileToTmpDir
39 | # $1 from-file path
40 | # $2 to-file path
41 | # $3 permission
42 | {
43 | cp "$1" "$2"
44 | checkReturnCode
45 | if [ "$3" != "" ]
46 | then
47 | chmod $3 "$2"
48 | checkReturnCode
49 | fi
50 | }
51 |
52 | # Setup
53 | cd "${TOP}"
54 | mkdir -p ${CND_DISTDIR}/${CND_CONF}/package
55 | rm -rf ${TMPDIR}
56 | mkdir -p ${TMPDIR}
57 |
58 | # Copy files and create directories and links
59 | cd "${TOP}"
60 | makeDirectory ${TMPDIR}/l1demo-asm.x/bin
61 | copyFileToTmpDir "${OUTPUT_PATH}" "${TMPDIR}/${PACKAGE_TOP_DIR}bin/${OUTPUT_BASENAME}" 0755
62 |
63 |
64 | # Generate tar file
65 | cd "${TOP}"
66 | rm -f ${CND_DISTDIR}/${CND_CONF}/package/l1demo-asm.x.tar
67 | cd ${TMPDIR}
68 | tar -vcf ../../../../${CND_DISTDIR}/${CND_CONF}/package/l1demo-asm.x.tar *
69 | checkReturnCode
70 |
71 | # Cleanup
72 | cd "${TOP}"
73 | rm -rf ${TMPDIR}
74 |
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/nbproject/Package-default.bash:
--------------------------------------------------------------------------------
1 | #!/bin/bash -x
2 |
3 | #
4 | # Generated - do not edit!
5 | #
6 |
7 | # Macros
8 | TOP=`pwd`
9 | CND_CONF=default
10 | CND_DISTDIR=dist
11 | TMPDIR=build/${CND_CONF}/${IMAGE_TYPE}/tmp-packaging
12 | TMPDIRNAME=tmp-packaging
13 | OUTPUT_PATH=dist/${CND_CONF}/${IMAGE_TYPE}/L1DemoProto.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}
14 | OUTPUT_BASENAME=L1DemoProto.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}
15 | PACKAGE_TOP_DIR=l1demoproto.x/
16 |
17 | # Functions
18 | function checkReturnCode
19 | {
20 | rc=$?
21 | if [ $rc != 0 ]
22 | then
23 | exit $rc
24 | fi
25 | }
26 | function makeDirectory
27 | # $1 directory path
28 | # $2 permission (optional)
29 | {
30 | mkdir -p "$1"
31 | checkReturnCode
32 | if [ "$2" != "" ]
33 | then
34 | chmod $2 "$1"
35 | checkReturnCode
36 | fi
37 | }
38 | function copyFileToTmpDir
39 | # $1 from-file path
40 | # $2 to-file path
41 | # $3 permission
42 | {
43 | cp "$1" "$2"
44 | checkReturnCode
45 | if [ "$3" != "" ]
46 | then
47 | chmod $3 "$2"
48 | checkReturnCode
49 | fi
50 | }
51 |
52 | # Setup
53 | cd "${TOP}"
54 | mkdir -p ${CND_DISTDIR}/${CND_CONF}/package
55 | rm -rf ${TMPDIR}
56 | mkdir -p ${TMPDIR}
57 |
58 | # Copy files and create directories and links
59 | cd "${TOP}"
60 | makeDirectory ${TMPDIR}/l1demoproto.x/bin
61 | copyFileToTmpDir "${OUTPUT_PATH}" "${TMPDIR}/${PACKAGE_TOP_DIR}bin/${OUTPUT_BASENAME}" 0755
62 |
63 |
64 | # Generate tar file
65 | cd "${TOP}"
66 | rm -f ${CND_DISTDIR}/${CND_CONF}/package/l1demoproto.x.tar
67 | cd ${TMPDIR}
68 | tar -vcf ../../../../${CND_DISTDIR}/${CND_CONF}/package/l1demoproto.x.tar *
69 | checkReturnCode
70 |
71 | # Cleanup
72 | cd "${TOP}"
73 | rm -rf ${TMPDIR}
74 |
--------------------------------------------------------------------------------
/L1Demo-asm-Leo_audio/L1Demo-asm/L1Demo-asm.X/nbproject/Package-default.bash:
--------------------------------------------------------------------------------
1 | #!/bin/bash -x
2 |
3 | #
4 | # Generated - do not edit!
5 | #
6 |
7 | # Macros
8 | TOP=`pwd`
9 | CND_CONF=default
10 | CND_DISTDIR=dist
11 | TMPDIR=build/${CND_CONF}/${IMAGE_TYPE}/tmp-packaging
12 | TMPDIRNAME=tmp-packaging
13 | OUTPUT_PATH=dist/${CND_CONF}/${IMAGE_TYPE}/L1Demo-asm.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}
14 | OUTPUT_BASENAME=L1Demo-asm.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}
15 | PACKAGE_TOP_DIR=l1demo-asm.x/
16 |
17 | # Functions
18 | function checkReturnCode
19 | {
20 | rc=$?
21 | if [ $rc != 0 ]
22 | then
23 | exit $rc
24 | fi
25 | }
26 | function makeDirectory
27 | # $1 directory path
28 | # $2 permission (optional)
29 | {
30 | mkdir -p "$1"
31 | checkReturnCode
32 | if [ "$2" != "" ]
33 | then
34 | chmod $2 "$1"
35 | checkReturnCode
36 | fi
37 | }
38 | function copyFileToTmpDir
39 | # $1 from-file path
40 | # $2 to-file path
41 | # $3 permission
42 | {
43 | cp "$1" "$2"
44 | checkReturnCode
45 | if [ "$3" != "" ]
46 | then
47 | chmod $3 "$2"
48 | checkReturnCode
49 | fi
50 | }
51 |
52 | # Setup
53 | cd "${TOP}"
54 | mkdir -p ${CND_DISTDIR}/${CND_CONF}/package
55 | rm -rf ${TMPDIR}
56 | mkdir -p ${TMPDIR}
57 |
58 | # Copy files and create directories and links
59 | cd "${TOP}"
60 | makeDirectory ${TMPDIR}/l1demo-asm.x/bin
61 | copyFileToTmpDir "${OUTPUT_PATH}" "${TMPDIR}/${PACKAGE_TOP_DIR}bin/${OUTPUT_BASENAME}" 0755
62 |
63 |
64 | # Generate tar file
65 | cd "${TOP}"
66 | rm -f ${CND_DISTDIR}/${CND_CONF}/package/l1demo-asm.x.tar
67 | cd ${TMPDIR}
68 | tar -vcf ../../../../${CND_DISTDIR}/${CND_CONF}/package/l1demo-asm.x.tar *
69 | checkReturnCode
70 |
71 | # Cleanup
72 | cd "${TOP}"
73 | rm -rf ${TMPDIR}
74 |
--------------------------------------------------------------------------------
/L1Demo-asm-example_v8/L1Demo-asm.mcs:
--------------------------------------------------------------------------------
1 | [Header]
2 | MagicCookie={0b13fe8c-dfe0-40eb-8900-6712719559a7}
3 | Version=1.0
4 | [File000]
5 | Location=C:\Users\arko\Documents\GitHub\L1DemosceneBoard\L1Demo-asm-example_v8\L1Demo-sam.o
6 | Folder=Intermediary
7 | DeviceName=PIC24FJ256DA206
8 | LanguageToolSuiteID={9BCCB495-CD65-480A-BA76-63D8E78B117F}
9 | LanguageToolID={C6E07232-414F-4A0C-AF99-CD44E2B71960}
10 | LanguageToolLocation=C:\Program Files (x86)\Microchip\xc16\v1.21\bin\xc16-as.exe
11 | PPAD=$(BINDIR)||$(TMPDIR)||$(AINDIR)||$(INCDIR)||$(LIBDIR)||$(LKRDIR)||
12 | SOLK=|L1Demo-sam.s||||||||
13 | SuiteArgsString=
14 | ToolArgsString=-g
15 | TraceCmdString=
16 | DebugOptions=
17 | [File001]
18 | Location=C:\Users\arko\Documents\GitHub\L1DemosceneBoard\L1Demo-asm-example_v8\L1Demo-asm.cof
19 | Folder=Output
20 | DeviceName=PIC24FJ256DA206
21 | LanguageToolSuiteID={9BCCB495-CD65-480A-BA76-63D8E78B117F}
22 | LanguageToolID={6836D8CA-42BB-48FB-9E77-3F0AA8005073}
23 | LanguageToolLocation=C:\Program Files (x86)\Microchip\xc16\v1.21\bin\xc16-ld.exe
24 | PPAD=$(BINDIR)||$(TMPDIR)||$(AINDIR)||$(INCDIR)||$(LIBDIR)||$(LKRDIR)||
25 | SOLK=|L1Demo-sam.s||||||||
26 | SuiteArgsString=
27 | ToolArgsString=-o"$(BINDIR_)$(TARGETBASE).$(TARGETSUFFIX)" -Map="$(BINDIR_)$(TARGETBASE).map" --report-mem
28 | TraceCmdString=
29 | DebugOptions=
30 | [File002]
31 | Location=C:\Users\arko\Documents\GitHub\L1DemosceneBoard\L1Demo-asm-example_v8\L1Demo-asm.hex
32 | Folder=Output
33 | DeviceName=PIC24FJ256DA206
34 | LanguageToolSuiteID={9BCCB495-CD65-480A-BA76-63D8E78B117F}
35 | LanguageToolID={6836D8CA-42BB-48FB-9E77-3F0AA8005073}
36 | LanguageToolLocation=C:\Program Files (x86)\Microchip\xc16\v1.21\bin\xc16-ld.exe
37 | PPAD=$(BINDIR)||$(TMPDIR)||$(AINDIR)||$(INCDIR)||$(LIBDIR)||$(LKRDIR)||
38 | SOLK=|L1Demo-sam.s||||||||
39 | SuiteArgsString=
40 | ToolArgsString=-o"$(BINDIR_)$(TARGETBASE).$(TARGETSUFFIX)" -Map="$(BINDIR_)$(TARGETBASE).map" --report-mem
41 | TraceCmdString=
42 | DebugOptions=
43 | [TOOL_LOC_STAMPS]
44 | tool_loc{C6E07232-414F-4A0C-AF99-CD44E2B71960}=C:\Program Files (x86)\Microchip\xc16\v1.21\bin\xc16-as.exe
45 | tool_loc{6836D8CA-42BB-48FB-9E77-3F0AA8005073}=C:\Program Files (x86)\Microchip\xc16\v1.21\bin\xc16-ld.exe
46 |
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/nbproject/Makefile-local-default.mk:
--------------------------------------------------------------------------------
1 | #
2 | # Generated Makefile - do not edit!
3 | #
4 | #
5 | # This file contains information about the location of compilers and other tools.
6 | # If you commmit this file into your revision control server, you will be able to
7 | # to checkout the project and build it from the command line with make. However,
8 | # if more than one person works on the same project, then this file might show
9 | # conflicts since different users are bound to have compilers in different places.
10 | # In that case you might choose to not commit this file and let MPLAB X recreate this file
11 | # for each user. The disadvantage of not commiting this file is that you must run MPLAB X at
12 | # least once so the file gets created and the project can be built. Finally, you can also
13 | # avoid using this file at all if you are only building from the command line with make.
14 | # You can invoke make with the values of the macros:
15 | # $ makeMP_CC="/opt/microchip/mplabc30/v3.30c/bin/pic30-gcc" ...
16 | #
17 | SHELL=cmd.exe
18 | PATH_TO_IDE_BIN=C:/Program Files (x86)/Microchip/MPLABX/mplab_ide/mplab_ide/modules/../../bin/
19 | # Adding MPLAB X bin directory to path.
20 | PATH:=C:/Program Files (x86)/Microchip/MPLABX/mplab_ide/mplab_ide/modules/../../bin/:$(PATH)
21 | # Path to java used to run MPLAB X when this makefile was created
22 | MP_JAVA_PATH="C:\Program Files (x86)\Microchip\MPLABX\sys\java\jre1.7.0_25-windows-x64\java-windows/bin/"
23 | OS_CURRENT="$(shell uname -s)"
24 | MP_CC="C:\Program Files (x86)\Microchip\xc16\v1.21\bin\xc16-gcc.exe"
25 | # MP_CPPC is not defined
26 | # MP_BC is not defined
27 | MP_AS="C:\Program Files (x86)\Microchip\xc16\v1.21\bin\xc16-as.exe"
28 | # MP_LD is not defined
29 | MP_AR="C:\Program Files (x86)\Microchip\xc16\v1.21\bin\xc16-ar.exe"
30 | DEP_GEN=${MP_JAVA_PATH}java -jar "C:/Program Files (x86)/Microchip/MPLABX/mplab_ide/mplab_ide/modules/../../bin/extractobjectdependencies.jar"
31 | MP_CC_DIR="C:\Program Files (x86)\Microchip\xc16\v1.21\bin"
32 | # MP_CPPC_DIR is not defined
33 | # MP_BC_DIR is not defined
34 | MP_AS_DIR="C:\Program Files (x86)\Microchip\xc16\v1.21\bin"
35 | # MP_LD_DIR is not defined
36 | MP_AR_DIR="C:\Program Files (x86)\Microchip\xc16\v1.21\bin"
37 | # MP_BC_DIR is not defined
38 |
--------------------------------------------------------------------------------
/L1Demo-asm-example/L1Demo-asm.X/nbproject/Makefile-local-default.mk:
--------------------------------------------------------------------------------
1 | #
2 | # Generated Makefile - do not edit!
3 | #
4 | #
5 | # This file contains information about the location of compilers and other tools.
6 | # If you commmit this file into your revision control server, you will be able to
7 | # to checkout the project and build it from the command line with make. However,
8 | # if more than one person works on the same project, then this file might show
9 | # conflicts since different users are bound to have compilers in different places.
10 | # In that case you might choose to not commit this file and let MPLAB X recreate this file
11 | # for each user. The disadvantage of not commiting this file is that you must run MPLAB X at
12 | # least once so the file gets created and the project can be built. Finally, you can also
13 | # avoid using this file at all if you are only building from the command line with make.
14 | # You can invoke make with the values of the macros:
15 | # $ makeMP_CC="/opt/microchip/mplabc30/v3.30c/bin/pic30-gcc" ...
16 | #
17 | SHELL=cmd.exe
18 | PATH_TO_IDE_BIN=C:/Program Files (x86)/Microchip/MPLABX/mplab_ide/mplab_ide/modules/../../bin/
19 | # Adding MPLAB X bin directory to path.
20 | PATH:=C:/Program Files (x86)/Microchip/MPLABX/mplab_ide/mplab_ide/modules/../../bin/:$(PATH)
21 | # Path to java used to run MPLAB X when this makefile was created
22 | MP_JAVA_PATH="C:\Program Files (x86)\Microchip\MPLABX\sys\java\jre1.7.0_25-windows-x64\java-windows/bin/"
23 | OS_CURRENT="$(shell uname -s)"
24 | MP_CC="C:\Program Files (x86)\Microchip\xc16\v1.21\bin\xc16-gcc.exe"
25 | # MP_CPPC is not defined
26 | # MP_BC is not defined
27 | MP_AS="C:\Program Files (x86)\Microchip\xc16\v1.21\bin\xc16-as.exe"
28 | # MP_LD is not defined
29 | MP_AR="C:\Program Files (x86)\Microchip\xc16\v1.21\bin\xc16-ar.exe"
30 | DEP_GEN=${MP_JAVA_PATH}java -jar "C:/Program Files (x86)/Microchip/MPLABX/mplab_ide/mplab_ide/modules/../../bin/extractobjectdependencies.jar"
31 | MP_CC_DIR="C:\Program Files (x86)\Microchip\xc16\v1.21\bin"
32 | # MP_CPPC_DIR is not defined
33 | # MP_BC_DIR is not defined
34 | MP_AS_DIR="C:\Program Files (x86)\Microchip\xc16\v1.21\bin"
35 | # MP_LD_DIR is not defined
36 | MP_AR_DIR="C:\Program Files (x86)\Microchip\xc16\v1.21\bin"
37 | # MP_BC_DIR is not defined
38 |
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/nbproject/Makefile-impl.mk:
--------------------------------------------------------------------------------
1 | #
2 | # Generated Makefile - do not edit!
3 | #
4 | # Edit the Makefile in the project folder instead (../Makefile). Each target
5 | # has a pre- and a post- target defined where you can add customization code.
6 | #
7 | # This makefile implements macros and targets common to all configurations.
8 | #
9 | # NOCDDL
10 |
11 |
12 | # Building and Cleaning subprojects are done by default, but can be controlled with the SUB
13 | # macro. If SUB=no, subprojects will not be built or cleaned. The following macro
14 | # statements set BUILD_SUB-CONF and CLEAN_SUB-CONF to .build-reqprojects-conf
15 | # and .clean-reqprojects-conf unless SUB has the value 'no'
16 | SUB_no=NO
17 | SUBPROJECTS=${SUB_${SUB}}
18 | BUILD_SUBPROJECTS_=.build-subprojects
19 | BUILD_SUBPROJECTS_NO=
20 | BUILD_SUBPROJECTS=${BUILD_SUBPROJECTS_${SUBPROJECTS}}
21 | CLEAN_SUBPROJECTS_=.clean-subprojects
22 | CLEAN_SUBPROJECTS_NO=
23 | CLEAN_SUBPROJECTS=${CLEAN_SUBPROJECTS_${SUBPROJECTS}}
24 |
25 |
26 | # Project Name
27 | PROJECTNAME=L1DemoProto.X
28 |
29 | # Active Configuration
30 | DEFAULTCONF=default
31 | CONF=${DEFAULTCONF}
32 |
33 | # All Configurations
34 | ALLCONFS=default
35 |
36 |
37 | # build
38 | .build-impl: .build-pre
39 | ${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .build-conf
40 |
41 |
42 | # clean
43 | .clean-impl: .clean-pre
44 | ${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .clean-conf
45 |
46 | # clobber
47 | .clobber-impl: .clobber-pre .depcheck-impl
48 | ${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=default clean
49 |
50 |
51 |
52 | # all
53 | .all-impl: .all-pre .depcheck-impl
54 | ${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=default build
55 |
56 |
57 |
58 | # dependency checking support
59 | .depcheck-impl:
60 | # @echo "# This code depends on make tool being used" >.dep.inc
61 | # @if [ -n "${MAKE_VERSION}" ]; then \
62 | # echo "DEPFILES=\$$(wildcard \$$(addsuffix .d, \$${OBJECTFILES}))" >>.dep.inc; \
63 | # echo "ifneq (\$${DEPFILES},)" >>.dep.inc; \
64 | # echo "include \$${DEPFILES}" >>.dep.inc; \
65 | # echo "endif" >>.dep.inc; \
66 | # else \
67 | # echo ".KEEP_STATE:" >>.dep.inc; \
68 | # echo ".KEEP_STATE_FILE:.make.state.\$${CONF}" >>.dep.inc; \
69 | # fi
70 |
--------------------------------------------------------------------------------
/L1Demo-asm-example/L1Demo-asm.X/nbproject/Makefile-impl.mk:
--------------------------------------------------------------------------------
1 | #
2 | # Generated Makefile - do not edit!
3 | #
4 | # Edit the Makefile in the project folder instead (../Makefile). Each target
5 | # has a pre- and a post- target defined where you can add customization code.
6 | #
7 | # This makefile implements macros and targets common to all configurations.
8 | #
9 | # NOCDDL
10 |
11 |
12 | # Building and Cleaning subprojects are done by default, but can be controlled with the SUB
13 | # macro. If SUB=no, subprojects will not be built or cleaned. The following macro
14 | # statements set BUILD_SUB-CONF and CLEAN_SUB-CONF to .build-reqprojects-conf
15 | # and .clean-reqprojects-conf unless SUB has the value 'no'
16 | SUB_no=NO
17 | SUBPROJECTS=${SUB_${SUB}}
18 | BUILD_SUBPROJECTS_=.build-subprojects
19 | BUILD_SUBPROJECTS_NO=
20 | BUILD_SUBPROJECTS=${BUILD_SUBPROJECTS_${SUBPROJECTS}}
21 | CLEAN_SUBPROJECTS_=.clean-subprojects
22 | CLEAN_SUBPROJECTS_NO=
23 | CLEAN_SUBPROJECTS=${CLEAN_SUBPROJECTS_${SUBPROJECTS}}
24 |
25 |
26 | # Project Name
27 | PROJECTNAME=L1Demo-asm.X
28 |
29 | # Active Configuration
30 | DEFAULTCONF=default
31 | CONF=${DEFAULTCONF}
32 |
33 | # All Configurations
34 | ALLCONFS=default
35 |
36 |
37 | # build
38 | .build-impl: .build-pre
39 | ${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .build-conf
40 |
41 |
42 | # clean
43 | .clean-impl: .clean-pre
44 | ${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .clean-conf
45 |
46 | # clobber
47 | .clobber-impl: .clobber-pre .depcheck-impl
48 | ${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=default clean
49 |
50 |
51 |
52 | # all
53 | .all-impl: .all-pre .depcheck-impl
54 | ${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=default build
55 |
56 |
57 |
58 | # dependency checking support
59 | .depcheck-impl:
60 | # @echo "# This code depends on make tool being used" >.dep.inc
61 | # @if [ -n "${MAKE_VERSION}" ]; then \
62 | # echo "DEPFILES=\$$(wildcard \$$(addsuffix .d, \$${OBJECTFILES}))" >>.dep.inc; \
63 | # echo "ifneq (\$${DEPFILES},)" >>.dep.inc; \
64 | # echo "include \$${DEPFILES}" >>.dep.inc; \
65 | # echo "endif" >>.dep.inc; \
66 | # else \
67 | # echo ".KEEP_STATE:" >>.dep.inc; \
68 | # echo ".KEEP_STATE_FILE:.make.state.\$${CONF}" >>.dep.inc; \
69 | # fi
70 |
--------------------------------------------------------------------------------
/L1Demo-asm-Leo_audio/L1Demo-asm/L1Demo-asm.X/nbproject/Makefile-local-default.mk:
--------------------------------------------------------------------------------
1 | #
2 | # Generated Makefile - do not edit!
3 | #
4 | #
5 | # This file contains information about the location of compilers and other tools.
6 | # If you commmit this file into your revision control server, you will be able to
7 | # to checkout the project and build it from the command line with make. However,
8 | # if more than one person works on the same project, then this file might show
9 | # conflicts since different users are bound to have compilers in different places.
10 | # In that case you might choose to not commit this file and let MPLAB X recreate this file
11 | # for each user. The disadvantage of not commiting this file is that you must run MPLAB X at
12 | # least once so the file gets created and the project can be built. Finally, you can also
13 | # avoid using this file at all if you are only building from the command line with make.
14 | # You can invoke make with the values of the macros:
15 | # $ makeMP_CC="/opt/microchip/mplabc30/v3.30c/bin/pic30-gcc" ...
16 | #
17 | SHELL=cmd.exe
18 | PATH_TO_IDE_BIN=C:/Program Files (x86)/Microchip/MPLABX/mplab_ide/mplab_ide/modules/../../bin/
19 | # Adding MPLAB X bin directory to path.
20 | PATH:=C:/Program Files (x86)/Microchip/MPLABX/mplab_ide/mplab_ide/modules/../../bin/:$(PATH)
21 | # Path to java used to run MPLAB X when this makefile was created
22 | MP_JAVA_PATH="C:\Program Files (x86)\Microchip\MPLABX\sys\java\jre1.7.0_25-windows-x64\java-windows/bin/"
23 | OS_CURRENT="$(shell uname -s)"
24 | MP_CC="C:\Program Files (x86)\Microchip\xc16\v1.21\bin\xc16-gcc.exe"
25 | # MP_CPPC is not defined
26 | # MP_BC is not defined
27 | MP_AS="C:\Program Files (x86)\Microchip\xc16\v1.21\bin\xc16-as.exe"
28 | # MP_LD is not defined
29 | MP_AR="C:\Program Files (x86)\Microchip\xc16\v1.21\bin\xc16-ar.exe"
30 | DEP_GEN=${MP_JAVA_PATH}java -jar "C:/Program Files (x86)/Microchip/MPLABX/mplab_ide/mplab_ide/modules/../../bin/extractobjectdependencies.jar"
31 | MP_CC_DIR="C:\Program Files (x86)\Microchip\xc16\v1.21\bin"
32 | # MP_CPPC_DIR is not defined
33 | # MP_BC_DIR is not defined
34 | MP_AS_DIR="C:\Program Files (x86)\Microchip\xc16\v1.21\bin"
35 | # MP_LD_DIR is not defined
36 | MP_AR_DIR="C:\Program Files (x86)\Microchip\xc16\v1.21\bin"
37 | # MP_BC_DIR is not defined
38 |
--------------------------------------------------------------------------------
/L1Demo-asm-Leo_audio/L1Demo-asm/L1Demo-asm.X/nbproject/Makefile-impl.mk:
--------------------------------------------------------------------------------
1 | #
2 | # Generated Makefile - do not edit!
3 | #
4 | # Edit the Makefile in the project folder instead (../Makefile). Each target
5 | # has a pre- and a post- target defined where you can add customization code.
6 | #
7 | # This makefile implements macros and targets common to all configurations.
8 | #
9 | # NOCDDL
10 |
11 |
12 | # Building and Cleaning subprojects are done by default, but can be controlled with the SUB
13 | # macro. If SUB=no, subprojects will not be built or cleaned. The following macro
14 | # statements set BUILD_SUB-CONF and CLEAN_SUB-CONF to .build-reqprojects-conf
15 | # and .clean-reqprojects-conf unless SUB has the value 'no'
16 | SUB_no=NO
17 | SUBPROJECTS=${SUB_${SUB}}
18 | BUILD_SUBPROJECTS_=.build-subprojects
19 | BUILD_SUBPROJECTS_NO=
20 | BUILD_SUBPROJECTS=${BUILD_SUBPROJECTS_${SUBPROJECTS}}
21 | CLEAN_SUBPROJECTS_=.clean-subprojects
22 | CLEAN_SUBPROJECTS_NO=
23 | CLEAN_SUBPROJECTS=${CLEAN_SUBPROJECTS_${SUBPROJECTS}}
24 |
25 |
26 | # Project Name
27 | PROJECTNAME=L1Demo-asm.X
28 |
29 | # Active Configuration
30 | DEFAULTCONF=default
31 | CONF=${DEFAULTCONF}
32 |
33 | # All Configurations
34 | ALLCONFS=default
35 |
36 |
37 | # build
38 | .build-impl: .build-pre
39 | ${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .build-conf
40 |
41 |
42 | # clean
43 | .clean-impl: .clean-pre
44 | ${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .clean-conf
45 |
46 | # clobber
47 | .clobber-impl: .clobber-pre .depcheck-impl
48 | ${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=default clean
49 |
50 |
51 |
52 | # all
53 | .all-impl: .all-pre .depcheck-impl
54 | ${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=default build
55 |
56 |
57 |
58 | # dependency checking support
59 | .depcheck-impl:
60 | # @echo "# This code depends on make tool being used" >.dep.inc
61 | # @if [ -n "${MAKE_VERSION}" ]; then \
62 | # echo "DEPFILES=\$$(wildcard \$$(addsuffix .d, \$${OBJECTFILES}))" >>.dep.inc; \
63 | # echo "ifneq (\$${DEPFILES},)" >>.dep.inc; \
64 | # echo "include \$${DEPFILES}" >>.dep.inc; \
65 | # echo "endif" >>.dep.inc; \
66 | # else \
67 | # echo ".KEEP_STATE:" >>.dep.inc; \
68 | # echo ".KEEP_STATE_FILE:.make.state.\$${CONF}" >>.dep.inc; \
69 | # fi
70 |
--------------------------------------------------------------------------------
/L1Demo-asm-Leo_v8_audio/L1Demo-asm/L1Demo-asm.mcs:
--------------------------------------------------------------------------------
1 | [Header]
2 | MagicCookie={0b13fe8c-dfe0-40eb-8900-6712719559a7}
3 | Version=1.0
4 | [File000]
5 | Location=C:\Users\arko\Desktop\Tesla\nsl\LayerOne_2015\Demoscene\Code\L1Demo-asm-Leo_v8_audio\L1Demo-asm\L1Demo-sam.o
6 | Folder=Intermediary
7 | DeviceName=PIC24FJ256DA206
8 | LanguageToolSuiteID={9BCCB495-CD65-480A-BA76-63D8E78B117F}
9 | LanguageToolID={C6E07232-414F-4A0C-AF99-CD44E2B71960}
10 | LanguageToolLocation=C:\Program Files (x86)\Microchip\xc16\v1.21\bin\xc16-as.exe
11 | PPAD=$(BINDIR)||$(TMPDIR)||$(AINDIR)||$(INCDIR)||$(LIBDIR)||$(LKRDIR)||
12 | SOLK=|L1Demo-sam.s||||||||
13 | SuiteArgsString=
14 | ToolArgsString=-g
15 | TraceCmdString=
16 | DebugOptions=
17 | [File001]
18 | Location=C:\Users\arko\Desktop\Tesla\nsl\LayerOne_2015\Demoscene\Code\L1Demo-asm-Leo_v8_audio\L1Demo-asm\L1Demo-asm.cof
19 | Folder=Output
20 | DeviceName=PIC24FJ256DA206
21 | LanguageToolSuiteID={9BCCB495-CD65-480A-BA76-63D8E78B117F}
22 | LanguageToolID={6836D8CA-42BB-48FB-9E77-3F0AA8005073}
23 | LanguageToolLocation=C:\Program Files (x86)\Microchip\xc16\v1.21\bin\xc16-ld.exe
24 | PPAD=$(BINDIR)||$(TMPDIR)||$(AINDIR)||$(INCDIR)||$(LIBDIR)||$(LKRDIR)||
25 | SOLK=|L1Demo-sam.s||||||||
26 | SuiteArgsString=
27 | ToolArgsString=-o"$(BINDIR_)$(TARGETBASE).$(TARGETSUFFIX)" -Map="$(BINDIR_)$(TARGETBASE).map" --report-mem
28 | TraceCmdString=
29 | DebugOptions=
30 | [File002]
31 | Location=C:\Users\arko\Desktop\Tesla\nsl\LayerOne_2015\Demoscene\Code\L1Demo-asm-Leo_v8_audio\L1Demo-asm\L1Demo-asm.hex
32 | Folder=Output
33 | DeviceName=PIC24FJ256DA206
34 | LanguageToolSuiteID={9BCCB495-CD65-480A-BA76-63D8E78B117F}
35 | LanguageToolID={6836D8CA-42BB-48FB-9E77-3F0AA8005073}
36 | LanguageToolLocation=C:\Program Files (x86)\Microchip\xc16\v1.21\bin\xc16-ld.exe
37 | PPAD=$(BINDIR)||$(TMPDIR)||$(AINDIR)||$(INCDIR)||$(LIBDIR)||$(LKRDIR)||
38 | SOLK=|L1Demo-sam.s||||||||
39 | SuiteArgsString=
40 | ToolArgsString=-o"$(BINDIR_)$(TARGETBASE).$(TARGETSUFFIX)" -Map="$(BINDIR_)$(TARGETBASE).map" --report-mem
41 | TraceCmdString=
42 | DebugOptions=
43 | [TOOL_LOC_STAMPS]
44 | tool_loc{C6E07232-414F-4A0C-AF99-CD44E2B71960}=C:\Program Files (x86)\Microchip\xc16\v1.21\bin\xc16-as.exe
45 | tool_loc{6836D8CA-42BB-48FB-9E77-3F0AA8005073}=C:\Program Files (x86)\Microchip\xc16\v1.21\bin\xc16-ld.exe
46 |
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/Makefile:
--------------------------------------------------------------------------------
1 | #
2 | # There exist several targets which are by default empty and which can be
3 | # used for execution of your targets. These targets are usually executed
4 | # before and after some main targets. They are:
5 | #
6 | # .build-pre: called before 'build' target
7 | # .build-post: called after 'build' target
8 | # .clean-pre: called before 'clean' target
9 | # .clean-post: called after 'clean' target
10 | # .clobber-pre: called before 'clobber' target
11 | # .clobber-post: called after 'clobber' target
12 | # .all-pre: called before 'all' target
13 | # .all-post: called after 'all' target
14 | # .help-pre: called before 'help' target
15 | # .help-post: called after 'help' target
16 | #
17 | # Targets beginning with '.' are not intended to be called on their own.
18 | #
19 | # Main targets can be executed directly, and they are:
20 | #
21 | # build build a specific configuration
22 | # clean remove built files from a configuration
23 | # clobber remove all built files
24 | # all build all configurations
25 | # help print help mesage
26 | #
27 | # Targets .build-impl, .clean-impl, .clobber-impl, .all-impl, and
28 | # .help-impl are implemented in nbproject/makefile-impl.mk.
29 | #
30 | # Available make variables:
31 | #
32 | # CND_BASEDIR base directory for relative paths
33 | # CND_DISTDIR default top distribution directory (build artifacts)
34 | # CND_BUILDDIR default top build directory (object files, ...)
35 | # CONF name of current configuration
36 | # CND_ARTIFACT_DIR_${CONF} directory of build artifact (current configuration)
37 | # CND_ARTIFACT_NAME_${CONF} name of build artifact (current configuration)
38 | # CND_ARTIFACT_PATH_${CONF} path to build artifact (current configuration)
39 | # CND_PACKAGE_DIR_${CONF} directory of package (current configuration)
40 | # CND_PACKAGE_NAME_${CONF} name of package (current configuration)
41 | # CND_PACKAGE_PATH_${CONF} path to package (current configuration)
42 | #
43 | # NOCDDL
44 |
45 |
46 | # Environment
47 | MKDIR=mkdir
48 | CP=cp
49 | CCADMIN=CCadmin
50 | RANLIB=ranlib
51 |
52 |
53 | # build
54 | build: .build-post
55 |
56 | .build-pre:
57 | # Add your pre 'build' code here...
58 |
59 | .build-post: .build-impl
60 | # Add your post 'build' code here...
61 |
62 |
63 | # clean
64 | clean: .clean-post
65 |
66 | .clean-pre:
67 | # Add your pre 'clean' code here...
68 | # WARNING: the IDE does not call this target since it takes a long time to
69 | # simply run make. Instead, the IDE removes the configuration directories
70 | # under build and dist directly without calling make.
71 | # This target is left here so people can do a clean when running a clean
72 | # outside the IDE.
73 |
74 | .clean-post: .clean-impl
75 | # Add your post 'clean' code here...
76 |
77 |
78 | # clobber
79 | clobber: .clobber-post
80 |
81 | .clobber-pre:
82 | # Add your pre 'clobber' code here...
83 |
84 | .clobber-post: .clobber-impl
85 | # Add your post 'clobber' code here...
86 |
87 |
88 | # all
89 | all: .all-post
90 |
91 | .all-pre:
92 | # Add your pre 'all' code here...
93 |
94 | .all-post: .all-impl
95 | # Add your post 'all' code here...
96 |
97 |
98 | # help
99 | help: .help-post
100 |
101 | .help-pre:
102 | # Add your pre 'help' code here...
103 |
104 | .help-post: .help-impl
105 | # Add your post 'help' code here...
106 |
107 |
108 |
109 | # include project implementation makefile
110 | include nbproject/Makefile-impl.mk
111 |
112 | # include project make variables
113 | include nbproject/Makefile-variables.mk
114 |
--------------------------------------------------------------------------------
/L1Demo-asm-example/L1Demo-asm.X/Makefile:
--------------------------------------------------------------------------------
1 | #
2 | # There exist several targets which are by default empty and which can be
3 | # used for execution of your targets. These targets are usually executed
4 | # before and after some main targets. They are:
5 | #
6 | # .build-pre: called before 'build' target
7 | # .build-post: called after 'build' target
8 | # .clean-pre: called before 'clean' target
9 | # .clean-post: called after 'clean' target
10 | # .clobber-pre: called before 'clobber' target
11 | # .clobber-post: called after 'clobber' target
12 | # .all-pre: called before 'all' target
13 | # .all-post: called after 'all' target
14 | # .help-pre: called before 'help' target
15 | # .help-post: called after 'help' target
16 | #
17 | # Targets beginning with '.' are not intended to be called on their own.
18 | #
19 | # Main targets can be executed directly, and they are:
20 | #
21 | # build build a specific configuration
22 | # clean remove built files from a configuration
23 | # clobber remove all built files
24 | # all build all configurations
25 | # help print help mesage
26 | #
27 | # Targets .build-impl, .clean-impl, .clobber-impl, .all-impl, and
28 | # .help-impl are implemented in nbproject/makefile-impl.mk.
29 | #
30 | # Available make variables:
31 | #
32 | # CND_BASEDIR base directory for relative paths
33 | # CND_DISTDIR default top distribution directory (build artifacts)
34 | # CND_BUILDDIR default top build directory (object files, ...)
35 | # CONF name of current configuration
36 | # CND_ARTIFACT_DIR_${CONF} directory of build artifact (current configuration)
37 | # CND_ARTIFACT_NAME_${CONF} name of build artifact (current configuration)
38 | # CND_ARTIFACT_PATH_${CONF} path to build artifact (current configuration)
39 | # CND_PACKAGE_DIR_${CONF} directory of package (current configuration)
40 | # CND_PACKAGE_NAME_${CONF} name of package (current configuration)
41 | # CND_PACKAGE_PATH_${CONF} path to package (current configuration)
42 | #
43 | # NOCDDL
44 |
45 |
46 | # Environment
47 | MKDIR=mkdir
48 | CP=cp
49 | CCADMIN=CCadmin
50 | RANLIB=ranlib
51 |
52 |
53 | # build
54 | build: .build-post
55 |
56 | .build-pre:
57 | # Add your pre 'build' code here...
58 |
59 | .build-post: .build-impl
60 | # Add your post 'build' code here...
61 |
62 |
63 | # clean
64 | clean: .clean-post
65 |
66 | .clean-pre:
67 | # Add your pre 'clean' code here...
68 | # WARNING: the IDE does not call this target since it takes a long time to
69 | # simply run make. Instead, the IDE removes the configuration directories
70 | # under build and dist directly without calling make.
71 | # This target is left here so people can do a clean when running a clean
72 | # outside the IDE.
73 |
74 | .clean-post: .clean-impl
75 | # Add your post 'clean' code here...
76 |
77 |
78 | # clobber
79 | clobber: .clobber-post
80 |
81 | .clobber-pre:
82 | # Add your pre 'clobber' code here...
83 |
84 | .clobber-post: .clobber-impl
85 | # Add your post 'clobber' code here...
86 |
87 |
88 | # all
89 | all: .all-post
90 |
91 | .all-pre:
92 | # Add your pre 'all' code here...
93 |
94 | .all-post: .all-impl
95 | # Add your post 'all' code here...
96 |
97 |
98 | # help
99 | help: .help-post
100 |
101 | .help-pre:
102 | # Add your pre 'help' code here...
103 |
104 | .help-post: .help-impl
105 | # Add your post 'help' code here...
106 |
107 |
108 |
109 | # include project implementation makefile
110 | include nbproject/Makefile-impl.mk
111 |
112 | # include project make variables
113 | include nbproject/Makefile-variables.mk
114 |
--------------------------------------------------------------------------------
/L1Demo-asm-Leo_audio/L1Demo-asm/L1Demo-asm.X/Makefile:
--------------------------------------------------------------------------------
1 | #
2 | # There exist several targets which are by default empty and which can be
3 | # used for execution of your targets. These targets are usually executed
4 | # before and after some main targets. They are:
5 | #
6 | # .build-pre: called before 'build' target
7 | # .build-post: called after 'build' target
8 | # .clean-pre: called before 'clean' target
9 | # .clean-post: called after 'clean' target
10 | # .clobber-pre: called before 'clobber' target
11 | # .clobber-post: called after 'clobber' target
12 | # .all-pre: called before 'all' target
13 | # .all-post: called after 'all' target
14 | # .help-pre: called before 'help' target
15 | # .help-post: called after 'help' target
16 | #
17 | # Targets beginning with '.' are not intended to be called on their own.
18 | #
19 | # Main targets can be executed directly, and they are:
20 | #
21 | # build build a specific configuration
22 | # clean remove built files from a configuration
23 | # clobber remove all built files
24 | # all build all configurations
25 | # help print help mesage
26 | #
27 | # Targets .build-impl, .clean-impl, .clobber-impl, .all-impl, and
28 | # .help-impl are implemented in nbproject/makefile-impl.mk.
29 | #
30 | # Available make variables:
31 | #
32 | # CND_BASEDIR base directory for relative paths
33 | # CND_DISTDIR default top distribution directory (build artifacts)
34 | # CND_BUILDDIR default top build directory (object files, ...)
35 | # CONF name of current configuration
36 | # CND_ARTIFACT_DIR_${CONF} directory of build artifact (current configuration)
37 | # CND_ARTIFACT_NAME_${CONF} name of build artifact (current configuration)
38 | # CND_ARTIFACT_PATH_${CONF} path to build artifact (current configuration)
39 | # CND_PACKAGE_DIR_${CONF} directory of package (current configuration)
40 | # CND_PACKAGE_NAME_${CONF} name of package (current configuration)
41 | # CND_PACKAGE_PATH_${CONF} path to package (current configuration)
42 | #
43 | # NOCDDL
44 |
45 |
46 | # Environment
47 | MKDIR=mkdir
48 | CP=cp
49 | CCADMIN=CCadmin
50 | RANLIB=ranlib
51 |
52 |
53 | # build
54 | build: .build-post
55 |
56 | .build-pre:
57 | # Add your pre 'build' code here...
58 |
59 | .build-post: .build-impl
60 | # Add your post 'build' code here...
61 |
62 |
63 | # clean
64 | clean: .clean-post
65 |
66 | .clean-pre:
67 | # Add your pre 'clean' code here...
68 | # WARNING: the IDE does not call this target since it takes a long time to
69 | # simply run make. Instead, the IDE removes the configuration directories
70 | # under build and dist directly without calling make.
71 | # This target is left here so people can do a clean when running a clean
72 | # outside the IDE.
73 |
74 | .clean-post: .clean-impl
75 | # Add your post 'clean' code here...
76 |
77 |
78 | # clobber
79 | clobber: .clobber-post
80 |
81 | .clobber-pre:
82 | # Add your pre 'clobber' code here...
83 |
84 | .clobber-post: .clobber-impl
85 | # Add your post 'clobber' code here...
86 |
87 |
88 | # all
89 | all: .all-post
90 |
91 | .all-pre:
92 | # Add your pre 'all' code here...
93 |
94 | .all-post: .all-impl
95 | # Add your post 'all' code here...
96 |
97 |
98 | # help
99 | help: .help-post
100 |
101 | .help-pre:
102 | # Add your pre 'help' code here...
103 |
104 | .help-post: .help-impl
105 | # Add your post 'help' code here...
106 |
107 |
108 |
109 | # include project implementation makefile
110 | include nbproject/Makefile-impl.mk
111 |
112 | # include project make variables
113 | include nbproject/Makefile-variables.mk
114 |
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/music.h:
--------------------------------------------------------------------------------
1 | /* For close to A4: 16Mhz / (440Hz*256 samples) =~ 0x8E */
2 | /* did all the math for the rest of the freqs found at:
3 | http://www.phy.mtu.edu/~suits/notefreqs.html
4 | */
5 | #define NOTES_C0 0xeee
6 | #define NOTES_Db0 0xe18
7 | #define NOTES_D0 0xd4d
8 | #define NOTES_Eb0 0xc8d
9 | #define NOTES_E0 0xbd9
10 | #define NOTES_F0 0xb2f
11 | #define NOTES_Gb0 0xa8f
12 | #define NOTES_G0 0x9f7
13 | #define NOTES_Ab0 0x967
14 | #define NOTES_A0 0x8e0
15 | #define NOTES_Bb0 0x860
16 | #define NOTES_B0 0x7e8
17 | #define NOTES_C1 0x777
18 | #define NOTES_Db1 0x70b
19 | #define NOTES_D1 0x6a6
20 | #define NOTES_Eb1 0x647
21 | #define NOTES_E1 0x5ec
22 | #define NOTES_F1 0x597
23 | #define NOTES_Gb1 0x547
24 | #define NOTES_G1 0x4fb
25 | #define NOTES_Ab1 0x4b4
26 | #define NOTES_A1 0x470
27 | #define NOTES_Bb1 0x430
28 | #define NOTES_B1 0x3f4
29 | #define NOTES_C2 0x3bb
30 | #define NOTES_Db2 0x385
31 | #define NOTES_D2 0x353
32 | #define NOTES_Eb2 0x323
33 | #define NOTES_E2 0x2f6
34 | #define NOTES_F2 0x2cb
35 | #define NOTES_Gb2 0x2a3
36 | #define NOTES_G2 0x27d
37 | #define NOTES_Ab2 0x259
38 | #define NOTES_A2 0x238
39 | #define NOTES_Bb2 0x218
40 | #define NOTES_B2 0x1fa
41 | #define NOTES_C3 0x1dd
42 | #define NOTES_Db3 0x1c2
43 | #define NOTES_D3 0x1a9
44 | #define NOTES_Eb3 0x191
45 | #define NOTES_E3 0x17b
46 | #define NOTES_F3 0x165
47 | #define NOTES_Gb3 0x151
48 | #define NOTES_G3 0x13e
49 | #define NOTES_Ab3 0x12c
50 | #define NOTES_A3 0x11c
51 | #define NOTES_Bb3 0x10c
52 | #define NOTES_B3 0xfd
53 | #define NOTES_C4 0xee
54 | #define NOTES_Db4 0xe1
55 | #define NOTES_D4 0xd4
56 | #define NOTES_Eb4 0xc8
57 | #define NOTES_E4 0xbd
58 | #define NOTES_F4 0xb2
59 | #define NOTES_Gb4 0xa8
60 | #define NOTES_G4 0x9f
61 | #define NOTES_Ab4 0x96
62 | #define NOTES_A4 0x8e
63 | #define NOTES_Bb4 0x86
64 | #define NOTES_B4 0x7e
65 | #define NOTES_C5 0x77
66 | #define NOTES_Db5 0x70
67 | #define NOTES_D5 0x6a
68 | #define NOTES_Eb5 0x64
69 | #define NOTES_E5 0x5e
70 | #define NOTES_F5 0x59
71 | #define NOTES_Gb5 0x54
72 | #define NOTES_G5 0x4f
73 | #define NOTES_Ab5 0x4b
74 | #define NOTES_A5 0x47
75 | #define NOTES_Bb5 0x43
76 | #define NOTES_B5 0x3f
77 | #define NOTES_C6 0x3b
78 | #define NOTES_Db6 0x38
79 | #define NOTES_D6 0x35
80 | #define NOTES_Eb6 0x32
81 | #define NOTES_E6 0x2f
82 | #define NOTES_F6 0x2c
83 | #define NOTES_Gb6 0x2a
84 | #define NOTES_G6 0x27
85 | #define NOTES_Ab6 0x25
86 | #define NOTES_A6 0x23
87 | #define NOTES_Bb6 0x21
88 | #define NOTES_B6 0x1f
89 | #define NOTES_C7 0x1d
90 | #define NOTES_Db7 0x1c
91 | #define NOTES_D7 0x1a
92 | #define NOTES_Eb7 0x19
93 | #define NOTES_E7 0x17
94 | #define NOTES_F7 0x16
95 | #define NOTES_Gb7 0x15
96 | #define NOTES_G7 0x13
97 | #define NOTES_Ab7 0x12
98 | #define NOTES_A7 0x11
99 | #define NOTES_Bb7 0x10
100 | #define NOTES_B7 0x0f
101 | #define NOTES_C8 0x0e
102 | #define NOTES_Db8 0x0e
103 | #define NOTES_D8 0x0d
104 | #define NOTES_Eb8 0x0c
105 | #define NOTES_E8 0x0b
106 | #define NOTES_F8 0x0b
107 | #define NOTES_Gb8 0x0a
108 | #define NOTES_G8 0x09
109 | #define NOTES_Ab8 0x09
110 | #define NOTES_A8 0x08
111 | #define NOTES_Bb8 0x08
112 | #define NOTES_B8 0x07
113 |
114 | const unsigned char sinetable[] = {
115 | 0x0,0x0,0x0,0x0,0x1,0x1,0x1,0x2,
116 | 0x2,0x3,0x4,0x5,0x5,0x6,0x7,0x9,
117 | 0xa,0xb,0xc,0xe,0xf,0x11,0x12,0x14,
118 | 0x15,0x17,0x19,0x1b,0x1d,0x1f,0x21,0x23,
119 | 0x25,0x28,0x2a,0x2c,0x2f,0x31,0x34,0x36,
120 | 0x39,0x3b,0x3e,0x41,0x43,0x46,0x49,0x4c,
121 | 0x4f,0x52,0x55,0x58,0x5a,0x5d,0x61,0x64,
122 | 0x67,0x6a,0x6d,0x70,0x73,0x76,0x79,0x7c,
123 | 0x80,0x83,0x86,0x89,0x8c,0x8f,0x92,0x95,
124 | 0x98,0x9b,0x9e,0xa2,0xa5,0xa7,0xaa,0xad,
125 | 0xb0,0xb3,0xb6,0xb9,0xbc,0xbe,0xc1,0xc4,
126 | 0xc6,0xc9,0xcb,0xce,0xd0,0xd3,0xd5,0xd7,
127 | 0xda,0xdc,0xde,0xe0,0xe2,0xe4,0xe6,0xe8,
128 | 0xea,0xeb,0xed,0xee,0xf0,0xf1,0xf3,0xf4,
129 | 0xf5,0xf6,0xf8,0xf9,0xfa,0xfa,0xfb,0xfc,
130 | 0xfd,0xfd,0xfe,0xfe,0xfe,0xff,0xff,0xff,
131 | 0xff,0xff,0xff,0xff,0xfe,0xfe,0xfe,0xfd,
132 | 0xfd,0xfc,0xfb,0xfa,0xfa,0xf9,0xf8,0xf6,
133 | 0xf5,0xf4,0xf3,0xf1,0xf0,0xee,0xed,0xeb,
134 | 0xea,0xe8,0xe6,0xe4,0xe2,0xe0,0xde,0xdc,
135 | 0xda,0xd7,0xd5,0xd3,0xd0,0xce,0xcb,0xc9,
136 | 0xc6,0xc4,0xc1,0xbe,0xbc,0xb9,0xb6,0xb3,
137 | 0xb0,0xad,0xaa,0xa7,0xa5,0xa2,0x9e,0x9b,
138 | 0x98,0x95,0x92,0x8f,0x8c,0x89,0x86,0x83,
139 | 0x80,0x7c,0x79,0x76,0x73,0x70,0x6d,0x6a,
140 | 0x67,0x64,0x61,0x5d,0x5a,0x58,0x55,0x52,
141 | 0x4f,0x4c,0x49,0x46,0x43,0x41,0x3e,0x3b,
142 | 0x39,0x36,0x34,0x31,0x2f,0x2c,0x2a,0x28,
143 | 0x25,0x23,0x21,0x1f,0x1d,0x1b,0x19,0x17,
144 | 0x15,0x14,0x12,0x11,0xf,0xe,0xc,0xb,
145 | 0xa,0x9,0x7,0x6,0x5,0x5,0x4,0x3,
146 | 0x2,0x2,0x1,0x1,0x1,0x0,0x0,0x0,
147 | };
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/320x240-hack/main.c:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 | #include
4 | #include
5 | #include
6 | #include
7 |
8 | #define FCY 16000000UL // Instruction cycle frequency, Hz
9 | #include
10 |
11 | _CONFIG1(FWDTEN_OFF & GWRP_OFF & GCP_OFF & JTAGEN_OFF)
12 | _CONFIG2(POSCMOD_HS & FCKSM_CSDCMD & FNOSC_PRIPLL & PLL96MHZ_ON & PLLDIV_DIV2)
13 | _CONFIG3(ALTPMP_ALTPMPEN & SOSCSEL_EC)
14 |
15 | /*
16 | To change resolutions, use an X modeline generator like:
17 | http://xtiming.sourceforge.net/cgi-bin/xtiming.pl
18 | For example, 80x480@60Hz produces
19 | Modeline "80x480@61" 4.93 80 112 128 160 480 490 495 505
20 | Then we convert it to the values we need:
21 |
22 | 4.93 is the pixel clock in MHz, we need to set CLOCKDIV to match. To pick a
23 | divisor, use page 147 of the data sheet or, uh, this perl one-liner to
24 | generate all of them and pick one that's close:
25 | perl -e '$d = 1; $x = 0; while($x < 128) { printf "%s %.2f\n",$x,96/$d;if($x < 64) { $d += 0.25; } elsif($x < 96) { $d += 0.50 } else { $d += 1 }; $x++}'
26 |
27 | The differences between: 80 112 128 160 480
28 | are H-porch, H-Pulse, H-width
29 | The differences between: 480 490 495 505
30 | are V-porch, V-Pulse, V-width
31 |
32 | Once these values are in, the monitor will display it but it will probably
33 | be misaligned (especially vertically). Play with VENST_FUDGE and
34 | HENST_FUDGE to fix this.
35 | */
36 |
37 | #define HOR_RES 640UL
38 | #define VER_RES 480UL
39 | #define REAL_HOR_RES 320UL
40 | #define REAL_VER_RES 240UL
41 | #define HOR_FRONT_PORCH 16
42 | #define HOR_PULSE_WIDTH 96
43 | #define HOR_BACK_PORCH 48
44 | #define VER_FRONT_PORCH 11
45 | #define VER_PULSE_WIDTH 2
46 | #define VER_BACK_PORCH 31
47 | #define BPP 8
48 | #define CLOCKDIV 11
49 | #define VENST_FUDGE 1
50 | #define HENST_FUDGE 0
51 | #define VSPOL 0 /* sync polarities */
52 | #define HSPOL 0
53 |
54 | #define CHR_FGCOLOR 0x5000
55 | #define CHR_BGCOLOR 0x5100
56 | #define CHR_FONTBASE 0x5200
57 | #define CHR_PRINTCHAR 0x5300
58 | #define CHR_TXTAREASTART 0x5800
59 | #define CHR_TXTAREAEND 0x5900
60 | #define CHR_PRINTPOS 0x5A00
61 | #define RCC_SRCADDR 0x6200
62 | #define RCC_DESTADDR 0x6300
63 | #define RCC_RECTSIZE 0x6400
64 | #define RCC_COLOR 0x6600
65 | #define RCC_STARTCOPY 0x6700
66 | #define IPU_SRCADDR 0x7100
67 | #define IPU_DESTADDR 0x7200
68 | #define IPU_DECOMPRESS 0x7400
69 |
70 | #define GFX_BUFFER_SIZE (REAL_HOR_RES * REAL_VER_RES / (8/BPP))
71 | __eds__ uint8_t GFXDisplayBuffer[GFX_BUFFER_SIZE] __attribute__((eds, section("DISPLAY")));
72 |
73 | void config_graphics(void) {
74 | _G1CLKSEL = 1;
75 | _GCLKDIV = CLOCKDIV;
76 |
77 | G1DPADRL = (unsigned long)(GFXDisplayBuffer);
78 | G1DPADRH = (unsigned long)(GFXDisplayBuffer);
79 | G1W1ADRL = (unsigned long)(GFXDisplayBuffer);
80 | G1W1ADRH = (unsigned long)(GFXDisplayBuffer);
81 | G1W2ADRL = (unsigned long)(GFXDisplayBuffer);
82 | G1W2ADRH = (unsigned long)(GFXDisplayBuffer);
83 |
84 | _GDBEN = 0xFFFF;
85 |
86 | // Using PIC24F manual section 43 page 37-38
87 | _DPMODE = 1; /* TFT */
88 | _GDBEN = 0xFFFF;
89 | _DPW = _PUW = REAL_HOR_RES; // Work area and FB size so GPU works
90 | _DPH = _PUH = REAL_VER_RES;
91 | _DPWT = HOR_FRONT_PORCH + HOR_PULSE_WIDTH + HOR_BACK_PORCH + HOR_RES;
92 | _DPHT = VER_FRONT_PORCH + VER_PULSE_WIDTH + VER_BACK_PORCH + VER_RES;
93 | _DPCLKPOL = 0;
94 | _DPENOE = 0;
95 | _DPENPOL = 0;
96 | _DPVSOE = 1;
97 | _DPHSOE = 1;
98 | _DPVSPOL = VSPOL;
99 | _DPHSPOL = HSPOL;
100 | _ACTLINE = _VENST = VER_FRONT_PORCH + VER_PULSE_WIDTH + VER_BACK_PORCH - VENST_FUDGE;
101 | _ACTPIX = _HENST = HOR_FRONT_PORCH + HOR_PULSE_WIDTH + HOR_BACK_PORCH - HENST_FUDGE;
102 | _VSST = VER_FRONT_PORCH;
103 | _HSST = HOR_FRONT_PORCH;
104 | _VSLEN = VER_PULSE_WIDTH;
105 | _HSLEN = HOR_PULSE_WIDTH;
106 | _DPPWROE = 0;
107 | _DPPINOE = 1;
108 | _DPPOWER = 1;
109 | _DPBPP = _PUBPP = 3;
110 |
111 |
112 | // _DPTEST = 2; /* Uncomment for test patterns */
113 |
114 | _G1EN = 1;
115 | __delay_ms(1);
116 | }
117 |
118 | void rcc_color(unsigned int color) {
119 | while(_CMDFUL) continue;
120 | G1CMDL = color;
121 | G1CMDH = RCC_COLOR;
122 | Nop();
123 | }
124 |
125 | void rcc_draw(uint16_t x, uint16_t y, uint16_t w, uint16_t h) {
126 | // destination
127 | while(_CMDFUL) continue;
128 | G1CMDL = x + y*REAL_HOR_RES;
129 | G1CMDH = RCC_DESTADDR | (x + y*REAL_HOR_RES)>>16;
130 | Nop();
131 |
132 | // size
133 | while(_CMDFUL) continue;
134 | G1CMDL = (w<<12) | h;
135 | G1CMDH = RCC_RECTSIZE | (w>>4);
136 | Nop();
137 |
138 | // go!
139 | while(_CMDFUL) continue;
140 | G1CMDL = 0xC<<3;
141 | G1CMDH = RCC_STARTCOPY;
142 | Nop();
143 | }
144 |
145 | void blank_background() {
146 | rcc_color(0);
147 | rcc_draw(0, 0, REAL_HOR_RES, REAL_VER_RES);
148 | }
149 |
150 | int main(void) {
151 | int x;
152 | //OSCCON = 0x0000;
153 |
154 | ANSB = 0x0000;
155 | ANSC = 0x0000;
156 | ANSD = 0x0000;
157 | ANSF = 0x0000;
158 | ANSG = 0x0000;
159 | //TRISE = 0x0000;
160 |
161 | TRISB = 0x0000;
162 |
163 | config_graphics();
164 |
165 | // clear buffers
166 | blank_background();
167 |
168 | /* enable vertical blanking interrupts so _VMRGNIF works */
169 | _VMRGNIE = 1;
170 |
171 | int sweep = 0;
172 | while (1) {
173 | blank_background();
174 | rcc_color(0xFFFF);
175 | rcc_draw(sweep, 0, 1, REAL_VER_RES);
176 | sweep++;
177 | if(sweep == REAL_HOR_RES - 1) sweep = 0;
178 | while(!_CMDMPT) continue; // Wait for GPU to finish drawing
179 | _VMRGNIF = 0;
180 | while(!_VMRGNIF) continue; // wait for vsync
181 | }
182 |
183 | return 0;
184 | }
185 |
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/80x480-double/main.c:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 | #include
4 | #include
5 | #include
6 | #include
7 |
8 | #define FCY 16000000UL // Instruction cycle frequency, Hz
9 | #include
10 |
11 | _CONFIG1(FWDTEN_OFF & GWRP_OFF & GCP_OFF & JTAGEN_OFF)
12 | _CONFIG2(POSCMOD_HS & FCKSM_CSDCMD & FNOSC_PRIPLL & PLL96MHZ_ON & PLLDIV_DIV2)
13 | _CONFIG3(ALTPMP_ALTPMPEN & SOSCSEL_EC)
14 |
15 | /*
16 | To change resolutions, use an X modeline generator like:
17 | http://xtiming.sourceforge.net/cgi-bin/xtiming.pl
18 | For example, 80x480@60Hz produces
19 | Modeline "80x480@61" 4.93 80 112 128 160 480 490 495 505
20 | Then we convert it to the values we need:
21 |
22 | 4.93 is the pixel clock in MHz, we need to set CLOCKDIV to match. To pick a
23 | divisor, use page 147 of the data sheet or, uh, this perl one-liner to
24 | generate all of them and pick one that's close:
25 | perl -e '$d = 1; $x = 0; while($x < 128) { printf "%s %.2f\n",$x,96/$d;if($x < 64) { $d += 0.25; } elsif($x < 96) { $d += 0.50 } else { $d += 1 }; $x++}'
26 |
27 | The differences between: 80 112 128 160 480
28 | are H-porch, H-Pulse, H-width
29 | The differences between: 480 490 495 505
30 | are V-porch, V-Pulse, V-width
31 |
32 | Once these values are in, the monitor will display it but it will probably
33 | be misaligned (especially vertically). Play with VENST_FUDGE and
34 | HENST_FUDGE to fix this.
35 | */
36 |
37 | #define HOR_RES 80UL
38 | #define VER_RES 480UL
39 | #define HOR_FRONT_PORCH 32
40 | #define HOR_PULSE_WIDTH 16
41 | #define HOR_BACK_PORCH 32
42 | #define VER_FRONT_PORCH 10
43 | #define VER_PULSE_WIDTH 5
44 | #define VER_BACK_PORCH 10
45 | #define BPP 8
46 | #define CLOCKDIV 69
47 | #define VENST_FUDGE 1
48 | #define HENST_FUDGE 0
49 | #define VSPOL 0 /* sync polarities */
50 | #define HSPOL 0
51 |
52 | #define CHR_FGCOLOR 0x5000
53 | #define CHR_BGCOLOR 0x5100
54 | #define CHR_FONTBASE 0x5200
55 | #define CHR_PRINTCHAR 0x5300
56 | #define CHR_TXTAREASTART 0x5800
57 | #define CHR_TXTAREAEND 0x5900
58 | #define CHR_PRINTPOS 0x5A00
59 | #define RCC_SRCADDR 0x6200
60 | #define RCC_DESTADDR 0x6300
61 | #define RCC_RECTSIZE 0x6400
62 | #define RCC_COLOR 0x6600
63 | #define RCC_STARTCOPY 0x6700
64 | #define IPU_SRCADDR 0x7100
65 | #define IPU_DESTADDR 0x7200
66 | #define IPU_DECOMPRESS 0x7400
67 |
68 | #define GFX_BUFFER_SIZE (HOR_RES * VER_RES / (8/BPP))
69 | __eds__ uint8_t GFXDisplayBuffer[2][GFX_BUFFER_SIZE] __attribute__((eds, section("DISPLAY")));
70 |
71 | void config_graphics(void) {
72 | _G1CLKSEL = 1;
73 | _GCLKDIV = CLOCKDIV;
74 |
75 | G1DPADRL = (unsigned long)(GFXDisplayBuffer);
76 | G1DPADRH = (unsigned long)(GFXDisplayBuffer);
77 | G1W1ADRL = (unsigned long)(GFXDisplayBuffer);
78 | G1W1ADRH = (unsigned long)(GFXDisplayBuffer);
79 | G1W2ADRL = (unsigned long)(GFXDisplayBuffer);
80 | G1W2ADRH = (unsigned long)(GFXDisplayBuffer);
81 |
82 | _GDBEN = 0xFFFF;
83 |
84 | // Using PIC24F manual section 43 page 37-38
85 | _DPMODE = 1; /* TFT */
86 | _GDBEN = 0xFFFF;
87 | _DPW = _PUW = HOR_RES; // Work area and FB size so GPU works
88 | _DPH = _PUH = VER_RES;
89 | _DPWT = HOR_FRONT_PORCH + HOR_PULSE_WIDTH + HOR_BACK_PORCH + HOR_RES;
90 | _DPHT = VER_FRONT_PORCH + VER_PULSE_WIDTH + VER_BACK_PORCH + VER_RES;
91 | _DPCLKPOL = 0;
92 | _DPENOE = 0;
93 | _DPENPOL = 0;
94 | _DPVSOE = 1;
95 | _DPHSOE = 1;
96 | _DPVSPOL = VSPOL;
97 | _DPHSPOL = HSPOL;
98 | _ACTLINE = _VENST = VER_FRONT_PORCH + VER_PULSE_WIDTH + VER_BACK_PORCH - VENST_FUDGE;
99 | _ACTPIX = _HENST = HOR_FRONT_PORCH + HOR_PULSE_WIDTH + HOR_BACK_PORCH - HENST_FUDGE;
100 | _VSST = VER_FRONT_PORCH;
101 | _HSST = HOR_FRONT_PORCH;
102 | _VSLEN = VER_PULSE_WIDTH;
103 | _HSLEN = HOR_PULSE_WIDTH;
104 | _DPPWROE = 0;
105 | _DPPINOE = 1;
106 | _DPPOWER = 1;
107 | _DPBPP = _PUBPP = 3;
108 |
109 |
110 | // _DPTEST = 2; /* Uncomment for test patterns */
111 |
112 | _G1EN = 1;
113 | __delay_ms(1);
114 | }
115 |
116 | void rcc_color(unsigned int color) {
117 | while(_CMDFUL) continue;
118 | G1CMDL = color;
119 | G1CMDH = RCC_COLOR;
120 | Nop();
121 | }
122 |
123 | void rcc_setdest(__eds__ uint8_t *buf) {
124 | while(!_CMDMPT) continue; // Wait for GPU to finish drawing
125 | G1W2ADRL = (unsigned long)(buf);
126 | G1W2ADRH = (unsigned long)(buf);
127 | }
128 |
129 | void gpu_setfb(__eds__ uint8_t *buf) {
130 | G1DPADRL = (unsigned long)(buf);
131 | G1DPADRH = (unsigned long)(buf);
132 | }
133 |
134 | void rcc_draw(uint16_t x, uint16_t y, uint16_t w, uint16_t h) {
135 | // destination
136 | while(_CMDFUL) continue;
137 | G1CMDL = x + y*HOR_RES;
138 | G1CMDH = RCC_DESTADDR | (x + y*HOR_RES)>>16;
139 | Nop();
140 |
141 | // size
142 | while(_CMDFUL) continue;
143 | G1CMDL = (w<<12) | h;
144 | G1CMDH = RCC_RECTSIZE | (w>>4);
145 | Nop();
146 |
147 | // go!
148 | while(_CMDFUL) continue;
149 | G1CMDL = 0xC<<3;
150 | G1CMDH = RCC_STARTCOPY;
151 | Nop();
152 | }
153 |
154 | void blank_background() {
155 | rcc_color(0);
156 | rcc_draw(0, 0, HOR_RES, VER_RES);
157 | }
158 |
159 | int main(void) {
160 | int x;
161 | //OSCCON = 0x0000;
162 |
163 | ANSB = 0x0000;
164 | ANSC = 0x0000;
165 | ANSD = 0x0000;
166 | ANSF = 0x0000;
167 | ANSG = 0x0000;
168 | //TRISE = 0x0000;
169 |
170 | TRISB = 0x0000;
171 |
172 | config_graphics();
173 |
174 | // clear buffers
175 | rcc_setdest(GFXDisplayBuffer[0]);
176 | blank_background();
177 | rcc_setdest(GFXDisplayBuffer[1]);
178 | blank_background();
179 |
180 | /* enable vertical blanking interrupts so _VMRGNIF works */
181 | _VMRGNIE = 1;
182 |
183 | int sweep = 0;
184 | int next_fb = 1;
185 | while (1) {
186 | rcc_setdest(GFXDisplayBuffer[next_fb]);
187 |
188 | blank_background();
189 | rcc_color(0xFFFF);
190 | rcc_draw(sweep, 0, 1, VER_RES);
191 | sweep++;
192 | if(sweep == HOR_RES - 1) sweep = 0;
193 | while(!_CMDMPT) continue; // Wait for GPU to finish drawing
194 | _VMRGNIF = 0;
195 | while(!_VMRGNIF) continue; // wait for vsync
196 | gpu_setfb(GFXDisplayBuffer[next_fb]);
197 | next_fb = !next_fb;
198 | }
199 |
200 | return 0;
201 | }
202 |
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/nbproject/Makefile-default.mk:
--------------------------------------------------------------------------------
1 | #
2 | # Generated Makefile - do not edit!
3 | #
4 | # Edit the Makefile in the project folder instead (../Makefile). Each target
5 | # has a -pre and a -post target defined where you can add customized code.
6 | #
7 | # This makefile implements configuration specific macros and targets.
8 |
9 |
10 | # Include project Makefile
11 | ifeq "${IGNORE_LOCAL}" "TRUE"
12 | # do not include local makefile. User is passing all local related variables already
13 | else
14 | include Makefile
15 | # Include makefile containing local settings
16 | ifeq "$(wildcard nbproject/Makefile-local-default.mk)" "nbproject/Makefile-local-default.mk"
17 | include nbproject/Makefile-local-default.mk
18 | endif
19 | endif
20 |
21 | # Environment
22 | MKDIR=gnumkdir -p
23 | RM=rm -f
24 | MV=mv
25 | CP=cp
26 |
27 | # Macros
28 | CND_CONF=default
29 | ifeq ($(TYPE_IMAGE), DEBUG_RUN)
30 | IMAGE_TYPE=debug
31 | OUTPUT_SUFFIX=elf
32 | DEBUGGABLE_SUFFIX=elf
33 | FINAL_IMAGE=dist/${CND_CONF}/${IMAGE_TYPE}/L1DemoProto.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}
34 | else
35 | IMAGE_TYPE=production
36 | OUTPUT_SUFFIX=hex
37 | DEBUGGABLE_SUFFIX=elf
38 | FINAL_IMAGE=dist/${CND_CONF}/${IMAGE_TYPE}/L1DemoProto.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}
39 | endif
40 |
41 | # Object Directory
42 | OBJECTDIR=build/${CND_CONF}/${IMAGE_TYPE}
43 |
44 | # Distribution Directory
45 | DISTDIR=dist/${CND_CONF}/${IMAGE_TYPE}
46 |
47 | # Source Files Quoted if spaced
48 | SOURCEFILES_QUOTED_IF_SPACED=main.c
49 |
50 | # Object Files Quoted if spaced
51 | OBJECTFILES_QUOTED_IF_SPACED=${OBJECTDIR}/main.o
52 | POSSIBLE_DEPFILES=${OBJECTDIR}/main.o.d
53 |
54 | # Object Files
55 | OBJECTFILES=${OBJECTDIR}/main.o
56 |
57 | # Source Files
58 | SOURCEFILES=main.c
59 |
60 |
61 | CFLAGS=
62 | ASFLAGS=
63 | LDLIBSOPTIONS=
64 |
65 | ############# Tool locations ##########################################
66 | # If you copy a project from one host to another, the path where the #
67 | # compiler is installed may be different. #
68 | # If you open this project with MPLAB X in the new host, this #
69 | # makefile will be regenerated and the paths will be corrected. #
70 | #######################################################################
71 | # fixDeps replaces a bunch of sed/cat/printf statements that slow down the build
72 | FIXDEPS=fixDeps
73 |
74 | .build-conf: ${BUILD_SUBPROJECTS}
75 | ifneq ($(INFORMATION_MESSAGE), )
76 | @echo $(INFORMATION_MESSAGE)
77 | endif
78 | ${MAKE} -f nbproject/Makefile-default.mk dist/${CND_CONF}/${IMAGE_TYPE}/L1DemoProto.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}
79 |
80 | MP_PROCESSOR_OPTION=24FJ256DA206
81 | MP_LINKER_FILE_OPTION=,--script=p24FJ256DA206.gld
82 | # ------------------------------------------------------------------------------------
83 | # Rules for buildStep: compile
84 | ifeq ($(TYPE_IMAGE), DEBUG_RUN)
85 | ${OBJECTDIR}/main.o: main.c nbproject/Makefile-${CND_CONF}.mk
86 | @${MKDIR} ${OBJECTDIR}
87 | @${RM} ${OBJECTDIR}/main.o.d
88 | @${RM} ${OBJECTDIR}/main.o
89 | ${MP_CC} $(MP_EXTRA_CC_PRE) main.c -o ${OBJECTDIR}/main.o -c -mcpu=$(MP_PROCESSOR_OPTION) -MMD -MF "${OBJECTDIR}/main.o.d" -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -mno-eds-warn -omf=elf -mlarge-arrays -menable-large-arrays -O0 -msmart-io=1 -Wall -msfr-warn=off
90 | @${FIXDEPS} "${OBJECTDIR}/main.o.d" $(SILENT) -rsi ${MP_CC_DIR}../
91 |
92 | else
93 | ${OBJECTDIR}/main.o: main.c nbproject/Makefile-${CND_CONF}.mk
94 | @${MKDIR} ${OBJECTDIR}
95 | @${RM} ${OBJECTDIR}/main.o.d
96 | @${RM} ${OBJECTDIR}/main.o
97 | ${MP_CC} $(MP_EXTRA_CC_PRE) main.c -o ${OBJECTDIR}/main.o -c -mcpu=$(MP_PROCESSOR_OPTION) -MMD -MF "${OBJECTDIR}/main.o.d" -mno-eds-warn -g -omf=elf -mlarge-arrays -menable-large-arrays -O0 -msmart-io=1 -Wall -msfr-warn=off
98 | @${FIXDEPS} "${OBJECTDIR}/main.o.d" $(SILENT) -rsi ${MP_CC_DIR}../
99 |
100 | endif
101 |
102 | # ------------------------------------------------------------------------------------
103 | # Rules for buildStep: assemble
104 | ifeq ($(TYPE_IMAGE), DEBUG_RUN)
105 | else
106 | endif
107 |
108 | # ------------------------------------------------------------------------------------
109 | # Rules for buildStep: assemblePreproc
110 | ifeq ($(TYPE_IMAGE), DEBUG_RUN)
111 | else
112 | endif
113 |
114 | # ------------------------------------------------------------------------------------
115 | # Rules for buildStep: link
116 | ifeq ($(TYPE_IMAGE), DEBUG_RUN)
117 | dist/${CND_CONF}/${IMAGE_TYPE}/L1DemoProto.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk
118 | @${MKDIR} dist/${CND_CONF}/${IMAGE_TYPE}
119 | ${MP_CC} $(MP_EXTRA_LD_PRE) -o dist/${CND_CONF}/${IMAGE_TYPE}/L1DemoProto.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX} ${OBJECTFILES_QUOTED_IF_SPACED} -mcpu=$(MP_PROCESSOR_OPTION) -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -omf=elf -mlarge-arrays -Wl,--local-stack,--defsym=__MPLAB_BUILD=1,--defsym=__ICD2RAM=1,--defsym=__MPLAB_DEBUG=1,--defsym=__DEBUG=1,--defsym=__MPLAB_DEBUGGER_PK3=1,$(MP_LINKER_FILE_OPTION),--stack=16,--check-sections,--data-init,--pack-data,--handles,--isr,--no-gc-sections,--fill-upper=0,--stackguard=16,--no-force-link,--smart-io,-Map="${DISTDIR}/${PROJECTNAME}.${IMAGE_TYPE}.map",--report-mem$(MP_EXTRA_LD_POST)
120 |
121 | else
122 | dist/${CND_CONF}/${IMAGE_TYPE}/L1DemoProto.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk
123 | @${MKDIR} dist/${CND_CONF}/${IMAGE_TYPE}
124 | ${MP_CC} $(MP_EXTRA_LD_PRE) -o dist/${CND_CONF}/${IMAGE_TYPE}/L1DemoProto.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX} ${OBJECTFILES_QUOTED_IF_SPACED} -mcpu=$(MP_PROCESSOR_OPTION) -omf=elf -mlarge-arrays -Wl,--local-stack,--defsym=__MPLAB_BUILD=1,$(MP_LINKER_FILE_OPTION),--stack=16,--check-sections,--data-init,--pack-data,--handles,--isr,--no-gc-sections,--fill-upper=0,--stackguard=16,--no-force-link,--smart-io,-Map="${DISTDIR}/${PROJECTNAME}.${IMAGE_TYPE}.map",--report-mem$(MP_EXTRA_LD_POST)
125 | ${MP_CC_DIR}\\xc16-bin2hex dist/${CND_CONF}/${IMAGE_TYPE}/L1DemoProto.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX} -a -omf=elf
126 |
127 | endif
128 |
129 |
130 | # Subprojects
131 | .build-subprojects:
132 |
133 |
134 | # Subprojects
135 | .clean-subprojects:
136 |
137 | # Clean Targets
138 | .clean-conf: ${CLEAN_SUBPROJECTS}
139 | ${RM} -r build/default
140 | ${RM} -r dist/default
141 |
142 | # Enable dependency checking
143 | .dep.inc: .depcheck-impl
144 |
145 | DEPFILES=$(shell mplabwildcard ${POSSIBLE_DEPFILES})
146 | ifneq (${DEPFILES},)
147 | include ${DEPFILES}
148 | endif
149 |
--------------------------------------------------------------------------------
/L1Demo-asm-example/L1Demo-asm.X/nbproject/Makefile-default.mk:
--------------------------------------------------------------------------------
1 | #
2 | # Generated Makefile - do not edit!
3 | #
4 | # Edit the Makefile in the project folder instead (../Makefile). Each target
5 | # has a -pre and a -post target defined where you can add customized code.
6 | #
7 | # This makefile implements configuration specific macros and targets.
8 |
9 |
10 | # Include project Makefile
11 | ifeq "${IGNORE_LOCAL}" "TRUE"
12 | # do not include local makefile. User is passing all local related variables already
13 | else
14 | include Makefile
15 | # Include makefile containing local settings
16 | ifeq "$(wildcard nbproject/Makefile-local-default.mk)" "nbproject/Makefile-local-default.mk"
17 | include nbproject/Makefile-local-default.mk
18 | endif
19 | endif
20 |
21 | # Environment
22 | MKDIR=gnumkdir -p
23 | RM=rm -f
24 | MV=mv
25 | CP=cp
26 |
27 | # Macros
28 | CND_CONF=default
29 | ifeq ($(TYPE_IMAGE), DEBUG_RUN)
30 | IMAGE_TYPE=debug
31 | OUTPUT_SUFFIX=elf
32 | DEBUGGABLE_SUFFIX=elf
33 | FINAL_IMAGE=dist/${CND_CONF}/${IMAGE_TYPE}/L1Demo-asm.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}
34 | else
35 | IMAGE_TYPE=production
36 | OUTPUT_SUFFIX=hex
37 | DEBUGGABLE_SUFFIX=elf
38 | FINAL_IMAGE=dist/${CND_CONF}/${IMAGE_TYPE}/L1Demo-asm.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}
39 | endif
40 |
41 | # Object Directory
42 | OBJECTDIR=build/${CND_CONF}/${IMAGE_TYPE}
43 |
44 | # Distribution Directory
45 | DISTDIR=dist/${CND_CONF}/${IMAGE_TYPE}
46 |
47 | # Source Files Quoted if spaced
48 | SOURCEFILES_QUOTED_IF_SPACED=../L1Demo-sam.s
49 |
50 | # Object Files Quoted if spaced
51 | OBJECTFILES_QUOTED_IF_SPACED=${OBJECTDIR}/_ext/1472/L1Demo-sam.o
52 | POSSIBLE_DEPFILES=${OBJECTDIR}/_ext/1472/L1Demo-sam.o.d
53 |
54 | # Object Files
55 | OBJECTFILES=${OBJECTDIR}/_ext/1472/L1Demo-sam.o
56 |
57 | # Source Files
58 | SOURCEFILES=../L1Demo-sam.s
59 |
60 |
61 | CFLAGS=
62 | ASFLAGS=
63 | LDLIBSOPTIONS=
64 |
65 | ############# Tool locations ##########################################
66 | # If you copy a project from one host to another, the path where the #
67 | # compiler is installed may be different. #
68 | # If you open this project with MPLAB X in the new host, this #
69 | # makefile will be regenerated and the paths will be corrected. #
70 | #######################################################################
71 | # fixDeps replaces a bunch of sed/cat/printf statements that slow down the build
72 | FIXDEPS=fixDeps
73 |
74 | .build-conf: ${BUILD_SUBPROJECTS}
75 | ifneq ($(INFORMATION_MESSAGE), )
76 | @echo $(INFORMATION_MESSAGE)
77 | endif
78 | ${MAKE} -f nbproject/Makefile-default.mk dist/${CND_CONF}/${IMAGE_TYPE}/L1Demo-asm.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}
79 |
80 | MP_PROCESSOR_OPTION=24FJ256DA206
81 | MP_LINKER_FILE_OPTION=,--script=p24FJ256DA206.gld
82 | # ------------------------------------------------------------------------------------
83 | # Rules for buildStep: compile
84 | ifeq ($(TYPE_IMAGE), DEBUG_RUN)
85 | else
86 | endif
87 |
88 | # ------------------------------------------------------------------------------------
89 | # Rules for buildStep: assemble
90 | ifeq ($(TYPE_IMAGE), DEBUG_RUN)
91 | ${OBJECTDIR}/_ext/1472/L1Demo-sam.o: ../L1Demo-sam.s nbproject/Makefile-${CND_CONF}.mk
92 | @${MKDIR} ${OBJECTDIR}/_ext/1472
93 | @${RM} ${OBJECTDIR}/_ext/1472/L1Demo-sam.o.d
94 | @${RM} ${OBJECTDIR}/_ext/1472/L1Demo-sam.o
95 | ${MP_CC} $(MP_EXTRA_AS_PRE) ../L1Demo-sam.s -o ${OBJECTDIR}/_ext/1472/L1Demo-sam.o -c -mcpu=$(MP_PROCESSOR_OPTION) -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -omf=elf -I".." -I"." -Wa,-MD,"${OBJECTDIR}/_ext/1472/L1Demo-sam.o.d",--defsym=__MPLAB_BUILD=1,--defsym=__ICD2RAM=1,--defsym=__MPLAB_DEBUG=1,--defsym=__DEBUG=1,--defsym=__MPLAB_DEBUGGER_PK3=1,-g,--no-relax,-g$(MP_EXTRA_AS_POST)
96 | @${FIXDEPS} "${OBJECTDIR}/_ext/1472/L1Demo-sam.o.d" $(SILENT) -rsi ${MP_CC_DIR}../
97 |
98 | else
99 | ${OBJECTDIR}/_ext/1472/L1Demo-sam.o: ../L1Demo-sam.s nbproject/Makefile-${CND_CONF}.mk
100 | @${MKDIR} ${OBJECTDIR}/_ext/1472
101 | @${RM} ${OBJECTDIR}/_ext/1472/L1Demo-sam.o.d
102 | @${RM} ${OBJECTDIR}/_ext/1472/L1Demo-sam.o
103 | ${MP_CC} $(MP_EXTRA_AS_PRE) ../L1Demo-sam.s -o ${OBJECTDIR}/_ext/1472/L1Demo-sam.o -c -mcpu=$(MP_PROCESSOR_OPTION) -omf=elf -I".." -I"." -Wa,-MD,"${OBJECTDIR}/_ext/1472/L1Demo-sam.o.d",--defsym=__MPLAB_BUILD=1,-g,--no-relax,-g$(MP_EXTRA_AS_POST)
104 | @${FIXDEPS} "${OBJECTDIR}/_ext/1472/L1Demo-sam.o.d" $(SILENT) -rsi ${MP_CC_DIR}../
105 |
106 | endif
107 |
108 | # ------------------------------------------------------------------------------------
109 | # Rules for buildStep: assemblePreproc
110 | ifeq ($(TYPE_IMAGE), DEBUG_RUN)
111 | else
112 | endif
113 |
114 | # ------------------------------------------------------------------------------------
115 | # Rules for buildStep: link
116 | ifeq ($(TYPE_IMAGE), DEBUG_RUN)
117 | dist/${CND_CONF}/${IMAGE_TYPE}/L1Demo-asm.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk
118 | @${MKDIR} dist/${CND_CONF}/${IMAGE_TYPE}
119 | ${MP_CC} $(MP_EXTRA_LD_PRE) -o dist/${CND_CONF}/${IMAGE_TYPE}/L1Demo-asm.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX} ${OBJECTFILES_QUOTED_IF_SPACED} -mcpu=$(MP_PROCESSOR_OPTION) -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -omf=elf -Wl,--local-stack,--defsym=__MPLAB_BUILD=1,--defsym=__ICD2RAM=1,--defsym=__MPLAB_DEBUG=1,--defsym=__DEBUG=1,--defsym=__MPLAB_DEBUGGER_PK3=1,$(MP_LINKER_FILE_OPTION),--stack=16,--check-sections,--data-init,--pack-data,--handles,--isr,--no-gc-sections,--fill-upper=0,--stackguard=16,--library-path="..",--library-path=".",--no-force-link,--smart-io,-Map="${DISTDIR}/L1Demo-asm.X.${IMAGE_TYPE}.map",--report-mem$(MP_EXTRA_LD_POST)
120 |
121 | else
122 | dist/${CND_CONF}/${IMAGE_TYPE}/L1Demo-asm.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk
123 | @${MKDIR} dist/${CND_CONF}/${IMAGE_TYPE}
124 | ${MP_CC} $(MP_EXTRA_LD_PRE) -o dist/${CND_CONF}/${IMAGE_TYPE}/L1Demo-asm.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX} ${OBJECTFILES_QUOTED_IF_SPACED} -mcpu=$(MP_PROCESSOR_OPTION) -omf=elf -Wl,--local-stack,--defsym=__MPLAB_BUILD=1,$(MP_LINKER_FILE_OPTION),--stack=16,--check-sections,--data-init,--pack-data,--handles,--isr,--no-gc-sections,--fill-upper=0,--stackguard=16,--library-path="..",--library-path=".",--no-force-link,--smart-io,-Map="${DISTDIR}/L1Demo-asm.X.${IMAGE_TYPE}.map",--report-mem$(MP_EXTRA_LD_POST)
125 | ${MP_CC_DIR}\\xc16-bin2hex dist/${CND_CONF}/${IMAGE_TYPE}/L1Demo-asm.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX} -a -omf=elf
126 |
127 | endif
128 |
129 |
130 | # Subprojects
131 | .build-subprojects:
132 |
133 |
134 | # Subprojects
135 | .clean-subprojects:
136 |
137 | # Clean Targets
138 | .clean-conf: ${CLEAN_SUBPROJECTS}
139 | ${RM} -r build/default
140 | ${RM} -r dist/default
141 |
142 | # Enable dependency checking
143 | .dep.inc: .depcheck-impl
144 |
145 | DEPFILES=$(shell mplabwildcard ${POSSIBLE_DEPFILES})
146 | ifneq (${DEPFILES},)
147 | include ${DEPFILES}
148 | endif
149 |
--------------------------------------------------------------------------------
/L1Demo-asm-Leo_audio/L1Demo-asm/L1Demo-asm.X/nbproject/Makefile-default.mk:
--------------------------------------------------------------------------------
1 | #
2 | # Generated Makefile - do not edit!
3 | #
4 | # Edit the Makefile in the project folder instead (../Makefile). Each target
5 | # has a -pre and a -post target defined where you can add customized code.
6 | #
7 | # This makefile implements configuration specific macros and targets.
8 |
9 |
10 | # Include project Makefile
11 | ifeq "${IGNORE_LOCAL}" "TRUE"
12 | # do not include local makefile. User is passing all local related variables already
13 | else
14 | include Makefile
15 | # Include makefile containing local settings
16 | ifeq "$(wildcard nbproject/Makefile-local-default.mk)" "nbproject/Makefile-local-default.mk"
17 | include nbproject/Makefile-local-default.mk
18 | endif
19 | endif
20 |
21 | # Environment
22 | MKDIR=gnumkdir -p
23 | RM=rm -f
24 | MV=mv
25 | CP=cp
26 |
27 | # Macros
28 | CND_CONF=default
29 | ifeq ($(TYPE_IMAGE), DEBUG_RUN)
30 | IMAGE_TYPE=debug
31 | OUTPUT_SUFFIX=elf
32 | DEBUGGABLE_SUFFIX=elf
33 | FINAL_IMAGE=dist/${CND_CONF}/${IMAGE_TYPE}/L1Demo-asm.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}
34 | else
35 | IMAGE_TYPE=production
36 | OUTPUT_SUFFIX=hex
37 | DEBUGGABLE_SUFFIX=elf
38 | FINAL_IMAGE=dist/${CND_CONF}/${IMAGE_TYPE}/L1Demo-asm.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}
39 | endif
40 |
41 | # Object Directory
42 | OBJECTDIR=build/${CND_CONF}/${IMAGE_TYPE}
43 |
44 | # Distribution Directory
45 | DISTDIR=dist/${CND_CONF}/${IMAGE_TYPE}
46 |
47 | # Source Files Quoted if spaced
48 | SOURCEFILES_QUOTED_IF_SPACED=../L1Demo-sam.s
49 |
50 | # Object Files Quoted if spaced
51 | OBJECTFILES_QUOTED_IF_SPACED=${OBJECTDIR}/_ext/1472/L1Demo-sam.o
52 | POSSIBLE_DEPFILES=${OBJECTDIR}/_ext/1472/L1Demo-sam.o.d
53 |
54 | # Object Files
55 | OBJECTFILES=${OBJECTDIR}/_ext/1472/L1Demo-sam.o
56 |
57 | # Source Files
58 | SOURCEFILES=../L1Demo-sam.s
59 |
60 |
61 | CFLAGS=
62 | ASFLAGS=
63 | LDLIBSOPTIONS=
64 |
65 | ############# Tool locations ##########################################
66 | # If you copy a project from one host to another, the path where the #
67 | # compiler is installed may be different. #
68 | # If you open this project with MPLAB X in the new host, this #
69 | # makefile will be regenerated and the paths will be corrected. #
70 | #######################################################################
71 | # fixDeps replaces a bunch of sed/cat/printf statements that slow down the build
72 | FIXDEPS=fixDeps
73 |
74 | .build-conf: ${BUILD_SUBPROJECTS}
75 | ifneq ($(INFORMATION_MESSAGE), )
76 | @echo $(INFORMATION_MESSAGE)
77 | endif
78 | ${MAKE} -f nbproject/Makefile-default.mk dist/${CND_CONF}/${IMAGE_TYPE}/L1Demo-asm.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}
79 |
80 | MP_PROCESSOR_OPTION=24FJ256DA206
81 | MP_LINKER_FILE_OPTION=,--script=p24FJ256DA206.gld
82 | # ------------------------------------------------------------------------------------
83 | # Rules for buildStep: compile
84 | ifeq ($(TYPE_IMAGE), DEBUG_RUN)
85 | else
86 | endif
87 |
88 | # ------------------------------------------------------------------------------------
89 | # Rules for buildStep: assemble
90 | ifeq ($(TYPE_IMAGE), DEBUG_RUN)
91 | ${OBJECTDIR}/_ext/1472/L1Demo-sam.o: ../L1Demo-sam.s nbproject/Makefile-${CND_CONF}.mk
92 | @${MKDIR} ${OBJECTDIR}/_ext/1472
93 | @${RM} ${OBJECTDIR}/_ext/1472/L1Demo-sam.o.d
94 | @${RM} ${OBJECTDIR}/_ext/1472/L1Demo-sam.o
95 | ${MP_CC} $(MP_EXTRA_AS_PRE) ../L1Demo-sam.s -o ${OBJECTDIR}/_ext/1472/L1Demo-sam.o -c -mcpu=$(MP_PROCESSOR_OPTION) -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -omf=elf -I".." -I"." -Wa,-MD,"${OBJECTDIR}/_ext/1472/L1Demo-sam.o.d",--defsym=__MPLAB_BUILD=1,--defsym=__ICD2RAM=1,--defsym=__MPLAB_DEBUG=1,--defsym=__DEBUG=1,--defsym=__MPLAB_DEBUGGER_PK3=1,-g,--no-relax,-g$(MP_EXTRA_AS_POST)
96 | @${FIXDEPS} "${OBJECTDIR}/_ext/1472/L1Demo-sam.o.d" $(SILENT) -rsi ${MP_CC_DIR}../
97 |
98 | else
99 | ${OBJECTDIR}/_ext/1472/L1Demo-sam.o: ../L1Demo-sam.s nbproject/Makefile-${CND_CONF}.mk
100 | @${MKDIR} ${OBJECTDIR}/_ext/1472
101 | @${RM} ${OBJECTDIR}/_ext/1472/L1Demo-sam.o.d
102 | @${RM} ${OBJECTDIR}/_ext/1472/L1Demo-sam.o
103 | ${MP_CC} $(MP_EXTRA_AS_PRE) ../L1Demo-sam.s -o ${OBJECTDIR}/_ext/1472/L1Demo-sam.o -c -mcpu=$(MP_PROCESSOR_OPTION) -omf=elf -I".." -I"." -Wa,-MD,"${OBJECTDIR}/_ext/1472/L1Demo-sam.o.d",--defsym=__MPLAB_BUILD=1,-g,--no-relax,-g$(MP_EXTRA_AS_POST)
104 | @${FIXDEPS} "${OBJECTDIR}/_ext/1472/L1Demo-sam.o.d" $(SILENT) -rsi ${MP_CC_DIR}../
105 |
106 | endif
107 |
108 | # ------------------------------------------------------------------------------------
109 | # Rules for buildStep: assemblePreproc
110 | ifeq ($(TYPE_IMAGE), DEBUG_RUN)
111 | else
112 | endif
113 |
114 | # ------------------------------------------------------------------------------------
115 | # Rules for buildStep: link
116 | ifeq ($(TYPE_IMAGE), DEBUG_RUN)
117 | dist/${CND_CONF}/${IMAGE_TYPE}/L1Demo-asm.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk
118 | @${MKDIR} dist/${CND_CONF}/${IMAGE_TYPE}
119 | ${MP_CC} $(MP_EXTRA_LD_PRE) -o dist/${CND_CONF}/${IMAGE_TYPE}/L1Demo-asm.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX} ${OBJECTFILES_QUOTED_IF_SPACED} -mcpu=$(MP_PROCESSOR_OPTION) -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -omf=elf -Wl,--local-stack,--defsym=__MPLAB_BUILD=1,--defsym=__ICD2RAM=1,--defsym=__MPLAB_DEBUG=1,--defsym=__DEBUG=1,--defsym=__MPLAB_DEBUGGER_PK3=1,$(MP_LINKER_FILE_OPTION),--stack=16,--check-sections,--data-init,--pack-data,--handles,--isr,--no-gc-sections,--fill-upper=0,--stackguard=16,--library-path="..",--library-path=".",--no-force-link,--smart-io,-Map="${DISTDIR}/L1Demo-asm.X.${IMAGE_TYPE}.map",--report-mem$(MP_EXTRA_LD_POST)
120 |
121 | else
122 | dist/${CND_CONF}/${IMAGE_TYPE}/L1Demo-asm.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk
123 | @${MKDIR} dist/${CND_CONF}/${IMAGE_TYPE}
124 | ${MP_CC} $(MP_EXTRA_LD_PRE) -o dist/${CND_CONF}/${IMAGE_TYPE}/L1Demo-asm.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX} ${OBJECTFILES_QUOTED_IF_SPACED} -mcpu=$(MP_PROCESSOR_OPTION) -omf=elf -Wl,--local-stack,--defsym=__MPLAB_BUILD=1,$(MP_LINKER_FILE_OPTION),--stack=16,--check-sections,--data-init,--pack-data,--handles,--isr,--no-gc-sections,--fill-upper=0,--stackguard=16,--library-path="..",--library-path=".",--no-force-link,--smart-io,-Map="${DISTDIR}/L1Demo-asm.X.${IMAGE_TYPE}.map",--report-mem$(MP_EXTRA_LD_POST)
125 | ${MP_CC_DIR}\\xc16-bin2hex dist/${CND_CONF}/${IMAGE_TYPE}/L1Demo-asm.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX} -a -omf=elf
126 |
127 | endif
128 |
129 |
130 | # Subprojects
131 | .build-subprojects:
132 |
133 |
134 | # Subprojects
135 | .clean-subprojects:
136 |
137 | # Clean Targets
138 | .clean-conf: ${CLEAN_SUBPROJECTS}
139 | ${RM} -r build/default
140 | ${RM} -r dist/default
141 |
142 | # Enable dependency checking
143 | .dep.inc: .depcheck-impl
144 |
145 | DEPFILES=$(shell mplabwildcard ${POSSIBLE_DEPFILES})
146 | ifneq (${DEPFILES},)
147 | include ${DEPFILES}
148 | endif
149 |
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/clut/main.c:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 | #include
4 | #include
5 | #include
6 | #include
7 |
8 | #define FCY 16000000UL // Instruction cycle frequency, Hz
9 | #include
10 |
11 | _CONFIG1(FWDTEN_OFF & GWRP_OFF & GCP_OFF & JTAGEN_OFF)
12 | _CONFIG2(POSCMOD_HS & FCKSM_CSDCMD & FNOSC_PRIPLL & PLL96MHZ_ON & PLLDIV_DIV2)
13 | _CONFIG3(ALTPMP_ALTPMPEN & SOSCSEL_EC)
14 |
15 | /*
16 | To change resolutions, use an X modeline generator like:
17 | http://xtiming.sourceforge.net/cgi-bin/xtiming.pl
18 | For example, 80x480@60Hz produces
19 | Modeline "80x480@61" 4.93 80 112 128 160 480 490 495 505
20 | Then we convert it to the values we need:
21 |
22 | 4.93 is the pixel clock in MHz, we need to set CLOCKDIV to match. To pick a
23 | divisor, use page 147 of the data sheet or, uh, this perl one-liner to
24 | generate all of them and pick one that's close:
25 | perl -e '$d = 1; $x = 0; while($x < 128) { printf "%s %.2f\n",$x,96/$d;if($x < 64) { $d += 0.25; } elsif($x < 96) { $d += 0.50 } else { $d += 1 }; $x++}'
26 |
27 | The differences between: 80 112 128 160 480
28 | are H-porch, H-Pulse, H-width
29 | The differences between: 480 490 495 505
30 | are V-porch, V-Pulse, V-width
31 |
32 | Once these values are in, the monitor will display it but it will probably
33 | be misaligned (especially vertically). Play with VENST_FUDGE and
34 | HENST_FUDGE to fix this.
35 | */
36 |
37 | #define HOR_RES 640UL
38 | #define VER_RES 480UL
39 | #define HOR_FRONT_PORCH 16
40 | #define HOR_PULSE_WIDTH 96
41 | #define HOR_BACK_PORCH 48
42 | #define VER_FRONT_PORCH 10
43 | #define VER_PULSE_WIDTH 2
44 | #define VER_BACK_PORCH 33
45 | #define BPP 1
46 | #define CLOCKDIV 11
47 | #define VENST_FUDGE 0
48 | #define HENST_FUDGE 0
49 | #define VSPOL 0 /* sync polarities */
50 | #define HSPOL 0
51 |
52 | #define CHR_FGCOLOR 0x5000
53 | #define CHR_BGCOLOR 0x5100
54 | #define CHR_FONTBASE 0x5200
55 | #define CHR_PRINTCHAR 0x5300
56 | #define CHR_TXTAREASTART 0x5800
57 | #define CHR_TXTAREAEND 0x5900
58 | #define CHR_PRINTPOS 0x5A00
59 | #define RCC_SRCADDR 0x6200
60 | #define RCC_DESTADDR 0x6300
61 | #define RCC_RECTSIZE 0x6400
62 | #define RCC_COLOR 0x6600
63 | #define RCC_STARTCOPY 0x6700
64 | #define IPU_SRCADDR 0x7100
65 | #define IPU_DESTADDR 0x7200
66 | #define IPU_DECOMPRESS 0x7400
67 |
68 | #define GFX_BUFFER_SIZE (HOR_RES * VER_RES / (8/BPP))
69 | __eds__ uint8_t GFXDisplayBuffer[2][GFX_BUFFER_SIZE] __attribute__((eds, section("DISPLAY"), address(0x1000)));
70 |
71 | void config_graphics(void) {
72 | _G1CLKSEL = 1;
73 | _GCLKDIV = CLOCKDIV;
74 |
75 | G1DPADRL = (unsigned long)(GFXDisplayBuffer) & 0xFFFF;
76 | G1DPADRH = (unsigned long)(GFXDisplayBuffer) >>16 & 0xFF;
77 | G1W1ADRL = (unsigned long)(GFXDisplayBuffer) & 0xFFFF;
78 | G1W1ADRH = (unsigned long)(GFXDisplayBuffer) >>16 & 0xFF;
79 | G1W2ADRL = (unsigned long)(GFXDisplayBuffer) & 0xFFFF;
80 | G1W2ADRH = (unsigned long)(GFXDisplayBuffer) >>16 & 0xFF;
81 |
82 | _GDBEN = 0xFFFF;
83 |
84 | // Using PIC24F manual section 43 page 37-38
85 | _DPMODE = 1; /* TFT */
86 | _GDBEN = 0xFFFF;
87 | _DPW = _PUW = HOR_RES; // Work area and FB size so GPU works
88 | _DPH = _PUH = VER_RES;
89 | _DPWT = HOR_FRONT_PORCH + HOR_PULSE_WIDTH + HOR_BACK_PORCH + HOR_RES;
90 | _DPHT = VER_FRONT_PORCH + VER_PULSE_WIDTH + VER_BACK_PORCH + VER_RES;
91 | _DPCLKPOL = 0;
92 | _DPENOE = 0;
93 | _DPENPOL = 0;
94 | _DPVSOE = 1;
95 | _DPHSOE = 1;
96 | _DPVSPOL = VSPOL;
97 | _DPHSPOL = HSPOL;
98 | _ACTLINE = _VENST = VER_FRONT_PORCH + VER_PULSE_WIDTH + VER_BACK_PORCH - VENST_FUDGE;
99 | _ACTPIX = _HENST = HOR_FRONT_PORCH + HOR_PULSE_WIDTH + HOR_BACK_PORCH - HENST_FUDGE;
100 | _VSST = VER_FRONT_PORCH;
101 | _HSST = HOR_FRONT_PORCH;
102 | _VSLEN = VER_PULSE_WIDTH;
103 | _HSLEN = HOR_PULSE_WIDTH;
104 | _DPPWROE = 0;
105 | _DPPINOE = 1;
106 | _DPPOWER = 1;
107 | _DPBPP = _PUBPP = BPP / 2;
108 |
109 |
110 | // _DPTEST = 2; /* Uncomment for test patterns */
111 |
112 | _G1EN = 1;
113 | __delay_ms(1);
114 | }
115 |
116 | void rcc_color(char color) {
117 | while(_CMDFUL) continue;
118 | G1CMDL = color;
119 | G1CMDH = RCC_COLOR;
120 | Nop();
121 | }
122 |
123 | void rcc_setdest(__eds__ uint8_t *buf) {
124 | while(!_CMDMPT) continue; // Wait for GPU to finish drawing
125 | G1W2ADRL = (unsigned long)(buf);
126 | G1W2ADRH = (unsigned long)(buf);
127 | }
128 |
129 | void gpu_setfb(__eds__ uint8_t *buf) {
130 | while(!_CMDMPT) continue; // Wait for GPU to finish drawing
131 | G1DPADRL = (unsigned long)(buf);
132 | G1DPADRH = (unsigned long)(buf);
133 | }
134 |
135 | void rcc_draw(uint16_t x, uint16_t y, uint16_t w, uint16_t h) {
136 | // destination
137 | while(_CMDFUL) continue;
138 | G1CMDL = x + y*HOR_RES;
139 | G1CMDH = RCC_DESTADDR | (x + y*HOR_RES)>>16;
140 | Nop();
141 |
142 | // size
143 | while(_CMDFUL) continue;
144 | G1CMDL = (w<<12) | h;
145 | G1CMDH = RCC_RECTSIZE | (w>>4);
146 | Nop();
147 |
148 | // go!
149 | while(_CMDFUL) continue;
150 | G1CMDL = 0xC<<3;
151 | G1CMDH = RCC_STARTCOPY;
152 | Nop();
153 | }
154 |
155 | void blank_background() {
156 | rcc_color(0);
157 | rcc_draw(0, 0, HOR_RES, VER_RES);
158 | }
159 |
160 | void config_clut() {
161 | _CLUTADR = 0; // set 0 to black
162 | _CLUTRWEN = 1;
163 | G1CLUTWR = 0;
164 | while(_CLUTBUSY) continue;
165 | _CLUTADR = 1; // set 1 to blue
166 | G1CLUTWR = 0xFF;
167 | while(_CLUTBUSY) continue;
168 | _CLUTRWEN = 0;
169 | _CLUTEN = 1; // let 'er rip!
170 | }
171 |
172 | void clut_set(int index, int color) {
173 | _CLUTADR = index;
174 | _CLUTRWEN = 1;
175 | G1CLUTWR = color;
176 | while(_CLUTBUSY) continue;
177 | _CLUTRWEN = 0;
178 | }
179 |
180 |
181 | int colors[VER_FRONT_PORCH + VER_PULSE_WIDTH + VER_BACK_PORCH + VER_RES];
182 | void calc_colors() {
183 | int x;
184 | for(x = 0; x < sizeof(colors)/sizeof(colors[0]); x++) {
185 | colors[x] = rand();
186 | }
187 | }
188 |
189 | void __attribute__((interrupt, auto_psv))_GFX1Interrupt(void) {
190 | static int lines = 0;
191 | static int syncs = 0;
192 | if(_VMRGNIF) { /* on a vertical sync, flip buffers every 60hz */
193 | lines = 0;
194 | syncs++;
195 | gpu_setfb(GFXDisplayBuffer[(syncs / 60) % 2]);
196 | _VMRGNIF = 0;
197 | } else if(_HMRGNIF) { /* on each horizontal sync, change clut */
198 | clut_set(1, colors[lines]);
199 | // clut_set(1, rand()); // madness!
200 | lines++;
201 | _HMRGNIF = 0;
202 | }
203 | _GFX1IF = 0;
204 | }
205 |
206 | int main(void) {
207 | int x;
208 | //OSCCON = 0x0000;
209 |
210 | ANSB = 0x0000;
211 | ANSC = 0x0000;
212 | ANSD = 0x0000;
213 | ANSF = 0x0000;
214 | ANSG = 0x0000;
215 | //TRISE = 0x0000;
216 |
217 | TRISB = 0x0000;
218 |
219 | config_graphics();
220 | config_clut();
221 | calc_colors();
222 |
223 | // clear buffers
224 | rcc_setdest(GFXDisplayBuffer[0]);
225 | blank_background();
226 | rcc_setdest(GFXDisplayBuffer[1]);
227 | blank_background();
228 |
229 | // draw alternating lines in our two buffers
230 | rcc_setdest(GFXDisplayBuffer[0]);
231 | rcc_color(1);
232 | for(x = 0; x < VER_RES; x += 2) {
233 | rcc_draw(0, x, HOR_RES, 1);
234 | }
235 | rcc_color(0);
236 | rcc_draw(HOR_RES - 1, 0, 1, VER_RES);
237 | rcc_color(1);
238 | rcc_setdest(GFXDisplayBuffer[1]);
239 | for(x = 1; x < VER_RES; x += 2) {
240 | rcc_draw(0, x, HOR_RES, 1);
241 | }
242 | rcc_color(0);
243 | rcc_draw(HOR_RES - 1, 0, 1, VER_RES);
244 | while(!_CMDMPT) continue; // Wait for GPU to finish drawing
245 |
246 | _VMRGNIF = 0;
247 | _HMRGNIF = 0;
248 | _HMRGNIE = 1;
249 | _VMRGNIE = 1;
250 | _GFX1IE = 1;
251 |
252 | while (1) {
253 | }
254 |
255 | return 0;
256 | }
257 |
--------------------------------------------------------------------------------
/L1Demo-PCB/L1Demoscene_panelized/pnl_bottom_soldermask.gbs:
--------------------------------------------------------------------------------
1 | G75*
2 | G70*
3 | %OFA0B0*%
4 | %FSLAX25Y25*%
5 | %IPPOS*%
6 | %LPD*%
7 | %AMOC8*
8 | 5,1,8,0,0,1.08239X$1,22.5*
9 | %
10 | %ADD19C,0.05120*%
11 | %ADD39C,0.09000*%
12 | %ADD42R,0.05550X0.05550*%
13 | %ADD50C,0.03940*%
14 | %ADD51C,0.05550*%
15 | %ADD70C,0.20400*%
16 | %ADD76C,0.07800*%
17 | %ADD88C,0.15000*%
18 | X0010000Y0010000D02*
19 | G75*
20 | %LPD*%
21 | D76*
22 | X0022000Y0017000D03*
23 | X0032000Y0017000D03*
24 | X0042000Y0017000D03*
25 | X0052000Y0017000D03*
26 | X0062000Y0017000D03*
27 | X0072000Y0017000D03*
28 | X0170000Y0060940D03*
29 | X0170000Y0069960D03*
30 | X0178000Y0074450D03*
31 | X0186000Y0069960D03*
32 | X0178000Y0065430D03*
33 | X0186000Y0060940D03*
34 | X0186000Y0078980D03*
35 | X0178000Y0083460D03*
36 | X0186000Y0087990D03*
37 | X0178000Y0092480D03*
38 | X0186000Y0097010D03*
39 | X0178000Y0101500D03*
40 | X0170000Y0097010D03*
41 | X0170000Y0087990D03*
42 | X0170000Y0078980D03*
43 | D70*
44 | X0178000Y0030790D03*
45 | X0178000Y0129210D03*
46 | D39*
47 | X0174320Y0155310D03*
48 | X0174320Y0165160D03*
49 | X0194000Y0175000D03*
50 | X0174320Y0184840D03*
51 | X0174320Y0194690D03*
52 | D19*
53 | X0194000Y0194690D03*
54 | X0203850Y0194690D03*
55 | X0174320Y0175000D03*
56 | X0194000Y0155310D03*
57 | X0203850Y0155310D03*
58 | D42*
59 | X0103000Y0189000D03*
60 | X0093000Y0199000D03*
61 | X0057000Y0199000D03*
62 | D51*
63 | X0047000Y0199000D03*
64 | X0093000Y0189000D03*
65 | X0103000Y0199000D03*
66 | X0113000Y0199000D03*
67 | X0123000Y0199000D03*
68 | X0133000Y0199000D03*
69 | X0133000Y0189000D03*
70 | X0123000Y0189000D03*
71 | X0113000Y0189000D03*
72 | D50*
73 | X0016000Y0182910D03*
74 | X0016000Y0171090D03*
75 | X0206850Y0010000D02*
76 | G75*
77 | %LPD*%
78 | D76*
79 | X0218850Y0017000D03*
80 | X0228850Y0017000D03*
81 | X0238850Y0017000D03*
82 | X0248850Y0017000D03*
83 | X0258850Y0017000D03*
84 | X0268850Y0017000D03*
85 | X0366850Y0060940D03*
86 | X0366850Y0069960D03*
87 | X0374850Y0074450D03*
88 | X0382850Y0069960D03*
89 | X0374850Y0065430D03*
90 | X0382850Y0060940D03*
91 | X0382850Y0078980D03*
92 | X0374850Y0083460D03*
93 | X0382850Y0087990D03*
94 | X0374850Y0092480D03*
95 | X0382850Y0097010D03*
96 | X0374850Y0101500D03*
97 | X0366850Y0097010D03*
98 | X0366850Y0087990D03*
99 | X0366850Y0078980D03*
100 | D70*
101 | X0374850Y0030790D03*
102 | X0374850Y0129210D03*
103 | D39*
104 | X0371170Y0155310D03*
105 | X0371170Y0165160D03*
106 | X0390850Y0175000D03*
107 | X0371170Y0184840D03*
108 | X0371170Y0194690D03*
109 | D19*
110 | X0390850Y0194690D03*
111 | X0400700Y0194690D03*
112 | X0371170Y0175000D03*
113 | X0390850Y0155310D03*
114 | X0400700Y0155310D03*
115 | D42*
116 | X0299850Y0189000D03*
117 | X0289850Y0199000D03*
118 | X0253850Y0199000D03*
119 | D51*
120 | X0243850Y0199000D03*
121 | X0289850Y0189000D03*
122 | X0299850Y0199000D03*
123 | X0309850Y0199000D03*
124 | X0319850Y0199000D03*
125 | X0329850Y0199000D03*
126 | X0329850Y0189000D03*
127 | X0319850Y0189000D03*
128 | X0309850Y0189000D03*
129 | D50*
130 | X0212850Y0182910D03*
131 | X0212850Y0171090D03*
132 | X0403700Y0010000D02*
133 | G75*
134 | %LPD*%
135 | D76*
136 | X0415700Y0017000D03*
137 | X0425700Y0017000D03*
138 | X0435700Y0017000D03*
139 | X0445700Y0017000D03*
140 | X0455700Y0017000D03*
141 | X0465700Y0017000D03*
142 | X0563700Y0060940D03*
143 | X0563700Y0069960D03*
144 | X0571700Y0074450D03*
145 | X0579700Y0069960D03*
146 | X0571700Y0065430D03*
147 | X0579700Y0060940D03*
148 | X0579700Y0078980D03*
149 | X0571700Y0083460D03*
150 | X0579700Y0087990D03*
151 | X0571700Y0092480D03*
152 | X0579700Y0097010D03*
153 | X0571700Y0101500D03*
154 | X0563700Y0097010D03*
155 | X0563700Y0087990D03*
156 | X0563700Y0078980D03*
157 | D70*
158 | X0571700Y0030790D03*
159 | X0571700Y0129210D03*
160 | D39*
161 | X0568020Y0155310D03*
162 | X0568020Y0165160D03*
163 | X0587700Y0175000D03*
164 | X0568020Y0184840D03*
165 | X0568020Y0194690D03*
166 | D19*
167 | X0587700Y0194690D03*
168 | X0597550Y0194690D03*
169 | X0568020Y0175000D03*
170 | X0587700Y0155310D03*
171 | X0597550Y0155310D03*
172 | D42*
173 | X0496700Y0189000D03*
174 | X0486700Y0199000D03*
175 | X0450700Y0199000D03*
176 | D51*
177 | X0440700Y0199000D03*
178 | X0486700Y0189000D03*
179 | X0496700Y0199000D03*
180 | X0506700Y0199000D03*
181 | X0516700Y0199000D03*
182 | X0526700Y0199000D03*
183 | X0526700Y0189000D03*
184 | X0516700Y0189000D03*
185 | X0506700Y0189000D03*
186 | D50*
187 | X0409700Y0182910D03*
188 | X0409700Y0171090D03*
189 | X0600550Y0010000D02*
190 | G75*
191 | %LPD*%
192 | D76*
193 | X0612550Y0017000D03*
194 | X0622550Y0017000D03*
195 | X0632550Y0017000D03*
196 | X0642550Y0017000D03*
197 | X0652550Y0017000D03*
198 | X0662550Y0017000D03*
199 | X0760550Y0060940D03*
200 | X0760550Y0069960D03*
201 | X0768550Y0074450D03*
202 | X0776550Y0069960D03*
203 | X0768550Y0065430D03*
204 | X0776550Y0060940D03*
205 | X0776550Y0078980D03*
206 | X0768550Y0083460D03*
207 | X0776550Y0087990D03*
208 | X0768550Y0092480D03*
209 | X0776550Y0097010D03*
210 | X0768550Y0101500D03*
211 | X0760550Y0097010D03*
212 | X0760550Y0087990D03*
213 | X0760550Y0078980D03*
214 | D70*
215 | X0768550Y0030790D03*
216 | X0768550Y0129210D03*
217 | D39*
218 | X0764870Y0155310D03*
219 | X0764870Y0165160D03*
220 | X0784550Y0175000D03*
221 | X0764870Y0184840D03*
222 | X0764870Y0194690D03*
223 | D19*
224 | X0784550Y0194690D03*
225 | X0794400Y0194690D03*
226 | X0764870Y0175000D03*
227 | X0784550Y0155310D03*
228 | X0794400Y0155310D03*
229 | D42*
230 | X0693550Y0189000D03*
231 | X0683550Y0199000D03*
232 | X0647550Y0199000D03*
233 | D51*
234 | X0637550Y0199000D03*
235 | X0683550Y0189000D03*
236 | X0693550Y0199000D03*
237 | X0703550Y0199000D03*
238 | X0713550Y0199000D03*
239 | X0723550Y0199000D03*
240 | X0723550Y0189000D03*
241 | X0713550Y0189000D03*
242 | X0703550Y0189000D03*
243 | D50*
244 | X0606550Y0182910D03*
245 | X0606550Y0171090D03*
246 | X0797400Y0010000D02*
247 | G75*
248 | %LPD*%
249 | D76*
250 | X0809400Y0017000D03*
251 | X0819400Y0017000D03*
252 | X0829400Y0017000D03*
253 | X0839400Y0017000D03*
254 | X0849400Y0017000D03*
255 | X0859400Y0017000D03*
256 | X0957400Y0060940D03*
257 | X0957400Y0069960D03*
258 | X0965400Y0074450D03*
259 | X0973400Y0069960D03*
260 | X0965400Y0065430D03*
261 | X0973400Y0060940D03*
262 | X0973400Y0078980D03*
263 | X0965400Y0083460D03*
264 | X0973400Y0087990D03*
265 | X0965400Y0092480D03*
266 | X0973400Y0097010D03*
267 | X0965400Y0101500D03*
268 | X0957400Y0097010D03*
269 | X0957400Y0087990D03*
270 | X0957400Y0078980D03*
271 | D70*
272 | X0965400Y0030790D03*
273 | X0965400Y0129210D03*
274 | D39*
275 | X0961720Y0155310D03*
276 | X0961720Y0165160D03*
277 | X0981400Y0175000D03*
278 | X0961720Y0184840D03*
279 | X0961720Y0194690D03*
280 | D19*
281 | X0981400Y0194690D03*
282 | X0991250Y0194690D03*
283 | X0961720Y0175000D03*
284 | X0981400Y0155310D03*
285 | X0991250Y0155310D03*
286 | D42*
287 | X0890400Y0189000D03*
288 | X0880400Y0199000D03*
289 | X0844400Y0199000D03*
290 | D51*
291 | X0834400Y0199000D03*
292 | X0880400Y0189000D03*
293 | X0890400Y0199000D03*
294 | X0900400Y0199000D03*
295 | X0910400Y0199000D03*
296 | X0920400Y0199000D03*
297 | X0920400Y0189000D03*
298 | X0910400Y0189000D03*
299 | X0900400Y0189000D03*
300 | D50*
301 | X0803400Y0182910D03*
302 | X0803400Y0171090D03*
303 | X0994250Y0010000D02*
304 | G75*
305 | %LPD*%
306 | D76*
307 | X1006250Y0017000D03*
308 | X1016250Y0017000D03*
309 | X1026250Y0017000D03*
310 | X1036250Y0017000D03*
311 | X1046250Y0017000D03*
312 | X1056250Y0017000D03*
313 | X1154250Y0060940D03*
314 | X1154250Y0069960D03*
315 | X1162250Y0074450D03*
316 | X1170250Y0069960D03*
317 | X1162250Y0065430D03*
318 | X1170250Y0060940D03*
319 | X1170250Y0078980D03*
320 | X1162250Y0083460D03*
321 | X1170250Y0087990D03*
322 | X1162250Y0092480D03*
323 | X1170250Y0097010D03*
324 | X1162250Y0101500D03*
325 | X1154250Y0097010D03*
326 | X1154250Y0087990D03*
327 | X1154250Y0078980D03*
328 | D70*
329 | X1162250Y0030790D03*
330 | X1162250Y0129210D03*
331 | D39*
332 | X1158570Y0155310D03*
333 | X1158570Y0165160D03*
334 | X1178250Y0175000D03*
335 | X1158570Y0184840D03*
336 | X1158570Y0194690D03*
337 | D19*
338 | X1178250Y0194690D03*
339 | X1188100Y0194690D03*
340 | X1158570Y0175000D03*
341 | X1178250Y0155310D03*
342 | X1188100Y0155310D03*
343 | D42*
344 | X1087250Y0189000D03*
345 | X1077250Y0199000D03*
346 | X1041250Y0199000D03*
347 | D51*
348 | X1031250Y0199000D03*
349 | X1077250Y0189000D03*
350 | X1087250Y0199000D03*
351 | X1097250Y0199000D03*
352 | X1107250Y0199000D03*
353 | X1117250Y0199000D03*
354 | X1117250Y0189000D03*
355 | X1107250Y0189000D03*
356 | X1097250Y0189000D03*
357 | D50*
358 | X1000250Y0182910D03*
359 | X1000250Y0171090D03*
360 | D88*
361 | X0069054Y-009685D03*
362 | X0069054Y0226535D03*
363 | X1132046Y-009685D03*
364 | M02*
365 |
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/testgfx.h:
--------------------------------------------------------------------------------
1 | __eds__ uint8_t gfx_compressed[] __attribute__((space(eds) section("IMAGE"), address(0x4000))) = {
2 | 0x63,0x60,0x18,0x5,0x54,0x1,0x1,0xa1,0xa2,
3 | 0x98,0x42,0xa1,0xa1,0x8c,0x68,0x62,0x40,0x21,
4 | 0x74,0x85,0x21,0xa1,0x2b,0x57,0x65,0xa1,0x8a,
5 | 0x39,0x84,0x2e,0x5d,0xb5,0x6a,0x55,0x28,0xaa,
6 | 0x69,0x53,0x81,0x42,0xab,0xc2,0x50,0xc,0x4,
7 | 0xea,0x4,0x82,0x28,0x56,0x64,0xad,0x60,0x65,
8 | 0xab,0xa2,0x90,0x6d,0xe,0x58,0xa,0x15,0x43,
9 | 0xb2,0x25,0x60,0x25,0x54,0xc,0x49,0x61,0x8,
10 | 0x58,0x68,0xd5,0xac,0x55,0x61,0x8,0x13,0x21,
11 | 0xc6,0x1,0x1,0x92,0x13,0xa7,0x42,0x74,0x2e,
12 | 0x45,0x72,0xa2,0xc3,0x52,0x88,0x61,0x4b,0x91,
13 | 0x9c,0x8,0xb2,0x36,0x2b,0x14,0x2c,0x6,0x77,
14 | 0x22,0xc8,0x5a,0xa0,0xdb,0xc0,0x52,0xac,0x48,
15 | 0xd6,0x2,0x6d,0x4,0x1b,0x21,0x8a,0x24,0x26,
16 | 0xa,0xb5,0x2a,0xc,0x61,0x2d,0x58,0x4f,0x28,
17 | 0x52,0x38,0x0,0xc5,0xa2,0x40,0xcc,0x90,0x95,
18 | 0x70,0x4b,0x40,0xe6,0x80,0xc5,0x90,0x2c,0x1,
19 | 0x89,0x85,0xc1,0x83,0x47,0x14,0x55,0xc,0x6c,
20 | 0xa0,0x28,0xdc,0x79,0x10,0x16,0xc8,0xc0,0x30,
21 | 0xb8,0x18,0x2b,0x9c,0x5,0x15,0xc3,0x34,0x19,
22 | 0xe4,0x64,0x98,0x97,0x60,0xae,0x2,0x89,0x45,
23 | 0xa1,0xb9,0x94,0x61,0xa,0x42,0xc,0xce,0x9c,
24 | 0x8a,0xf0,0x25,0x36,0xb1,0xa9,0x98,0x62,0x70,
25 | 0x5f,0x22,0x89,0x85,0xc0,0xdd,0x32,0x15,0x1e,
26 | 0x42,0xa1,0xab,0x90,0xc4,0x20,0x21,0x14,0x30,
27 | 0x15,0x59,0x2c,0xb,0x1c,0x87,0xa1,0x88,0xc0,
28 | 0x7,0xc9,0x86,0xb2,0x82,0x92,0x2f,0x22,0xd6,
29 | 0xa7,0x82,0x63,0x17,0x9a,0x2e,0xa1,0xbe,0x4,
30 | 0xa7,0x16,0x50,0x7a,0x6,0xa7,0x6,0x46,0x84,
31 | 0x18,0x30,0x19,0x80,0x13,0x57,0x18,0x72,0x4a,
32 | 0x8b,0x2,0xa7,0xc1,0xac,0x50,0x94,0x14,0xb9,
33 | 0xa,0x39,0xf9,0x3a,0x4c,0x45,0x88,0xc1,0xd3,
34 | 0x10,0xc4,0x24,0x30,0x80,0xa7,0xb5,0x10,0xb8,
35 | 0xe6,0x28,0x51,0x44,0x8e,0x81,0x2b,0x43,0xa4,
36 | 0xe7,0x50,0xa8,0xc2,0xa8,0x50,0xe4,0x4c,0x9,
37 | 0x55,0x86,0x9c,0x69,0x20,0xa,0xc3,0x50,0x72,
38 | 0x2b,0xc4,0xfb,0x28,0xca,0x40,0xd9,0x77,0x25,
39 | 0x30,0x45,0x63,0x66,0x73,0x8c,0x7c,0x1e,0x12,
40 | 0x8a,0xa6,0x73,0xd8,0x82,0x50,0xcc,0x82,0xcf,
41 | 0x1,0x14,0x22,0x18,0x85,0x21,0xa8,0x28,0x40,
42 | 0xd,0x13,0x50,0x1e,0x43,0x2f,0xf,0x43,0x21,
43 | 0x31,0x81,0xa2,0x12,0x92,0x30,0x50,0xf5,0x43,
44 | 0x13,0x4b,0x16,0xb2,0x7e,0x78,0x2,0x42,0x52,
45 | 0x89,0x94,0xa8,0xe0,0xa,0x43,0x57,0x21,0x9,
46 | 0x32,0x22,0xdc,0x82,0x9e,0xac,0x42,0x90,0x34,
47 | 0xc3,0x53,0x6e,0xe8,0x52,0xcc,0x64,0xa,0xcd,
48 | 0x4,0x10,0x85,0xac,0x88,0x64,0x1,0x37,0x53,
49 | 0x14,0xa9,0xfc,0x87,0xe9,0xf,0x43,0x4e,0x2c,
50 | 0x4b,0xd1,0xc5,0x80,0x81,0x8,0xb5,0x3d,0xa,
51 | 0x29,0x6d,0x85,0x60,0x13,0x5b,0x8a,0x21,0xe6,
52 | 0x0,0xb3,0x19,0x49,0x2c,0x60,0x2a,0x86,0xbd,
53 | 0x88,0xdc,0x15,0x86,0xa9,0xc,0xe1,0x66,0x44,
54 | 0x86,0xc3,0xcc,0x6f,0x59,0x48,0x49,0x3f,0x0,
55 | 0x56,0xf5,0x20,0x45,0x3e,0xb4,0x86,0x42,0x8e,
56 | 0x64,0x88,0xd6,0x2c,0x94,0x28,0xe,0xc1,0x92,
57 | 0x1,0xc1,0x5a,0xb3,0x50,0x84,0x20,0x45,0x44,
58 | 0x18,0x4a,0x82,0x81,0x68,0x45,0xcd,0x80,0xa1,
59 | 0xa8,0x8e,0x45,0x24,0x84,0x30,0x94,0x4,0x8,
60 | 0xae,0x71,0xb2,0x50,0x53,0x2a,0xa4,0x22,0x43,
61 | 0xd5,0xa,0x2e,0xc1,0xb0,0x8a,0xa1,0x5a,0xb,
62 | 0x29,0xe9,0x50,0x93,0x3e,0x44,0xc,0xb5,0xd0,
63 | 0x80,0xd7,0xbd,0xa2,0x68,0xf6,0x82,0xc3,0x80,
64 | 0x15,0xbd,0x2e,0x7,0x19,0xc9,0x8a,0xea,0x37,
65 | 0x34,0x23,0xe1,0x89,0x17,0xa9,0xbc,0x42,0x44,
66 | 0x24,0xa2,0xf8,0x83,0xa7,0x29,0xe4,0xf2,0x2f,
67 | 0x4,0x2e,0x88,0xe4,0x45,0x44,0x32,0xd,0x45,
68 | 0x29,0xfd,0xd0,0x8a,0x67,0x70,0x5e,0x5f,0xb9,
69 | 0xa,0xbd,0x15,0xe2,0x0,0xcd,0xf,0x28,0xcd,
70 | 0x9a,0x0,0xa8,0x3d,0xa1,0xa8,0xe5,0xe4,0x52,
71 | 0xb4,0x34,0x9,0xb7,0x27,0x8a,0x11,0xad,0x4c,
72 | 0xc1,0x10,0x3,0x1a,0xb9,0x12,0xa9,0x1d,0x81,
73 | 0xdc,0x76,0x12,0xc5,0x68,0x62,0xa1,0x89,0x5,
74 | 0x40,0x9c,0x28,0x86,0x6a,0xc5,0x4a,0x74,0xc7,
75 | 0xc0,0x7c,0x17,0x86,0x6e,0x18,0x8a,0x98,0x3,
76 | 0x96,0x4c,0x8d,0x28,0x12,0xc2,0x50,0x9c,0x8b,
77 | 0x9a,0xb9,0x10,0x3a,0x11,0x81,0x15,0x80,0x28,
78 | 0x4c,0xe0,0xe9,0x15,0xae,0xc,0x91,0xe1,0xe0,
79 | 0xca,0xc2,0x10,0xb9,0xb,0x5e,0x16,0x20,0xe5,
80 | 0xc1,0x50,0x2c,0x2d,0xbd,0xa9,0x18,0x49,0x8,
81 | 0x96,0xd8,0x50,0xaa,0x32,0x87,0xa5,0xe8,0x49,
82 | 0x12,0x5a,0x75,0x67,0xa1,0x16,0xda,0x60,0x31,
83 | 0xb4,0x22,0x1f,0x24,0x86,0x96,0x3f,0xc0,0xe6,
84 | 0xa1,0xd7,0x8b,0x40,0x7b,0xa3,0x42,0x31,0x2b,
85 | 0x15,0xcc,0xea,0x33,0x4,0xa3,0x4e,0x1,0x85,
86 | 0xc1,0x20,0xab,0x65,0x1d,0x30,0xdb,0x2,0xe0,
87 | 0xf6,0x41,0x28,0x7a,0x62,0xe,0x4d,0x45,0xab,
88 | 0x23,0x21,0x39,0xe,0xa5,0x4c,0x80,0x66,0xe,
89 | 0xa0,0x20,0x2b,0x96,0x94,0x16,0x8a,0x5e,0x29,
90 | 0x20,0xe5,0x6a,0x7,0xa4,0x76,0x13,0x2c,0x74,
91 | 0x3,0x90,0x6a,0x33,0x58,0xe,0x46,0xae,0xf5,
92 | 0xa0,0xd9,0xdf,0x1,0xb9,0x76,0x84,0xe6,0x56,
93 | 0xe4,0xe6,0x1a,0x4c,0x33,0x4c,0x6b,0x18,0x52,
94 | 0x2b,0x2e,0x14,0x5e,0x27,0xaf,0x84,0xa5,0x68,
95 | 0x48,0xb2,0xca,0x2,0x87,0xc1,0x4a,0xa8,0x81,
96 | 0x90,0x64,0x5,0x4a,0xb5,0xd0,0x32,0x1,0x68,
97 | 0x20,0xb8,0x4c,0x84,0xa4,0x34,0x48,0x15,0xb,
98 | 0x34,0x10,0x24,0x6,0x4b,0x69,0x21,0xd0,0xd6,
99 | 0x68,0x8,0x72,0x81,0x6,0xed,0x26,0x85,0x20,
100 | 0x57,0x0,0xd0,0xd6,0xed,0x54,0x94,0xd2,0x7,
101 | 0x5c,0x76,0x20,0x5a,0xc0,0x70,0xbf,0x67,0x21,
102 | 0x9a,0xd6,0x88,0x2e,0xb,0x72,0xcb,0x1b,0x96,
103 | 0x31,0xd0,0xc4,0xc0,0x6,0x32,0x2c,0x45,0x2d,
104 | 0x3f,0x40,0x6,0x82,0xd4,0x89,0xa2,0xe5,0x2,
105 | 0x74,0x75,0x20,0x3,0x41,0xea,0xc4,0xd0,0xaa,
106 | 0x27,0x74,0x3b,0x40,0xfe,0x22,0x4a,0x2c,0x0,
107 | 0x22,0x16,0x85,0x56,0xef,0xc0,0xbb,0x12,0x1,
108 | 0xd0,0xc0,0x1,0x89,0x81,0x7a,0x29,0xe0,0xe8,
109 | 0x83,0x26,0x15,0x90,0x5e,0x58,0xcf,0x5,0x56,
110 | 0x8e,0x80,0xec,0x8,0x80,0x14,0x52,0x40,0xb7,
111 | 0x86,0x22,0xc4,0x20,0xbd,0x23,0xa0,0x9f,0xe0,
112 | 0xbd,0x7,0x58,0x9f,0x8,0x48,0x21,0xc4,0xa0,
113 | 0x7d,0x22,0xa0,0x18,0xd8,0x7a,0x10,0x17,0xd6,
114 | 0x5f,0x41,0x11,0x83,0x6,0x3e,0xac,0x93,0x4,
115 | 0x32,0xa,0xd2,0x25,0x41,0x17,0x83,0x38,0x10,
116 | 0x2e,0x6,0x8a,0x23,0xa8,0xd8,0x14,0xa8,0xb7,
117 | 0x43,0xc0,0x62,0x10,0x7,0xc2,0x82,0x27,0x14,
118 | 0x2e,0x16,0xc6,0x8,0x13,0x83,0x4,0x13,0xd8,
119 | 0x31,0xa1,0x50,0x31,0x30,0x7,0x42,0x65,0x85,
120 | 0x42,0xa3,0xa,0xd6,0xd3,0x3,0xa5,0xaf,0x30,
121 | 0x68,0x9f,0x10,0xd6,0x23,0x9c,0x8a,0x54,0x84,
122 | 0x23,0x77,0x53,0x57,0x21,0xb1,0x45,0x11,0xbd,
123 | 0x69,0x70,0xdf,0x11,0xd6,0x75,0x85,0x66,0x9a,
124 | 0x2c,0x64,0x31,0x68,0xe6,0x82,0x89,0x41,0x82,
125 | 0x67,0x2a,0xa2,0xf9,0x6,0x8f,0x6d,0x68,0x5b,
126 | 0x8a,0x11,0xec,0x35,0x68,0xb3,0x25,0x4,0x51,
127 | 0x7d,0x86,0xae,0x84,0x36,0x8c,0x20,0x39,0x38,
128 | 0x14,0x5a,0x66,0x32,0x22,0x6a,0x6,0x48,0x86,
129 | 0x8,0x80,0x97,0x3b,0xa0,0x1a,0x4,0x5a,0xc3,
130 | 0x20,0x4a,0x18,0x6c,0xbd,0x99,0x0,0x2c,0x8d,
131 | 0x7c,0x6,0x4c,0x65,0xa3,0x60,0x10,0x83,0x90,
132 | 0x50,0x6c,0x7d,0x37,0x2c,0x35,0x2a,0xa6,0x58,
133 | 0xc8,0xd2,0x2c,0x4c,0xad,0xa0,0x7c,0x89,0x6,
134 | 0xa6,0x62,0x8a,0x41,0xf2,0x39,0x3,0x46,0xcb,
135 | 0x0,0x43,0x6c,0x25,0xa6,0x18,0x28,0x3,0x61,
136 | 0x11,0xcb,0xc2,0x62,0x2d,0x36,0xb1,0x28,0x22,
137 | 0xc4,0x10,0xa3,0x37,0xa8,0x62,0x62,0x58,0xc4,
138 | 0x44,0xb1,0x38,0x59,0x14,0xbd,0x9e,0x5f,0x89,
139 | 0xdc,0x1c,0x5,0xf7,0x83,0x41,0xed,0x40,0xb8,
140 | 0x18,0x54,0x24,0x14,0x9a,0xf7,0x81,0x85,0x30,
141 | 0x58,0x64,0x29,0xa2,0xef,0x8,0x53,0x81,0xdc,
142 | 0x9f,0xc,0x40,0x15,0x1,0x97,0x29,0x21,0xa8,
143 | 0x55,0x32,0xb8,0xcc,0x9,0x59,0x85,0x29,0x16,
144 | 0x4a,0x55,0x31,0x56,0x4c,0x3b,0x40,0x5,0x33,
145 | 0xbc,0x15,0x11,0x6,0xa9,0xe5,0x41,0x6e,0x9e,
146 | 0xa,0xef,0x8a,0x43,0x87,0x0,0x19,0xa1,0x8d,
147 | 0x97,0x30,0x44,0x18,0x80,0xca,0x32,0x28,0xf,
148 | 0x52,0xc0,0xc0,0x8a,0x64,0xb0,0x8,0x62,0x30,
149 | 0x2d,0xc,0x1a,0x76,0xc8,0x3d,0x7d,0xf4,0x68,
150 | 0x3,0x55,0x5,0x61,0x58,0xa2,0x1c,0x9b,0xba,
151 | 0x28,0x6c,0x62,0x8c,0x98,0x49,0xd,0x9b,0x58,
152 | 0x16,0x36,0x31,0x56,0xcc,0xb4,0x81,0x4d,0x6c,
153 | 0x15,0x2b,0x81,0x34,0x84,0x2b,0xad,0x11,0x2b,
154 | 0x86,0xde,0xfc,0x20,0x49,0x2c,0x4,0xab,0x58,
155 | 0x16,0xa6,0xd8,0x4a,0xc,0xbf,0x1,0xa3,0x3b,
156 | 0x8c,0x15,0x4b,0x5b,0x98,0x11,0x44,0x8a,0x62,
157 | 0x14,0x39,0x1,0xa8,0xa3,0x3e,0x1,0xac,0xc,
158 | 0xb0,0x74,0x80,0x5e,0xc8,0x44,0x21,0xa7,0xe,
159 | 0x44,0x37,0x5,0x25,0xd1,0x20,0xc6,0xb7,0xe1,
160 | 0x80,0x15,0xd6,0xc7,0x86,0xa7,0x4a,0x90,0xd9,
161 | 0x68,0x69,0x37,0x6c,0x6a,0x56,0x28,0x96,0x3c,
162 | 0x13,0x85,0x3c,0x66,0x4,0x3,0x44,0x8b,0x2d,
163 | 0x85,0x34,0x18,0x90,0x1,0xb8,0x90,0x99,0x8a,
164 | 0x29,0x16,0x1a,0x3a,0x15,0x43,0x4c,0x34,0x4,
165 | 0x55,0x10,0x12,0xc9,0xe0,0xcc,0xf,0x97,0x0,
166 | 0x89,0xb1,0x82,0x9b,0x3,0x59,0xb0,0x82,0x21,
167 | 0xcb,0x1,0x92,0xe0,0x2,0x56,0x22,0x9a,0xda,
168 | 0x51,0x48,0x62,0xac,0xd0,0x31,0xa6,0x28,0x68,
169 | 0xc2,0x84,0x4a,0x41,0xca,0x3f,0x98,0xd8,0x52,
170 | 0x84,0x98,0x28,0x42,0xc,0x9c,0x66,0x1d,0x56,
171 | 0x62,0x8a,0x81,0xb9,0x48,0x62,0xa2,0x24,0x8a,
172 | 0x31,0x62,0x8a,0x45,0x81,0xc5,0x18,0x21,0xd,
173 | 0x2f,0x51,0x48,0x53,0xf,0x53,0xc,0x59,0xdd,
174 | 0x54,0x54,0x75,0x51,0xc8,0x62,0x2b,0x51,0xc4,
175 | 0xb2,0xa0,0x6e,0xe,0x83,0xb7,0x41,0x43,0xb1,
176 | 0x88,0x85,0xac,0x8c,0x82,0xb6,0xc9,0x42,0xe1,
177 | 0x62,0x1,0x90,0x96,0x8e,0xc3,0x52,0x60,0x56,
178 | 0x40,0x12,0x83,0x97,0x49,0x30,0x31,0x6,0x68,
179 | 0x72,0x84,0x26,0x3f,0x88,0x58,0x0,0x23,0xbc,
180 | 0xf6,0x5,0x7a,0x14,0x75,0xfa,0x86,0x15,0x9c,
181 | 0x9c,0xc3,0x30,0xeb,0xd6,0xac,0x50,0x62,0x86,
182 | 0x59,0xb1,0xf6,0x7e,0x1d,0x42,0x69,0x36,0xd0,
183 | 0x2b,0x8a,0xa5,0x4d,0x81,0xe1,0x2,0x7,0xcc,
184 | 0x9,0x2e,0x50,0x7,0x35,0xb,0xbd,0xb1,0x8,
185 | 0x4a,0xa1,0x68,0x45,0x6,0xb8,0xca,0x40,0x2b,
186 | 0x6e,0x20,0x55,0x63,0x28,0xd4,0xbb,0xc8,0x43,
187 | 0x8f,0x90,0xa0,0x84,0x76,0x63,0xa0,0xb5,0x21,
188 | 0x34,0x1a,0xc0,0xe,0x80,0x75,0x81,0x21,0x65,
189 | 0xd5,0x54,0xb0,0xb9,0xb0,0x4a,0x9,0x62,0xc9,
190 | 0x52,0xb0,0xb9,0xf0,0xca,0xb,0x2c,0x6,0xe9,
191 | 0xc6,0x84,0xae,0xc2,0x10,0x73,0x58,0x8a,0x32,
192 | 0x9c,0x3,0xae,0x43,0xa0,0xe3,0x7d,0x4b,0x11,
193 | 0x62,0x8c,0xb0,0x19,0x90,0xa5,0xc8,0xea,0x20,
194 | 0x33,0x25,0xac,0x53,0xe1,0x62,0x61,0x90,0x5e,
195 | 0x2,0x30,0x9a,0x61,0x95,0x11,0x48,0xc,0x5c,
196 | 0xb4,0x85,0x41,0xfa,0x39,0x70,0xb1,0xa5,0x90,
197 | 0xbe,0x2d,0xac,0x32,0x82,0x89,0x81,0xfa,0xea,
198 | 0x8,0x31,0x31,0x68,0x2f,0x7,0x53,0x2c,0x14,
199 | 0x96,0x39,0xa0,0x62,0x21,0x50,0xcf,0xc3,0xf2,
200 | 0xf,0xb4,0xd9,0x90,0xc5,0x8a,0x54,0x69,0x41,
201 | 0xd5,0xc1,0xfa,0x5f,0x70,0xb1,0xa9,0x38,0xc4,
202 | 0x18,0xa0,0x5,0x4,0x2b,0xd4,0x7d,0xf0,0xa,
203 | 0x7b,0x29,0x56,0x31,0xa8,0xde,0x28,0x46,0x7c,
204 | 0x62,0xb0,0xc,0xb,0xed,0x93,0xc1,0xe6,0xe9,
205 | 0xa2,0x90,0xc4,0xa2,0xa0,0x95,0x51,0x18,0xc4,
206 | 0x1f,0xab,0x20,0x7d,0x7c,0xa4,0x36,0x2c,0x6c,
207 | 0xc,0x1c,0x9a,0x6a,0x44,0x91,0xc4,0xa0,0x79,
208 | 0xe,0x92,0x28,0x31,0xc7,0xde,0xb1,0x8b,0x4d,
209 | 0x5d,0x85,0x39,0x7e,0x39,0x15,0x73,0x9c,0x13,
210 | 0x5a,0xa5,0xa0,0xcc,0xca,0x42,0xc5,0xc2,0x18,
211 | 0xb1,0xc,0x21,0xa3,0x8f,0x86,0xa1,0x8e,0x1,
212 | 0x41,0xc6,0x7c,0xc2,0x30,0x5a,0xe5,0x21,0x58,
213 | 0xba,0x69,0xe,0x54,0xeb,0x92,0x39,0x60,0x29,
214 | 0x59,0x2,0xb0,0x17,0x0,0x58,0x7a,0x6,0x18,
215 | 0x62,0xa0,0x52,0x8e,0x11,0xb3,0xf9,0x82,0xd1,
216 | 0xbc,0x82,0x97,0x9a,0x64,0x88,0x85,0xac,0xa2,
217 | 0xae,0x18,0x8e,0x66,0x22,0x51,0x4d,0x4c,0x12,
218 | 0xc4,0xc4,0xc8,0x14,0x43,0xee,0xa5,0xc0,0x9b,
219 | 0x3d,0x50,0x31,0x87,0x50,0x24,0x0,0x1d,0xb5,
220 | 0x8,0x41,0x12,0x82,0xcd,0xff,0x22,0xcf,0x50,
221 | 0x41,0x53,0xbb,0x3,0x7a,0x9b,0x3f,0xc,0x63,
222 | 0xf4,0xf,0x52,0xa4,0xad,0x44,0x17,0x63,0xc4,
223 | 0x2e,0xb6,0x8a,0x18,0x31,0x6c,0xe6,0x61,0xb1,
224 | 0x37,0xc,0x6d,0x10,0x13,0xee,0xe6,0xa9,0xab,
225 | 0x42,0x91,0xc3,0x20,0xc,0x39,0x4c,0x90,0xc2,
226 | 0x25,0x0,0x49,0x28,0x70,0x29,0x75,0x5b,0xde,
227 | 0xb0,0xc2,0x8e,0xa0,0xd8,0x4a,0xac,0x62,0x59,
228 | 0xc4,0x88,0x5,0xd0,0x40,0x8c,0x91,0x38,0x31,
229 | 0xaa,0x66,0x55,0xf8,0x0,0x22,0x6a,0x58,0x61,
230 | 0x29,0x36,0xb2,0x44,0x89,0x6a,0x8,0x85,0x60,
231 | 0x2d,0xae,0x86,0xc2,0xa8,0xc,0x0,
232 | };
233 |
234 |
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/arko rotate/fonts.h:
--------------------------------------------------------------------------------
1 | __eds__ uint8_t FontStart[] __attribute__((space(eds) section("FONTS"))) = {
2 | // classic 8x6 bitmapped font
3 | 0x00, 0x00,
4 | 0x00, 0x00, // first char
5 | 0x7F, 0x00, // last char
6 | 0x08, 0x00, // height
7 | // glyph table
8 | 6, // width 0
9 | 8,2,0,
10 | 6, // width 1
11 | 16,2,0,
12 | 6, // width 2
13 | 24,2,0,
14 | 6, // width 3
15 | 32,2,0,
16 | 6, // width 4
17 | 40,2,0,
18 | 6, // width 5
19 | 48,2,0,
20 | 6, // width 6
21 | 56,2,0,
22 | 6, // width 7
23 | 64,2,0,
24 | 6, // width 8
25 | 72,2,0,
26 | 6, // width 9
27 | 80,2,0,
28 | 6, // width 10
29 | 88,2,0,
30 | 6, // width 11
31 | 96,2,0,
32 | 6, // width 12
33 | 104,2,0,
34 | 6, // width 13
35 | 112,2,0,
36 | 6, // width 14
37 | 120,2,0,
38 | 6, // width 15
39 | 128,2,0,
40 | 6, // width 16
41 | 136,2,0,
42 | 6, // width 17
43 | 144,2,0,
44 | 6, // width 18
45 | 152,2,0,
46 | 6, // width 19
47 | 160,2,0,
48 | 6, // width 20
49 | 168,2,0,
50 | 6, // width 21
51 | 176,2,0,
52 | 6, // width 22
53 | 184,2,0,
54 | 6, // width 23
55 | 192,2,0,
56 | 6, // width 24
57 | 200,2,0,
58 | 6, // width 25
59 | 208,2,0,
60 | 6, // width 26
61 | 216,2,0,
62 | 6, // width 27
63 | 224,2,0,
64 | 6, // width 28
65 | 232,2,0,
66 | 6, // width 29
67 | 240,2,0,
68 | 6, // width 30,
69 | 248,2,0,
70 | 6, // width 31
71 | 0,3,0,
72 | 6, // width 32
73 | 8,3,0,
74 | 6, // width 33
75 | 16,3,0,
76 | 6, // width 34
77 | 24,3,0,
78 | 6, // width 35
79 | 32,3,0,
80 | 6, // width 36
81 | 40,3,0,
82 | 6, // width 37
83 | 48,3,0,
84 | 6, // width 38
85 | 56,3,0,
86 | 6, // width 39
87 | 64,3,0,
88 | 6, // width 40
89 | 72,3,0,
90 | 6, // width 41
91 | 80,3,0,
92 | 6, // width 42
93 | 88,3,0,
94 | 6, // width 43
95 | 96,3,0,
96 | 6, // width 44
97 | 104,3,0,
98 | 6, // width 45
99 | 112,3,0,
100 | 6, // width 46
101 | 120,3,0,
102 | 6, // width 47
103 | 128,3,0,
104 | 6, // width 48
105 | 136,3,0,
106 | 6, // width 49
107 | 144,3,0,
108 | 6, // width 50
109 | 152,3,0,
110 | 6, // width 51
111 | 160,3,0,
112 | 6, // width 52
113 | 168,3,0,
114 | 6, // width 53
115 | 176,3,0,
116 | 6, // width 54
117 | 184,3,0,
118 | 6, // width 55
119 | 192,3,0,
120 | 6, // width 56
121 | 200,3,0,
122 | 6, // width 57
123 | 208,3,0,
124 | 6, // width 58
125 | 216,3,0,
126 | 6, // width 59
127 | 224,3,0,
128 | 6, // width 60
129 | 232,3,0,
130 | 6, // width 61
131 | 240,3,0,
132 | 6, // width 62
133 | 248,3,0,
134 | 6, // width 63
135 | 0,4,0,
136 | 6, // width 64
137 | 8,4,0,
138 | 6, // width 65
139 | 16,4,0,
140 | 6, // width 66
141 | 24,4,0,
142 | 6, // width 67
143 | 32,4,0,
144 | 6, // width 68
145 | 40,4,0,
146 | 6, // width 69
147 | 48,4,0,
148 | 6, // width 70
149 | 56,4,0,
150 | 6, // width 71
151 | 64,4,0,
152 | 6, // width 72
153 | 72,4,0,
154 | 6, // width 73
155 | 80,4,0,
156 | 6, // width 74
157 | 88,4,0,
158 | 6, // width 75
159 | 96,4,0,
160 | 6, // width 76
161 | 104,4,0,
162 | 6, // width 77
163 | 112,4,0,
164 | 6, // width 78
165 | 120,4,0,
166 | 6, // width 79
167 | 128,4,0,
168 | 6, // width 80
169 | 136,4,0,
170 | 6, // width 81
171 | 144,4,0,
172 | 6, // width 82
173 | 152,4,0,
174 | 6, // width 83
175 | 160,4,0,
176 | 6, // width 84
177 | 168,4,0,
178 | 6, // width 85
179 | 176,4,0,
180 | 6, // width 86
181 | 184,4,0,
182 | 6, // width 87
183 | 192,4,0,
184 | 6, // width 88
185 | 200,4,0,
186 | 6, // width 89
187 | 208,4,0,
188 | 6, // width 90
189 | 216,4,0,
190 | 6, // width 91
191 | 224,4,0,
192 | 6, // width 92
193 | 232,4,0,
194 | 6, // width 93
195 | 240,4,0,
196 | 6, // width 94
197 | 248,4,0,
198 | 6, // width 95
199 | 0,5,0,
200 | 6, // width 96
201 | 8,5,0,
202 | 6, // width 97
203 | 16,5,0,
204 | 6, // width 98
205 | 24,5,0,
206 | 6, // width 99
207 | 32,5,0,
208 | 6, // width 100
209 | 40,5,0,
210 | 6, // width 101
211 | 48,5,0,
212 | 6, // width 102
213 | 56,5,0,
214 | 6, // width 103
215 | 64,5,0,
216 | 6, // width 104
217 | 72,5,0,
218 | 6, // width 105
219 | 80,5,0,
220 | 6, // width 106
221 | 88,5,0,
222 | 6, // width 107
223 | 96,5,0,
224 | 6, // width 108
225 | 104,5,0,
226 | 6, // width 109
227 | 112,5,0,
228 | 6, // width 110
229 | 120,5,0,
230 | 6, // width 111
231 | 128,5,0,
232 | 6, // width 112
233 | 136,5,0,
234 | 6, // width 113
235 | 144,5,0,
236 | 6, // width 114
237 | 152,5,0,
238 | 6, // width 115
239 | 160,5,0,
240 | 6, // width 116
241 | 168,5,0,
242 | 6, // width 117
243 | 176,5,0,
244 | 6, // width 118
245 | 184,5,0,
246 | 6, // width 119
247 | 192,5,0,
248 | 6, // width 120
249 | 200,5,0,
250 | 6, // width 121
251 | 208,5,0,
252 | 6, // width 122
253 | 216,5,0,
254 | 6, // width 123
255 | 224,5,0,
256 | 6, // width 124
257 | 232,5,0,
258 | 6, // width 125
259 | 240,5,0,
260 | 6, // width 126
261 | 248,5,0,
262 | 6, // width 127
263 | 0,6,0,
264 | 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // 0x00
265 | 0x1C,0x22,0x36,0x22,0x2A,0x22,0x1C,0x00, // 0x01
266 | 0x1C,0x3E,0x2A,0x3E,0x22,0x3E,0x1C,0x00, // 0x02
267 | 0x00,0x14,0x3E,0x3E,0x3E,0x1C,0x08,0x00, // 0x03
268 | 0x00,0x08,0x1C,0x3E,0x3E,0x1C,0x08,0x00, // 0x04
269 | 0x08,0x1C,0x1C,0x08,0x3E,0x3E,0x08,0x00, // 0x05
270 | 0x00,0x08,0x1C,0x3E,0x3E,0x08,0x1C,0x00, // 0x06
271 | 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // 0x07
272 | 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // 0x08
273 | 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // 0x09
274 | 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // 0x0A
275 | 0x00,0x38,0x30,0x2C,0x12,0x12,0x0C,0x00, // 0x0B
276 | 0x1C,0x22,0x22,0x1C,0x08,0x1C,0x08,0x00, // 0x0C
277 | 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // 0x0D
278 | 0x30,0x2C,0x34,0x2C,0x34,0x36,0x06,0x00, // 0x0E
279 | 0x00,0x2A,0x1C,0x36,0x1C,0x2A,0x00,0x00, // 0x0F
280 | 0x04,0x0C,0x1C,0x3C,0x1C,0x0C,0x04,0x00, // 0x10
281 | 0x10,0x18,0x1C,0x1E,0x1C,0x18,0x10,0x00, // 0x11
282 | 0x08,0x1C,0x3E,0x08,0x3E,0x1C,0x08,0x00, // 0x12
283 | 0x14,0x14,0x14,0x14,0x14,0x00,0x14,0x00, // 0x13
284 | 0x3C,0x2A,0x2A,0x2C,0x28,0x28,0x28,0x00, // 0x14
285 | 0x1C,0x22,0x0C,0x14,0x18,0x22,0x1C,0x00, // 0x15
286 | 0x00,0x00,0x00,0x00,0x00,0x1E,0x1E,0x00, // 0x16
287 | 0x08,0x1C,0x3E,0x08,0x3E,0x1C,0x08,0x1C, // 0x17
288 | 0x08,0x1C,0x3E,0x08,0x08,0x08,0x08,0x00, // 0x18
289 | 0x08,0x08,0x08,0x08,0x3E,0x1C,0x08,0x00, // 0x19
290 | 0x00,0x08,0x18,0x3E,0x18,0x08,0x00,0x00, // 0x1A
291 | 0x00,0x08,0x0C,0x3E,0x0C,0x08,0x00,0x00, // 0x1B
292 | 0x00,0x00,0x00,0x02,0x02,0x02,0x3E,0x00, // 0x1C
293 | 0x00,0x14,0x14,0x3E,0x14,0x14,0x00,0x00, // 0x1D
294 | 0x08,0x08,0x1C,0x1C,0x3E,0x3E,0x00,0x00, // 0x1E
295 | 0x3E,0x3E,0x1C,0x1C,0x08,0x08,0x00,0x00, // 0x1F
296 | 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // 0x20
297 | 0x08,0x1C,0x1C,0x08,0x08,0x00,0x08,0x00, // 0x21
298 | 0x36,0x36,0x12,0x00,0x00,0x00,0x00,0x00, // 0x22
299 | 0x00,0x14,0x3E,0x14,0x14,0x3E,0x14,0x00, // 0x23
300 | 0x04,0x1C,0x02,0x0C,0x10,0x0E,0x08,0x00, // 0x24
301 | 0x26,0x26,0x10,0x08,0x04,0x32,0x32,0x00, // 0x25
302 | 0x04,0x0A,0x0A,0x04,0x2A,0x12,0x2C,0x00, // 0x26
303 | 0x0C,0x0C,0x04,0x00,0x00,0x00,0x00,0x00, // 0x27
304 | 0x08,0x04,0x04,0x04,0x04,0x04,0x08,0x00, // 0x28
305 | 0x04,0x08,0x08,0x08,0x08,0x08,0x04,0x00, // 0x29
306 | 0x00,0x14,0x1C,0x3E,0x1C,0x14,0x00,0x00, // 0x2A
307 | 0x00,0x08,0x08,0x3E,0x08,0x08,0x00,0x00, // 0x2B
308 | 0x00,0x00,0x00,0x00,0x00,0x0C,0x0C,0x04, // 0x2C
309 | 0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0x00, // 0x2D
310 | 0x00,0x00,0x00,0x00,0x00,0x0C,0x0C,0x00, // 0x2E
311 | 0x00,0x20,0x10,0x08,0x04,0x02,0x00,0x00, // 0x2F
312 | 0x1C,0x22,0x32,0x2A,0x26,0x22,0x1C,0x00, // 0x30
313 | 0x08,0x0C,0x08,0x08,0x08,0x08,0x1C,0x00, // 0x31
314 | 0x1C,0x22,0x20,0x18,0x04,0x02,0x3E,0x00, // 0x32
315 | 0x1C,0x22,0x20,0x1C,0x20,0x22,0x1C,0x00, // 0x33
316 | 0x10,0x18,0x14,0x12,0x3E,0x10,0x10,0x00, // 0x34
317 | 0x3E,0x02,0x02,0x1E,0x20,0x22,0x1C,0x00, // 0x35
318 | 0x18,0x04,0x02,0x1E,0x22,0x22,0x1C,0x00, // 0x36
319 | 0x3E,0x20,0x10,0x08,0x04,0x04,0x04,0x00, // 0x37
320 | 0x1C,0x22,0x22,0x1C,0x22,0x22,0x1C,0x00, // 0x38
321 | 0x1C,0x22,0x22,0x3C,0x20,0x10,0x0C,0x00, // 0x39
322 | 0x00,0x00,0x0C,0x0C,0x00,0x0C,0x0C,0x00, // 0x3A
323 | 0x00,0x00,0x0C,0x0C,0x00,0x0C,0x0C,0x04, // 0x3B
324 | 0x10,0x08,0x04,0x02,0x04,0x08,0x10,0x00, // 0x3C
325 | 0x00,0x00,0x3E,0x00,0x00,0x3E,0x00,0x00, // 0x3D
326 | 0x04,0x08,0x10,0x20,0x10,0x08,0x04,0x00, // 0x3E
327 | 0x1C,0x22,0x20,0x18,0x08,0x00,0x08,0x00, // 0x3F
328 | 0x1C,0x22,0x3A,0x2A,0x3A,0x02,0x1C,0x00, // 0x40
329 | 0x1C,0x22,0x22,0x22,0x3E,0x22,0x22,0x00, // 0x41
330 | 0x1E,0x22,0x22,0x1E,0x22,0x22,0x1E,0x00, // 0x42
331 | 0x1C,0x22,0x02,0x02,0x02,0x22,0x1C,0x00, // 0x43
332 | 0x1E,0x22,0x22,0x22,0x22,0x22,0x1E,0x00, // 0x44
333 | 0x3E,0x02,0x02,0x1E,0x02,0x02,0x3E,0x00, // 0x45
334 | 0x3E,0x02,0x02,0x1E,0x02,0x02,0x02,0x00, // 0x46
335 | 0x1C,0x22,0x02,0x3A,0x22,0x22,0x3C,0x00, // 0x47
336 | 0x22,0x22,0x22,0x3E,0x22,0x22,0x22,0x00, // 0x48
337 | 0x1C,0x08,0x08,0x08,0x08,0x08,0x1C,0x00, // 0x49
338 | 0x20,0x20,0x20,0x20,0x22,0x22,0x1C,0x00, // 0x4A
339 | 0x22,0x12,0x0A,0x06,0x0A,0x12,0x22,0x00, // 0x4B
340 | 0x02,0x02,0x02,0x02,0x02,0x02,0x3E,0x00, // 0x4C
341 | 0x22,0x36,0x2A,0x22,0x22,0x22,0x22,0x00, // 0x4D
342 | 0x22,0x26,0x2A,0x32,0x22,0x22,0x22,0x00, // 0x4E
343 | 0x1C,0x22,0x22,0x22,0x22,0x22,0x1C,0x00, // 0x4F
344 | 0x1E,0x22,0x22,0x1E,0x02,0x02,0x02,0x00, // 0x50
345 | 0x1C,0x22,0x22,0x22,0x2A,0x12,0x2C,0x00, // 0x51
346 | 0x1E,0x22,0x22,0x1E,0x12,0x22,0x22,0x00, // 0x52
347 | 0x1C,0x22,0x02,0x1C,0x20,0x22,0x1C,0x00, // 0x53
348 | 0x3E,0x08,0x08,0x08,0x08,0x08,0x08,0x00, // 0x54
349 | 0x22,0x22,0x22,0x22,0x22,0x22,0x1C,0x00, // 0x55
350 | 0x22,0x22,0x22,0x22,0x22,0x14,0x08,0x00, // 0x56
351 | 0x22,0x22,0x2A,0x2A,0x2A,0x2A,0x14,0x00, // 0x57
352 | 0x22,0x22,0x14,0x08,0x14,0x22,0x22,0x00, // 0x58
353 | 0x22,0x22,0x22,0x14,0x08,0x08,0x08,0x00, // 0x59
354 | 0x1E,0x10,0x08,0x04,0x02,0x02,0x1E,0x00, // 0x5A
355 | 0x1C,0x04,0x04,0x04,0x04,0x04,0x1C,0x00, // 0x5B
356 | 0x00,0x02,0x04,0x08,0x10,0x20,0x00,0x00, // 0x5C
357 | 0x1C,0x10,0x10,0x10,0x10,0x10,0x1C,0x00, // 0x5D
358 | 0x08,0x14,0x22,0x00,0x00,0x00,0x00,0x00, // 0x5E
359 | 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F, // 0x5F
360 | 0x0C,0x0C,0x08,0x00,0x00,0x00,0x00,0x00, // 0x60
361 | 0x00,0x00,0x1C,0x20,0x3C,0x22,0x3C,0x00, // 0x61
362 | 0x02,0x02,0x1E,0x22,0x22,0x22,0x1E,0x00, // 0x62
363 | 0x00,0x00,0x1C,0x22,0x02,0x22,0x1C,0x00, // 0x63
364 | 0x20,0x20,0x3C,0x22,0x22,0x22,0x3C,0x00, // 0x64
365 | 0x00,0x00,0x1C,0x22,0x1E,0x02,0x1C,0x00, // 0x65
366 | 0x18,0x04,0x04,0x1E,0x04,0x04,0x04,0x00, // 0x66
367 | 0x00,0x00,0x3C,0x22,0x22,0x3C,0x20,0x1C, // 0x67
368 | 0x02,0x02,0x0E,0x12,0x12,0x12,0x12,0x00, // 0x68
369 | 0x08,0x00,0x08,0x08,0x08,0x08,0x18,0x00, // 0x69
370 | 0x10,0x00,0x18,0x10,0x10,0x10,0x12,0x0C, // 0x6A
371 | 0x02,0x02,0x12,0x0A,0x06,0x0A,0x12,0x00, // 0x6B
372 | 0x08,0x08,0x08,0x08,0x08,0x08,0x18,0x00, // 0x6C
373 | 0x00,0x00,0x16,0x2A,0x2A,0x22,0x22,0x00, // 0x6D
374 | 0x00,0x00,0x0E,0x12,0x12,0x12,0x12,0x00, // 0x6E
375 | 0x00,0x00,0x1C,0x22,0x22,0x22,0x1C,0x00, // 0x6F
376 | 0x00,0x00,0x1E,0x22,0x22,0x22,0x1E,0x02, // 0x70
377 | 0x00,0x00,0x3C,0x22,0x22,0x22,0x3C,0x20, // 0x71
378 | 0x00,0x00,0x1A,0x24,0x04,0x04,0x0E,0x00, // 0x72
379 | 0x00,0x00,0x1C,0x02,0x1C,0x20,0x1C,0x00, // 0x73
380 | 0x00,0x04,0x1E,0x04,0x04,0x14,0x08,0x00, // 0x74
381 | 0x00,0x00,0x12,0x12,0x12,0x1A,0x14,0x00, // 0x75
382 | 0x00,0x00,0x22,0x22,0x22,0x14,0x08,0x00, // 0x76
383 | 0x00,0x00,0x22,0x22,0x2A,0x3E,0x14,0x00, // 0x77
384 | 0x00,0x00,0x12,0x12,0x0C,0x12,0x12,0x00, // 0x78
385 | 0x00,0x00,0x12,0x12,0x12,0x1C,0x08,0x06, // 0x79
386 | 0x00,0x00,0x1E,0x10,0x0C,0x02,0x1E,0x00, // 0x7A
387 | 0x18,0x04,0x04,0x06,0x04,0x04,0x18,0x00, // 0x7B
388 | 0x08,0x08,0x08,0x00,0x08,0x08,0x08,0x00, // 0x7C
389 | 0x0C,0x10,0x10,0x30,0x10,0x10,0x0C,0x00, // 0x7D
390 | 0x14,0x0A,0x00,0x00,0x00,0x00,0x00,0x00, // 0x7E
391 | 0x08,0x1C,0x36,0x22,0x22,0x3E,0x00,0x00, // 0x7F
392 | };
393 |
394 |
--------------------------------------------------------------------------------
/L1Demo-asm-example/Fonts.inc:
--------------------------------------------------------------------------------
1 | FontStart:
2 |
3 | ; classic 8x6 bitmapped font
4 | .byte 0x00, 0x00
5 | .byte 0x00, 0x00 ; first char
6 | .byte 0x7F, 0x00 ; last char
7 | .byte 0x08, 0x00 ; height
8 | ; glyph table
9 | .byte 6 ; width 0
10 | .byte 8,2,0
11 | .byte 6 ; width 1
12 | .byte 16,2,0
13 | .byte 6 ; width 2
14 | .byte 24,2,0
15 | .byte 6 ; width 3
16 | .byte 32,2,0
17 | .byte 6 ; width 4
18 | .byte 40,2,0
19 | .byte 6 ; width 5
20 | .byte 48,2,0
21 | .byte 6 ; width 6
22 | .byte 56,2,0
23 | .byte 6 ; width 7
24 | .byte 64,2,0
25 | .byte 6 ; width 8
26 | .byte 72,2,0
27 | .byte 6 ; width 9
28 | .byte 80,2,0
29 | .byte 6 ; width 10
30 | .byte 88,2,0
31 | .byte 6 ; width 11
32 | .byte 96,2,0
33 | .byte 6 ; width 12
34 | .byte 104,2,0
35 | .byte 6 ; width 13
36 | .byte 112,2,0
37 | .byte 6 ; width 14
38 | .byte 120,2,0
39 | .byte 6 ; width 15
40 | .byte 128,2,0
41 | .byte 6 ; width 16
42 | .byte 136,2,0
43 | .byte 6 ; width 17
44 | .byte 144,2,0
45 | .byte 6 ; width 18
46 | .byte 152,2,0
47 | .byte 6 ; width 19
48 | .byte 160,2,0
49 | .byte 6 ; width 20
50 | .byte 168,2,0
51 | .byte 6 ; width 21
52 | .byte 176,2,0
53 | .byte 6 ; width 22
54 | .byte 184,2,0
55 | .byte 6 ; width 23
56 | .byte 192,2,0
57 | .byte 6 ; width 24
58 | .byte 200,2,0
59 | .byte 6 ; width 25
60 | .byte 208,2,0
61 | .byte 6 ; width 26
62 | .byte 216,2,0
63 | .byte 6 ; width 27
64 | .byte 224,2,0
65 | .byte 6 ; width 28
66 | .byte 232,2,0
67 | .byte 6 ; width 29
68 | .byte 240,2,0
69 | .byte 6 ; width 30
70 | .byte 248,2,0
71 | .byte 6 ; width 31
72 | .byte 0,3,0
73 | .byte 6 ; width 32
74 | .byte 8,3,0
75 | .byte 6 ; width 33
76 | .byte 16,3,0
77 | .byte 6 ; width 34
78 | .byte 24,3,0
79 | .byte 6 ; width 35
80 | .byte 32,3,0
81 | .byte 6 ; width 36
82 | .byte 40,3,0
83 | .byte 6 ; width 37
84 | .byte 48,3,0
85 | .byte 6 ; width 38
86 | .byte 56,3,0
87 | .byte 6 ; width 39
88 | .byte 64,3,0
89 | .byte 6 ; width 40
90 | .byte 72,3,0
91 | .byte 6 ; width 41
92 | .byte 80,3,0
93 | .byte 6 ; width 42
94 | .byte 88,3,0
95 | .byte 6 ; width 43
96 | .byte 96,3,0
97 | .byte 6 ; width 44
98 | .byte 104,3,0
99 | .byte 6 ; width 45
100 | .byte 112,3,0
101 | .byte 6 ; width 46
102 | .byte 120,3,0
103 | .byte 6 ; width 47
104 | .byte 128,3,0
105 | .byte 6 ; width 48
106 | .byte 136,3,0
107 | .byte 6 ; width 49
108 | .byte 144,3,0
109 | .byte 6 ; width 50
110 | .byte 152,3,0
111 | .byte 6 ; width 51
112 | .byte 160,3,0
113 | .byte 6 ; width 52
114 | .byte 168,3,0
115 | .byte 6 ; width 53
116 | .byte 176,3,0
117 | .byte 6 ; width 54
118 | .byte 184,3,0
119 | .byte 6 ; width 55
120 | .byte 192,3,0
121 | .byte 6 ; width 56
122 | .byte 200,3,0
123 | .byte 6 ; width 57
124 | .byte 208,3,0
125 | .byte 6 ; width 58
126 | .byte 216,3,0
127 | .byte 6 ; width 59
128 | .byte 224,3,0
129 | .byte 6 ; width 60
130 | .byte 232,3,0
131 | .byte 6 ; width 61
132 | .byte 240,3,0
133 | .byte 6 ; width 62
134 | .byte 248,3,0
135 | .byte 6 ; width 63
136 | .byte 0,4,0
137 | .byte 6 ; width 64
138 | .byte 8,4,0
139 | .byte 6 ; width 65
140 | .byte 16,4,0
141 | .byte 6 ; width 66
142 | .byte 24,4,0
143 | .byte 6 ; width 67
144 | .byte 32,4,0
145 | .byte 6 ; width 68
146 | .byte 40,4,0
147 | .byte 6 ; width 69
148 | .byte 48,4,0
149 | .byte 6 ; width 70
150 | .byte 56,4,0
151 | .byte 6 ; width 71
152 | .byte 64,4,0
153 | .byte 6 ; width 72
154 | .byte 72,4,0
155 | .byte 6 ; width 73
156 | .byte 80,4,0
157 | .byte 6 ; width 74
158 | .byte 88,4,0
159 | .byte 6 ; width 75
160 | .byte 96,4,0
161 | .byte 6 ; width 76
162 | .byte 104,4,0
163 | .byte 6 ; width 77
164 | .byte 112,4,0
165 | .byte 6 ; width 78
166 | .byte 120,4,0
167 | .byte 6 ; width 79
168 | .byte 128,4,0
169 | .byte 6 ; width 80
170 | .byte 136,4,0
171 | .byte 6 ; width 81
172 | .byte 144,4,0
173 | .byte 6 ; width 82
174 | .byte 152,4,0
175 | .byte 6 ; width 83
176 | .byte 160,4,0
177 | .byte 6 ; width 84
178 | .byte 168,4,0
179 | .byte 6 ; width 85
180 | .byte 176,4,0
181 | .byte 6 ; width 86
182 | .byte 184,4,0
183 | .byte 6 ; width 87
184 | .byte 192,4,0
185 | .byte 6 ; width 88
186 | .byte 200,4,0
187 | .byte 6 ; width 89
188 | .byte 208,4,0
189 | .byte 6 ; width 90
190 | .byte 216,4,0
191 | .byte 6 ; width 91
192 | .byte 224,4,0
193 | .byte 6 ; width 92
194 | .byte 232,4,0
195 | .byte 6 ; width 93
196 | .byte 240,4,0
197 | .byte 6 ; width 94
198 | .byte 248,4,0
199 | .byte 6 ; width 95
200 | .byte 0,5,0
201 | .byte 6 ; width 96
202 | .byte 8,5,0
203 | .byte 6 ; width 97
204 | .byte 16,5,0
205 | .byte 6 ; width 98
206 | .byte 24,5,0
207 | .byte 6 ; width 99
208 | .byte 32,5,0
209 | .byte 6 ; width 100
210 | .byte 40,5,0
211 | .byte 6 ; width 101
212 | .byte 48,5,0
213 | .byte 6 ; width 102
214 | .byte 56,5,0
215 | .byte 6 ; width 103
216 | .byte 64,5,0
217 | .byte 6 ; width 104
218 | .byte 72,5,0
219 | .byte 6 ; width 105
220 | .byte 80,5,0
221 | .byte 6 ; width 106
222 | .byte 88,5,0
223 | .byte 6 ; width 107
224 | .byte 96,5,0
225 | .byte 6 ; width 108
226 | .byte 104,5,0
227 | .byte 6 ; width 109
228 | .byte 112,5,0
229 | .byte 6 ; width 110
230 | .byte 120,5,0
231 | .byte 6 ; width 111
232 | .byte 128,5,0
233 | .byte 6 ; width 112
234 | .byte 136,5,0
235 | .byte 6 ; width 113
236 | .byte 144,5,0
237 | .byte 6 ; width 114
238 | .byte 152,5,0
239 | .byte 6 ; width 115
240 | .byte 160,5,0
241 | .byte 6 ; width 116
242 | .byte 168,5,0
243 | .byte 6 ; width 117
244 | .byte 176,5,0
245 | .byte 6 ; width 118
246 | .byte 184,5,0
247 | .byte 6 ; width 119
248 | .byte 192,5,0
249 | .byte 6 ; width 120
250 | .byte 200,5,0
251 | .byte 6 ; width 121
252 | .byte 208,5,0
253 | .byte 6 ; width 122
254 | .byte 216,5,0
255 | .byte 6 ; width 123
256 | .byte 224,5,0
257 | .byte 6 ; width 124
258 | .byte 232,5,0
259 | .byte 6 ; width 125
260 | .byte 240,5,0
261 | .byte 6 ; width 126
262 | .byte 248,5,0
263 | .byte 6 ; width 127
264 | .byte 0,6,0
265 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x00
266 | .byte 0x1C,0x22,0x36,0x22,0x2A,0x22,0x1C,0x00 ; 0x01
267 | .byte 0x1C,0x3E,0x2A,0x3E,0x22,0x3E,0x1C,0x00 ; 0x02
268 | .byte 0x00,0x14,0x3E,0x3E,0x3E,0x1C,0x08,0x00 ; 0x03
269 | .byte 0x00,0x08,0x1C,0x3E,0x3E,0x1C,0x08,0x00 ; 0x04
270 | .byte 0x08,0x1C,0x1C,0x08,0x3E,0x3E,0x08,0x00 ; 0x05
271 | .byte 0x00,0x08,0x1C,0x3E,0x3E,0x08,0x1C,0x00 ; 0x06
272 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x07
273 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x08
274 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x09
275 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x0A
276 | .byte 0x00,0x38,0x30,0x2C,0x12,0x12,0x0C,0x00 ; 0x0B
277 | .byte 0x1C,0x22,0x22,0x1C,0x08,0x1C,0x08,0x00 ; 0x0C
278 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x0D
279 | .byte 0x30,0x2C,0x34,0x2C,0x34,0x36,0x06,0x00 ; 0x0E
280 | .byte 0x00,0x2A,0x1C,0x36,0x1C,0x2A,0x00,0x00 ; 0x0F
281 | .byte 0x04,0x0C,0x1C,0x3C,0x1C,0x0C,0x04,0x00 ; 0x10
282 | .byte 0x10,0x18,0x1C,0x1E,0x1C,0x18,0x10,0x00 ; 0x11
283 | .byte 0x08,0x1C,0x3E,0x08,0x3E,0x1C,0x08,0x00 ; 0x12
284 | .byte 0x14,0x14,0x14,0x14,0x14,0x00,0x14,0x00 ; 0x13
285 | .byte 0x3C,0x2A,0x2A,0x2C,0x28,0x28,0x28,0x00 ; 0x14
286 | .byte 0x1C,0x22,0x0C,0x14,0x18,0x22,0x1C,0x00 ; 0x15
287 | .byte 0x00,0x00,0x00,0x00,0x00,0x1E,0x1E,0x00 ; 0x16
288 | .byte 0x08,0x1C,0x3E,0x08,0x3E,0x1C,0x08,0x1C ; 0x17
289 | .byte 0x08,0x1C,0x3E,0x08,0x08,0x08,0x08,0x00 ; 0x18
290 | .byte 0x08,0x08,0x08,0x08,0x3E,0x1C,0x08,0x00 ; 0x19
291 | .byte 0x00,0x08,0x18,0x3E,0x18,0x08,0x00,0x00 ; 0x1A
292 | .byte 0x00,0x08,0x0C,0x3E,0x0C,0x08,0x00,0x00 ; 0x1B
293 | .byte 0x00,0x00,0x00,0x02,0x02,0x02,0x3E,0x00 ; 0x1C
294 | .byte 0x00,0x14,0x14,0x3E,0x14,0x14,0x00,0x00 ; 0x1D
295 | .byte 0x08,0x08,0x1C,0x1C,0x3E,0x3E,0x00,0x00 ; 0x1E
296 | .byte 0x3E,0x3E,0x1C,0x1C,0x08,0x08,0x00,0x00 ; 0x1F
297 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x20
298 | .byte 0x08,0x1C,0x1C,0x08,0x08,0x00,0x08,0x00 ; 0x21
299 | .byte 0x36,0x36,0x12,0x00,0x00,0x00,0x00,0x00 ; 0x22
300 | .byte 0x00,0x14,0x3E,0x14,0x14,0x3E,0x14,0x00 ; 0x23
301 | .byte 0x04,0x1C,0x02,0x0C,0x10,0x0E,0x08,0x00 ; 0x24
302 | .byte 0x26,0x26,0x10,0x08,0x04,0x32,0x32,0x00 ; 0x25
303 | .byte 0x04,0x0A,0x0A,0x04,0x2A,0x12,0x2C,0x00 ; 0x26
304 | .byte 0x0C,0x0C,0x04,0x00,0x00,0x00,0x00,0x00 ; 0x27
305 | .byte 0x08,0x04,0x04,0x04,0x04,0x04,0x08,0x00 ; 0x28
306 | .byte 0x04,0x08,0x08,0x08,0x08,0x08,0x04,0x00 ; 0x29
307 | .byte 0x00,0x14,0x1C,0x3E,0x1C,0x14,0x00,0x00 ; 0x2A
308 | .byte 0x00,0x08,0x08,0x3E,0x08,0x08,0x00,0x00 ; 0x2B
309 | .byte 0x00,0x00,0x00,0x00,0x00,0x0C,0x0C,0x04 ; 0x2C
310 | .byte 0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0x00 ; 0x2D
311 | .byte 0x00,0x00,0x00,0x00,0x00,0x0C,0x0C,0x00 ; 0x2E
312 | .byte 0x00,0x20,0x10,0x08,0x04,0x02,0x00,0x00 ; 0x2F
313 | .byte 0x1C,0x22,0x32,0x2A,0x26,0x22,0x1C,0x00 ; 0x30
314 | .byte 0x08,0x0C,0x08,0x08,0x08,0x08,0x1C,0x00 ; 0x31
315 | .byte 0x1C,0x22,0x20,0x18,0x04,0x02,0x3E,0x00 ; 0x32
316 | .byte 0x1C,0x22,0x20,0x1C,0x20,0x22,0x1C,0x00 ; 0x33
317 | .byte 0x10,0x18,0x14,0x12,0x3E,0x10,0x10,0x00 ; 0x34
318 | .byte 0x3E,0x02,0x02,0x1E,0x20,0x22,0x1C,0x00 ; 0x35
319 | .byte 0x18,0x04,0x02,0x1E,0x22,0x22,0x1C,0x00 ; 0x36
320 | .byte 0x3E,0x20,0x10,0x08,0x04,0x04,0x04,0x00 ; 0x37
321 | .byte 0x1C,0x22,0x22,0x1C,0x22,0x22,0x1C,0x00 ; 0x38
322 | .byte 0x1C,0x22,0x22,0x3C,0x20,0x10,0x0C,0x00 ; 0x39
323 | .byte 0x00,0x00,0x0C,0x0C,0x00,0x0C,0x0C,0x00 ; 0x3A
324 | .byte 0x00,0x00,0x0C,0x0C,0x00,0x0C,0x0C,0x04 ; 0x3B
325 | .byte 0x10,0x08,0x04,0x02,0x04,0x08,0x10,0x00 ; 0x3C
326 | .byte 0x00,0x00,0x3E,0x00,0x00,0x3E,0x00,0x00 ; 0x3D
327 | .byte 0x04,0x08,0x10,0x20,0x10,0x08,0x04,0x00 ; 0x3E
328 | .byte 0x1C,0x22,0x20,0x18,0x08,0x00,0x08,0x00 ; 0x3F
329 | .byte 0x1C,0x22,0x3A,0x2A,0x3A,0x02,0x1C,0x00 ; 0x40
330 | .byte 0x1C,0x22,0x22,0x22,0x3E,0x22,0x22,0x00 ; 0x41
331 | .byte 0x1E,0x22,0x22,0x1E,0x22,0x22,0x1E,0x00 ; 0x42
332 | .byte 0x1C,0x22,0x02,0x02,0x02,0x22,0x1C,0x00 ; 0x43
333 | .byte 0x1E,0x22,0x22,0x22,0x22,0x22,0x1E,0x00 ; 0x44
334 | .byte 0x3E,0x02,0x02,0x1E,0x02,0x02,0x3E,0x00 ; 0x45
335 | .byte 0x3E,0x02,0x02,0x1E,0x02,0x02,0x02,0x00 ; 0x46
336 | .byte 0x1C,0x22,0x02,0x3A,0x22,0x22,0x3C,0x00 ; 0x47
337 | .byte 0x22,0x22,0x22,0x3E,0x22,0x22,0x22,0x00 ; 0x48
338 | .byte 0x1C,0x08,0x08,0x08,0x08,0x08,0x1C,0x00 ; 0x49
339 | .byte 0x20,0x20,0x20,0x20,0x22,0x22,0x1C,0x00 ; 0x4A
340 | .byte 0x22,0x12,0x0A,0x06,0x0A,0x12,0x22,0x00 ; 0x4B
341 | .byte 0x02,0x02,0x02,0x02,0x02,0x02,0x3E,0x00 ; 0x4C
342 | .byte 0x22,0x36,0x2A,0x22,0x22,0x22,0x22,0x00 ; 0x4D
343 | .byte 0x22,0x26,0x2A,0x32,0x22,0x22,0x22,0x00 ; 0x4E
344 | .byte 0x1C,0x22,0x22,0x22,0x22,0x22,0x1C,0x00 ; 0x4F
345 | .byte 0x1E,0x22,0x22,0x1E,0x02,0x02,0x02,0x00 ; 0x50
346 | .byte 0x1C,0x22,0x22,0x22,0x2A,0x12,0x2C,0x00 ; 0x51
347 | .byte 0x1E,0x22,0x22,0x1E,0x12,0x22,0x22,0x00 ; 0x52
348 | .byte 0x1C,0x22,0x02,0x1C,0x20,0x22,0x1C,0x00 ; 0x53
349 | .byte 0x3E,0x08,0x08,0x08,0x08,0x08,0x08,0x00 ; 0x54
350 | .byte 0x22,0x22,0x22,0x22,0x22,0x22,0x1C,0x00 ; 0x55
351 | .byte 0x22,0x22,0x22,0x22,0x22,0x14,0x08,0x00 ; 0x56
352 | .byte 0x22,0x22,0x2A,0x2A,0x2A,0x2A,0x14,0x00 ; 0x57
353 | .byte 0x22,0x22,0x14,0x08,0x14,0x22,0x22,0x00 ; 0x58
354 | .byte 0x22,0x22,0x22,0x14,0x08,0x08,0x08,0x00 ; 0x59
355 | .byte 0x1E,0x10,0x08,0x04,0x02,0x02,0x1E,0x00 ; 0x5A
356 | .byte 0x1C,0x04,0x04,0x04,0x04,0x04,0x1C,0x00 ; 0x5B
357 | .byte 0x00,0x02,0x04,0x08,0x10,0x20,0x00,0x00 ; 0x5C
358 | .byte 0x1C,0x10,0x10,0x10,0x10,0x10,0x1C,0x00 ; 0x5D
359 | .byte 0x08,0x14,0x22,0x00,0x00,0x00,0x00,0x00 ; 0x5E
360 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F ; 0x5F
361 | .byte 0x0C,0x0C,0x08,0x00,0x00,0x00,0x00,0x00 ; 0x60
362 | .byte 0x00,0x00,0x1C,0x20,0x3C,0x22,0x3C,0x00 ; 0x61
363 | .byte 0x02,0x02,0x1E,0x22,0x22,0x22,0x1E,0x00 ; 0x62
364 | .byte 0x00,0x00,0x1C,0x22,0x02,0x22,0x1C,0x00 ; 0x63
365 | .byte 0x20,0x20,0x3C,0x22,0x22,0x22,0x3C,0x00 ; 0x64
366 | .byte 0x00,0x00,0x1C,0x22,0x1E,0x02,0x1C,0x00 ; 0x65
367 | .byte 0x18,0x04,0x04,0x1E,0x04,0x04,0x04,0x00 ; 0x66
368 | .byte 0x00,0x00,0x3C,0x22,0x22,0x3C,0x20,0x1C ; 0x67
369 | .byte 0x02,0x02,0x0E,0x12,0x12,0x12,0x12,0x00 ; 0x68
370 | .byte 0x08,0x00,0x08,0x08,0x08,0x08,0x18,0x00 ; 0x69
371 | .byte 0x10,0x00,0x18,0x10,0x10,0x10,0x12,0x0C ; 0x6A
372 | .byte 0x02,0x02,0x12,0x0A,0x06,0x0A,0x12,0x00 ; 0x6B
373 | .byte 0x08,0x08,0x08,0x08,0x08,0x08,0x18,0x00 ; 0x6C
374 | .byte 0x00,0x00,0x16,0x2A,0x2A,0x22,0x22,0x00 ; 0x6D
375 | .byte 0x00,0x00,0x0E,0x12,0x12,0x12,0x12,0x00 ; 0x6E
376 | .byte 0x00,0x00,0x1C,0x22,0x22,0x22,0x1C,0x00 ; 0x6F
377 | .byte 0x00,0x00,0x1E,0x22,0x22,0x22,0x1E,0x02 ; 0x70
378 | .byte 0x00,0x00,0x3C,0x22,0x22,0x22,0x3C,0x20 ; 0x71
379 | .byte 0x00,0x00,0x1A,0x24,0x04,0x04,0x0E,0x00 ; 0x72
380 | .byte 0x00,0x00,0x1C,0x02,0x1C,0x20,0x1C,0x00 ; 0x73
381 | .byte 0x00,0x04,0x1E,0x04,0x04,0x14,0x08,0x00 ; 0x74
382 | .byte 0x00,0x00,0x12,0x12,0x12,0x1A,0x14,0x00 ; 0x75
383 | .byte 0x00,0x00,0x22,0x22,0x22,0x14,0x08,0x00 ; 0x76
384 | .byte 0x00,0x00,0x22,0x22,0x2A,0x3E,0x14,0x00 ; 0x77
385 | .byte 0x00,0x00,0x12,0x12,0x0C,0x12,0x12,0x00 ; 0x78
386 | .byte 0x00,0x00,0x12,0x12,0x12,0x1C,0x08,0x06 ; 0x79
387 | .byte 0x00,0x00,0x1E,0x10,0x0C,0x02,0x1E,0x00 ; 0x7A
388 | .byte 0x18,0x04,0x04,0x06,0x04,0x04,0x18,0x00 ; 0x7B
389 | .byte 0x08,0x08,0x08,0x00,0x08,0x08,0x08,0x00 ; 0x7C
390 | .byte 0x0C,0x10,0x10,0x30,0x10,0x10,0x0C,0x00 ; 0x7D
391 | .byte 0x14,0x0A,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x7E
392 | .byte 0x08,0x1C,0x36,0x22,0x22,0x3E,0x00,0x00 ; 0x7F
393 |
394 | FontEnd:
395 |
396 |
--------------------------------------------------------------------------------
/L1Demo-asm-example_v8/Fonts.inc:
--------------------------------------------------------------------------------
1 | FontStart:
2 |
3 | ; classic 8x6 bitmapped font
4 | .byte 0x00, 0x00
5 | .byte 0x00, 0x00 ; first char
6 | .byte 0x7F, 0x00 ; last char
7 | .byte 0x08, 0x00 ; height
8 | ; glyph table
9 | .byte 6 ; width 0
10 | .byte 8,2,0
11 | .byte 6 ; width 1
12 | .byte 16,2,0
13 | .byte 6 ; width 2
14 | .byte 24,2,0
15 | .byte 6 ; width 3
16 | .byte 32,2,0
17 | .byte 6 ; width 4
18 | .byte 40,2,0
19 | .byte 6 ; width 5
20 | .byte 48,2,0
21 | .byte 6 ; width 6
22 | .byte 56,2,0
23 | .byte 6 ; width 7
24 | .byte 64,2,0
25 | .byte 6 ; width 8
26 | .byte 72,2,0
27 | .byte 6 ; width 9
28 | .byte 80,2,0
29 | .byte 6 ; width 10
30 | .byte 88,2,0
31 | .byte 6 ; width 11
32 | .byte 96,2,0
33 | .byte 6 ; width 12
34 | .byte 104,2,0
35 | .byte 6 ; width 13
36 | .byte 112,2,0
37 | .byte 6 ; width 14
38 | .byte 120,2,0
39 | .byte 6 ; width 15
40 | .byte 128,2,0
41 | .byte 6 ; width 16
42 | .byte 136,2,0
43 | .byte 6 ; width 17
44 | .byte 144,2,0
45 | .byte 6 ; width 18
46 | .byte 152,2,0
47 | .byte 6 ; width 19
48 | .byte 160,2,0
49 | .byte 6 ; width 20
50 | .byte 168,2,0
51 | .byte 6 ; width 21
52 | .byte 176,2,0
53 | .byte 6 ; width 22
54 | .byte 184,2,0
55 | .byte 6 ; width 23
56 | .byte 192,2,0
57 | .byte 6 ; width 24
58 | .byte 200,2,0
59 | .byte 6 ; width 25
60 | .byte 208,2,0
61 | .byte 6 ; width 26
62 | .byte 216,2,0
63 | .byte 6 ; width 27
64 | .byte 224,2,0
65 | .byte 6 ; width 28
66 | .byte 232,2,0
67 | .byte 6 ; width 29
68 | .byte 240,2,0
69 | .byte 6 ; width 30
70 | .byte 248,2,0
71 | .byte 6 ; width 31
72 | .byte 0,3,0
73 | .byte 6 ; width 32
74 | .byte 8,3,0
75 | .byte 6 ; width 33
76 | .byte 16,3,0
77 | .byte 6 ; width 34
78 | .byte 24,3,0
79 | .byte 6 ; width 35
80 | .byte 32,3,0
81 | .byte 6 ; width 36
82 | .byte 40,3,0
83 | .byte 6 ; width 37
84 | .byte 48,3,0
85 | .byte 6 ; width 38
86 | .byte 56,3,0
87 | .byte 6 ; width 39
88 | .byte 64,3,0
89 | .byte 6 ; width 40
90 | .byte 72,3,0
91 | .byte 6 ; width 41
92 | .byte 80,3,0
93 | .byte 6 ; width 42
94 | .byte 88,3,0
95 | .byte 6 ; width 43
96 | .byte 96,3,0
97 | .byte 6 ; width 44
98 | .byte 104,3,0
99 | .byte 6 ; width 45
100 | .byte 112,3,0
101 | .byte 6 ; width 46
102 | .byte 120,3,0
103 | .byte 6 ; width 47
104 | .byte 128,3,0
105 | .byte 6 ; width 48
106 | .byte 136,3,0
107 | .byte 6 ; width 49
108 | .byte 144,3,0
109 | .byte 6 ; width 50
110 | .byte 152,3,0
111 | .byte 6 ; width 51
112 | .byte 160,3,0
113 | .byte 6 ; width 52
114 | .byte 168,3,0
115 | .byte 6 ; width 53
116 | .byte 176,3,0
117 | .byte 6 ; width 54
118 | .byte 184,3,0
119 | .byte 6 ; width 55
120 | .byte 192,3,0
121 | .byte 6 ; width 56
122 | .byte 200,3,0
123 | .byte 6 ; width 57
124 | .byte 208,3,0
125 | .byte 6 ; width 58
126 | .byte 216,3,0
127 | .byte 6 ; width 59
128 | .byte 224,3,0
129 | .byte 6 ; width 60
130 | .byte 232,3,0
131 | .byte 6 ; width 61
132 | .byte 240,3,0
133 | .byte 6 ; width 62
134 | .byte 248,3,0
135 | .byte 6 ; width 63
136 | .byte 0,4,0
137 | .byte 6 ; width 64
138 | .byte 8,4,0
139 | .byte 6 ; width 65
140 | .byte 16,4,0
141 | .byte 6 ; width 66
142 | .byte 24,4,0
143 | .byte 6 ; width 67
144 | .byte 32,4,0
145 | .byte 6 ; width 68
146 | .byte 40,4,0
147 | .byte 6 ; width 69
148 | .byte 48,4,0
149 | .byte 6 ; width 70
150 | .byte 56,4,0
151 | .byte 6 ; width 71
152 | .byte 64,4,0
153 | .byte 6 ; width 72
154 | .byte 72,4,0
155 | .byte 6 ; width 73
156 | .byte 80,4,0
157 | .byte 6 ; width 74
158 | .byte 88,4,0
159 | .byte 6 ; width 75
160 | .byte 96,4,0
161 | .byte 6 ; width 76
162 | .byte 104,4,0
163 | .byte 6 ; width 77
164 | .byte 112,4,0
165 | .byte 6 ; width 78
166 | .byte 120,4,0
167 | .byte 6 ; width 79
168 | .byte 128,4,0
169 | .byte 6 ; width 80
170 | .byte 136,4,0
171 | .byte 6 ; width 81
172 | .byte 144,4,0
173 | .byte 6 ; width 82
174 | .byte 152,4,0
175 | .byte 6 ; width 83
176 | .byte 160,4,0
177 | .byte 6 ; width 84
178 | .byte 168,4,0
179 | .byte 6 ; width 85
180 | .byte 176,4,0
181 | .byte 6 ; width 86
182 | .byte 184,4,0
183 | .byte 6 ; width 87
184 | .byte 192,4,0
185 | .byte 6 ; width 88
186 | .byte 200,4,0
187 | .byte 6 ; width 89
188 | .byte 208,4,0
189 | .byte 6 ; width 90
190 | .byte 216,4,0
191 | .byte 6 ; width 91
192 | .byte 224,4,0
193 | .byte 6 ; width 92
194 | .byte 232,4,0
195 | .byte 6 ; width 93
196 | .byte 240,4,0
197 | .byte 6 ; width 94
198 | .byte 248,4,0
199 | .byte 6 ; width 95
200 | .byte 0,5,0
201 | .byte 6 ; width 96
202 | .byte 8,5,0
203 | .byte 6 ; width 97
204 | .byte 16,5,0
205 | .byte 6 ; width 98
206 | .byte 24,5,0
207 | .byte 6 ; width 99
208 | .byte 32,5,0
209 | .byte 6 ; width 100
210 | .byte 40,5,0
211 | .byte 6 ; width 101
212 | .byte 48,5,0
213 | .byte 6 ; width 102
214 | .byte 56,5,0
215 | .byte 6 ; width 103
216 | .byte 64,5,0
217 | .byte 6 ; width 104
218 | .byte 72,5,0
219 | .byte 6 ; width 105
220 | .byte 80,5,0
221 | .byte 6 ; width 106
222 | .byte 88,5,0
223 | .byte 6 ; width 107
224 | .byte 96,5,0
225 | .byte 6 ; width 108
226 | .byte 104,5,0
227 | .byte 6 ; width 109
228 | .byte 112,5,0
229 | .byte 6 ; width 110
230 | .byte 120,5,0
231 | .byte 6 ; width 111
232 | .byte 128,5,0
233 | .byte 6 ; width 112
234 | .byte 136,5,0
235 | .byte 6 ; width 113
236 | .byte 144,5,0
237 | .byte 6 ; width 114
238 | .byte 152,5,0
239 | .byte 6 ; width 115
240 | .byte 160,5,0
241 | .byte 6 ; width 116
242 | .byte 168,5,0
243 | .byte 6 ; width 117
244 | .byte 176,5,0
245 | .byte 6 ; width 118
246 | .byte 184,5,0
247 | .byte 6 ; width 119
248 | .byte 192,5,0
249 | .byte 6 ; width 120
250 | .byte 200,5,0
251 | .byte 6 ; width 121
252 | .byte 208,5,0
253 | .byte 6 ; width 122
254 | .byte 216,5,0
255 | .byte 6 ; width 123
256 | .byte 224,5,0
257 | .byte 6 ; width 124
258 | .byte 232,5,0
259 | .byte 6 ; width 125
260 | .byte 240,5,0
261 | .byte 6 ; width 126
262 | .byte 248,5,0
263 | .byte 6 ; width 127
264 | .byte 0,6,0
265 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x00
266 | .byte 0x1C,0x22,0x36,0x22,0x2A,0x22,0x1C,0x00 ; 0x01
267 | .byte 0x1C,0x3E,0x2A,0x3E,0x22,0x3E,0x1C,0x00 ; 0x02
268 | .byte 0x00,0x14,0x3E,0x3E,0x3E,0x1C,0x08,0x00 ; 0x03
269 | .byte 0x00,0x08,0x1C,0x3E,0x3E,0x1C,0x08,0x00 ; 0x04
270 | .byte 0x08,0x1C,0x1C,0x08,0x3E,0x3E,0x08,0x00 ; 0x05
271 | .byte 0x00,0x08,0x1C,0x3E,0x3E,0x08,0x1C,0x00 ; 0x06
272 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x07
273 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x08
274 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x09
275 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x0A
276 | .byte 0x00,0x38,0x30,0x2C,0x12,0x12,0x0C,0x00 ; 0x0B
277 | .byte 0x1C,0x22,0x22,0x1C,0x08,0x1C,0x08,0x00 ; 0x0C
278 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x0D
279 | .byte 0x30,0x2C,0x34,0x2C,0x34,0x36,0x06,0x00 ; 0x0E
280 | .byte 0x00,0x2A,0x1C,0x36,0x1C,0x2A,0x00,0x00 ; 0x0F
281 | .byte 0x04,0x0C,0x1C,0x3C,0x1C,0x0C,0x04,0x00 ; 0x10
282 | .byte 0x10,0x18,0x1C,0x1E,0x1C,0x18,0x10,0x00 ; 0x11
283 | .byte 0x08,0x1C,0x3E,0x08,0x3E,0x1C,0x08,0x00 ; 0x12
284 | .byte 0x14,0x14,0x14,0x14,0x14,0x00,0x14,0x00 ; 0x13
285 | .byte 0x3C,0x2A,0x2A,0x2C,0x28,0x28,0x28,0x00 ; 0x14
286 | .byte 0x1C,0x22,0x0C,0x14,0x18,0x22,0x1C,0x00 ; 0x15
287 | .byte 0x00,0x00,0x00,0x00,0x00,0x1E,0x1E,0x00 ; 0x16
288 | .byte 0x08,0x1C,0x3E,0x08,0x3E,0x1C,0x08,0x1C ; 0x17
289 | .byte 0x08,0x1C,0x3E,0x08,0x08,0x08,0x08,0x00 ; 0x18
290 | .byte 0x08,0x08,0x08,0x08,0x3E,0x1C,0x08,0x00 ; 0x19
291 | .byte 0x00,0x08,0x18,0x3E,0x18,0x08,0x00,0x00 ; 0x1A
292 | .byte 0x00,0x08,0x0C,0x3E,0x0C,0x08,0x00,0x00 ; 0x1B
293 | .byte 0x00,0x00,0x00,0x02,0x02,0x02,0x3E,0x00 ; 0x1C
294 | .byte 0x00,0x14,0x14,0x3E,0x14,0x14,0x00,0x00 ; 0x1D
295 | .byte 0x08,0x08,0x1C,0x1C,0x3E,0x3E,0x00,0x00 ; 0x1E
296 | .byte 0x3E,0x3E,0x1C,0x1C,0x08,0x08,0x00,0x00 ; 0x1F
297 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x20
298 | .byte 0x08,0x1C,0x1C,0x08,0x08,0x00,0x08,0x00 ; 0x21
299 | .byte 0x36,0x36,0x12,0x00,0x00,0x00,0x00,0x00 ; 0x22
300 | .byte 0x00,0x14,0x3E,0x14,0x14,0x3E,0x14,0x00 ; 0x23
301 | .byte 0x04,0x1C,0x02,0x0C,0x10,0x0E,0x08,0x00 ; 0x24
302 | .byte 0x26,0x26,0x10,0x08,0x04,0x32,0x32,0x00 ; 0x25
303 | .byte 0x04,0x0A,0x0A,0x04,0x2A,0x12,0x2C,0x00 ; 0x26
304 | .byte 0x0C,0x0C,0x04,0x00,0x00,0x00,0x00,0x00 ; 0x27
305 | .byte 0x08,0x04,0x04,0x04,0x04,0x04,0x08,0x00 ; 0x28
306 | .byte 0x04,0x08,0x08,0x08,0x08,0x08,0x04,0x00 ; 0x29
307 | .byte 0x00,0x14,0x1C,0x3E,0x1C,0x14,0x00,0x00 ; 0x2A
308 | .byte 0x00,0x08,0x08,0x3E,0x08,0x08,0x00,0x00 ; 0x2B
309 | .byte 0x00,0x00,0x00,0x00,0x00,0x0C,0x0C,0x04 ; 0x2C
310 | .byte 0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0x00 ; 0x2D
311 | .byte 0x00,0x00,0x00,0x00,0x00,0x0C,0x0C,0x00 ; 0x2E
312 | .byte 0x00,0x20,0x10,0x08,0x04,0x02,0x00,0x00 ; 0x2F
313 | .byte 0x1C,0x22,0x32,0x2A,0x26,0x22,0x1C,0x00 ; 0x30
314 | .byte 0x08,0x0C,0x08,0x08,0x08,0x08,0x1C,0x00 ; 0x31
315 | .byte 0x1C,0x22,0x20,0x18,0x04,0x02,0x3E,0x00 ; 0x32
316 | .byte 0x1C,0x22,0x20,0x1C,0x20,0x22,0x1C,0x00 ; 0x33
317 | .byte 0x10,0x18,0x14,0x12,0x3E,0x10,0x10,0x00 ; 0x34
318 | .byte 0x3E,0x02,0x02,0x1E,0x20,0x22,0x1C,0x00 ; 0x35
319 | .byte 0x18,0x04,0x02,0x1E,0x22,0x22,0x1C,0x00 ; 0x36
320 | .byte 0x3E,0x20,0x10,0x08,0x04,0x04,0x04,0x00 ; 0x37
321 | .byte 0x1C,0x22,0x22,0x1C,0x22,0x22,0x1C,0x00 ; 0x38
322 | .byte 0x1C,0x22,0x22,0x3C,0x20,0x10,0x0C,0x00 ; 0x39
323 | .byte 0x00,0x00,0x0C,0x0C,0x00,0x0C,0x0C,0x00 ; 0x3A
324 | .byte 0x00,0x00,0x0C,0x0C,0x00,0x0C,0x0C,0x04 ; 0x3B
325 | .byte 0x10,0x08,0x04,0x02,0x04,0x08,0x10,0x00 ; 0x3C
326 | .byte 0x00,0x00,0x3E,0x00,0x00,0x3E,0x00,0x00 ; 0x3D
327 | .byte 0x04,0x08,0x10,0x20,0x10,0x08,0x04,0x00 ; 0x3E
328 | .byte 0x1C,0x22,0x20,0x18,0x08,0x00,0x08,0x00 ; 0x3F
329 | .byte 0x1C,0x22,0x3A,0x2A,0x3A,0x02,0x1C,0x00 ; 0x40
330 | .byte 0x1C,0x22,0x22,0x22,0x3E,0x22,0x22,0x00 ; 0x41
331 | .byte 0x1E,0x22,0x22,0x1E,0x22,0x22,0x1E,0x00 ; 0x42
332 | .byte 0x1C,0x22,0x02,0x02,0x02,0x22,0x1C,0x00 ; 0x43
333 | .byte 0x1E,0x22,0x22,0x22,0x22,0x22,0x1E,0x00 ; 0x44
334 | .byte 0x3E,0x02,0x02,0x1E,0x02,0x02,0x3E,0x00 ; 0x45
335 | .byte 0x3E,0x02,0x02,0x1E,0x02,0x02,0x02,0x00 ; 0x46
336 | .byte 0x1C,0x22,0x02,0x3A,0x22,0x22,0x3C,0x00 ; 0x47
337 | .byte 0x22,0x22,0x22,0x3E,0x22,0x22,0x22,0x00 ; 0x48
338 | .byte 0x1C,0x08,0x08,0x08,0x08,0x08,0x1C,0x00 ; 0x49
339 | .byte 0x20,0x20,0x20,0x20,0x22,0x22,0x1C,0x00 ; 0x4A
340 | .byte 0x22,0x12,0x0A,0x06,0x0A,0x12,0x22,0x00 ; 0x4B
341 | .byte 0x02,0x02,0x02,0x02,0x02,0x02,0x3E,0x00 ; 0x4C
342 | .byte 0x22,0x36,0x2A,0x22,0x22,0x22,0x22,0x00 ; 0x4D
343 | .byte 0x22,0x26,0x2A,0x32,0x22,0x22,0x22,0x00 ; 0x4E
344 | .byte 0x1C,0x22,0x22,0x22,0x22,0x22,0x1C,0x00 ; 0x4F
345 | .byte 0x1E,0x22,0x22,0x1E,0x02,0x02,0x02,0x00 ; 0x50
346 | .byte 0x1C,0x22,0x22,0x22,0x2A,0x12,0x2C,0x00 ; 0x51
347 | .byte 0x1E,0x22,0x22,0x1E,0x12,0x22,0x22,0x00 ; 0x52
348 | .byte 0x1C,0x22,0x02,0x1C,0x20,0x22,0x1C,0x00 ; 0x53
349 | .byte 0x3E,0x08,0x08,0x08,0x08,0x08,0x08,0x00 ; 0x54
350 | .byte 0x22,0x22,0x22,0x22,0x22,0x22,0x1C,0x00 ; 0x55
351 | .byte 0x22,0x22,0x22,0x22,0x22,0x14,0x08,0x00 ; 0x56
352 | .byte 0x22,0x22,0x2A,0x2A,0x2A,0x2A,0x14,0x00 ; 0x57
353 | .byte 0x22,0x22,0x14,0x08,0x14,0x22,0x22,0x00 ; 0x58
354 | .byte 0x22,0x22,0x22,0x14,0x08,0x08,0x08,0x00 ; 0x59
355 | .byte 0x1E,0x10,0x08,0x04,0x02,0x02,0x1E,0x00 ; 0x5A
356 | .byte 0x1C,0x04,0x04,0x04,0x04,0x04,0x1C,0x00 ; 0x5B
357 | .byte 0x00,0x02,0x04,0x08,0x10,0x20,0x00,0x00 ; 0x5C
358 | .byte 0x1C,0x10,0x10,0x10,0x10,0x10,0x1C,0x00 ; 0x5D
359 | .byte 0x08,0x14,0x22,0x00,0x00,0x00,0x00,0x00 ; 0x5E
360 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F ; 0x5F
361 | .byte 0x0C,0x0C,0x08,0x00,0x00,0x00,0x00,0x00 ; 0x60
362 | .byte 0x00,0x00,0x1C,0x20,0x3C,0x22,0x3C,0x00 ; 0x61
363 | .byte 0x02,0x02,0x1E,0x22,0x22,0x22,0x1E,0x00 ; 0x62
364 | .byte 0x00,0x00,0x1C,0x22,0x02,0x22,0x1C,0x00 ; 0x63
365 | .byte 0x20,0x20,0x3C,0x22,0x22,0x22,0x3C,0x00 ; 0x64
366 | .byte 0x00,0x00,0x1C,0x22,0x1E,0x02,0x1C,0x00 ; 0x65
367 | .byte 0x18,0x04,0x04,0x1E,0x04,0x04,0x04,0x00 ; 0x66
368 | .byte 0x00,0x00,0x3C,0x22,0x22,0x3C,0x20,0x1C ; 0x67
369 | .byte 0x02,0x02,0x0E,0x12,0x12,0x12,0x12,0x00 ; 0x68
370 | .byte 0x08,0x00,0x08,0x08,0x08,0x08,0x18,0x00 ; 0x69
371 | .byte 0x10,0x00,0x18,0x10,0x10,0x10,0x12,0x0C ; 0x6A
372 | .byte 0x02,0x02,0x12,0x0A,0x06,0x0A,0x12,0x00 ; 0x6B
373 | .byte 0x08,0x08,0x08,0x08,0x08,0x08,0x18,0x00 ; 0x6C
374 | .byte 0x00,0x00,0x16,0x2A,0x2A,0x22,0x22,0x00 ; 0x6D
375 | .byte 0x00,0x00,0x0E,0x12,0x12,0x12,0x12,0x00 ; 0x6E
376 | .byte 0x00,0x00,0x1C,0x22,0x22,0x22,0x1C,0x00 ; 0x6F
377 | .byte 0x00,0x00,0x1E,0x22,0x22,0x22,0x1E,0x02 ; 0x70
378 | .byte 0x00,0x00,0x3C,0x22,0x22,0x22,0x3C,0x20 ; 0x71
379 | .byte 0x00,0x00,0x1A,0x24,0x04,0x04,0x0E,0x00 ; 0x72
380 | .byte 0x00,0x00,0x1C,0x02,0x1C,0x20,0x1C,0x00 ; 0x73
381 | .byte 0x00,0x04,0x1E,0x04,0x04,0x14,0x08,0x00 ; 0x74
382 | .byte 0x00,0x00,0x12,0x12,0x12,0x1A,0x14,0x00 ; 0x75
383 | .byte 0x00,0x00,0x22,0x22,0x22,0x14,0x08,0x00 ; 0x76
384 | .byte 0x00,0x00,0x22,0x22,0x2A,0x3E,0x14,0x00 ; 0x77
385 | .byte 0x00,0x00,0x12,0x12,0x0C,0x12,0x12,0x00 ; 0x78
386 | .byte 0x00,0x00,0x12,0x12,0x12,0x1C,0x08,0x06 ; 0x79
387 | .byte 0x00,0x00,0x1E,0x10,0x0C,0x02,0x1E,0x00 ; 0x7A
388 | .byte 0x18,0x04,0x04,0x06,0x04,0x04,0x18,0x00 ; 0x7B
389 | .byte 0x08,0x08,0x08,0x00,0x08,0x08,0x08,0x00 ; 0x7C
390 | .byte 0x0C,0x10,0x10,0x30,0x10,0x10,0x0C,0x00 ; 0x7D
391 | .byte 0x14,0x0A,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x7E
392 | .byte 0x08,0x1C,0x36,0x22,0x22,0x3E,0x00,0x00 ; 0x7F
393 |
394 | FontEnd:
395 |
396 |
--------------------------------------------------------------------------------
/L1Demo-asm-Leo_audio/L1Demo-asm/Fonts.inc:
--------------------------------------------------------------------------------
1 | FontStart:
2 |
3 | ; classic 8x6 bitmapped font
4 | .byte 0x00, 0x00
5 | .byte 0x00, 0x00 ; first char
6 | .byte 0x7F, 0x00 ; last char
7 | .byte 0x08, 0x00 ; height
8 | ; glyph table
9 | .byte 6 ; width 0
10 | .byte 8,2,0
11 | .byte 6 ; width 1
12 | .byte 16,2,0
13 | .byte 6 ; width 2
14 | .byte 24,2,0
15 | .byte 6 ; width 3
16 | .byte 32,2,0
17 | .byte 6 ; width 4
18 | .byte 40,2,0
19 | .byte 6 ; width 5
20 | .byte 48,2,0
21 | .byte 6 ; width 6
22 | .byte 56,2,0
23 | .byte 6 ; width 7
24 | .byte 64,2,0
25 | .byte 6 ; width 8
26 | .byte 72,2,0
27 | .byte 6 ; width 9
28 | .byte 80,2,0
29 | .byte 6 ; width 10
30 | .byte 88,2,0
31 | .byte 6 ; width 11
32 | .byte 96,2,0
33 | .byte 6 ; width 12
34 | .byte 104,2,0
35 | .byte 6 ; width 13
36 | .byte 112,2,0
37 | .byte 6 ; width 14
38 | .byte 120,2,0
39 | .byte 6 ; width 15
40 | .byte 128,2,0
41 | .byte 6 ; width 16
42 | .byte 136,2,0
43 | .byte 6 ; width 17
44 | .byte 144,2,0
45 | .byte 6 ; width 18
46 | .byte 152,2,0
47 | .byte 6 ; width 19
48 | .byte 160,2,0
49 | .byte 6 ; width 20
50 | .byte 168,2,0
51 | .byte 6 ; width 21
52 | .byte 176,2,0
53 | .byte 6 ; width 22
54 | .byte 184,2,0
55 | .byte 6 ; width 23
56 | .byte 192,2,0
57 | .byte 6 ; width 24
58 | .byte 200,2,0
59 | .byte 6 ; width 25
60 | .byte 208,2,0
61 | .byte 6 ; width 26
62 | .byte 216,2,0
63 | .byte 6 ; width 27
64 | .byte 224,2,0
65 | .byte 6 ; width 28
66 | .byte 232,2,0
67 | .byte 6 ; width 29
68 | .byte 240,2,0
69 | .byte 6 ; width 30
70 | .byte 248,2,0
71 | .byte 6 ; width 31
72 | .byte 0,3,0
73 | .byte 6 ; width 32
74 | .byte 8,3,0
75 | .byte 6 ; width 33
76 | .byte 16,3,0
77 | .byte 6 ; width 34
78 | .byte 24,3,0
79 | .byte 6 ; width 35
80 | .byte 32,3,0
81 | .byte 6 ; width 36
82 | .byte 40,3,0
83 | .byte 6 ; width 37
84 | .byte 48,3,0
85 | .byte 6 ; width 38
86 | .byte 56,3,0
87 | .byte 6 ; width 39
88 | .byte 64,3,0
89 | .byte 6 ; width 40
90 | .byte 72,3,0
91 | .byte 6 ; width 41
92 | .byte 80,3,0
93 | .byte 6 ; width 42
94 | .byte 88,3,0
95 | .byte 6 ; width 43
96 | .byte 96,3,0
97 | .byte 6 ; width 44
98 | .byte 104,3,0
99 | .byte 6 ; width 45
100 | .byte 112,3,0
101 | .byte 6 ; width 46
102 | .byte 120,3,0
103 | .byte 6 ; width 47
104 | .byte 128,3,0
105 | .byte 6 ; width 48
106 | .byte 136,3,0
107 | .byte 6 ; width 49
108 | .byte 144,3,0
109 | .byte 6 ; width 50
110 | .byte 152,3,0
111 | .byte 6 ; width 51
112 | .byte 160,3,0
113 | .byte 6 ; width 52
114 | .byte 168,3,0
115 | .byte 6 ; width 53
116 | .byte 176,3,0
117 | .byte 6 ; width 54
118 | .byte 184,3,0
119 | .byte 6 ; width 55
120 | .byte 192,3,0
121 | .byte 6 ; width 56
122 | .byte 200,3,0
123 | .byte 6 ; width 57
124 | .byte 208,3,0
125 | .byte 6 ; width 58
126 | .byte 216,3,0
127 | .byte 6 ; width 59
128 | .byte 224,3,0
129 | .byte 6 ; width 60
130 | .byte 232,3,0
131 | .byte 6 ; width 61
132 | .byte 240,3,0
133 | .byte 6 ; width 62
134 | .byte 248,3,0
135 | .byte 6 ; width 63
136 | .byte 0,4,0
137 | .byte 6 ; width 64
138 | .byte 8,4,0
139 | .byte 6 ; width 65
140 | .byte 16,4,0
141 | .byte 6 ; width 66
142 | .byte 24,4,0
143 | .byte 6 ; width 67
144 | .byte 32,4,0
145 | .byte 6 ; width 68
146 | .byte 40,4,0
147 | .byte 6 ; width 69
148 | .byte 48,4,0
149 | .byte 6 ; width 70
150 | .byte 56,4,0
151 | .byte 6 ; width 71
152 | .byte 64,4,0
153 | .byte 6 ; width 72
154 | .byte 72,4,0
155 | .byte 6 ; width 73
156 | .byte 80,4,0
157 | .byte 6 ; width 74
158 | .byte 88,4,0
159 | .byte 6 ; width 75
160 | .byte 96,4,0
161 | .byte 6 ; width 76
162 | .byte 104,4,0
163 | .byte 6 ; width 77
164 | .byte 112,4,0
165 | .byte 6 ; width 78
166 | .byte 120,4,0
167 | .byte 6 ; width 79
168 | .byte 128,4,0
169 | .byte 6 ; width 80
170 | .byte 136,4,0
171 | .byte 6 ; width 81
172 | .byte 144,4,0
173 | .byte 6 ; width 82
174 | .byte 152,4,0
175 | .byte 6 ; width 83
176 | .byte 160,4,0
177 | .byte 6 ; width 84
178 | .byte 168,4,0
179 | .byte 6 ; width 85
180 | .byte 176,4,0
181 | .byte 6 ; width 86
182 | .byte 184,4,0
183 | .byte 6 ; width 87
184 | .byte 192,4,0
185 | .byte 6 ; width 88
186 | .byte 200,4,0
187 | .byte 6 ; width 89
188 | .byte 208,4,0
189 | .byte 6 ; width 90
190 | .byte 216,4,0
191 | .byte 6 ; width 91
192 | .byte 224,4,0
193 | .byte 6 ; width 92
194 | .byte 232,4,0
195 | .byte 6 ; width 93
196 | .byte 240,4,0
197 | .byte 6 ; width 94
198 | .byte 248,4,0
199 | .byte 6 ; width 95
200 | .byte 0,5,0
201 | .byte 6 ; width 96
202 | .byte 8,5,0
203 | .byte 6 ; width 97
204 | .byte 16,5,0
205 | .byte 6 ; width 98
206 | .byte 24,5,0
207 | .byte 6 ; width 99
208 | .byte 32,5,0
209 | .byte 6 ; width 100
210 | .byte 40,5,0
211 | .byte 6 ; width 101
212 | .byte 48,5,0
213 | .byte 6 ; width 102
214 | .byte 56,5,0
215 | .byte 6 ; width 103
216 | .byte 64,5,0
217 | .byte 6 ; width 104
218 | .byte 72,5,0
219 | .byte 6 ; width 105
220 | .byte 80,5,0
221 | .byte 6 ; width 106
222 | .byte 88,5,0
223 | .byte 6 ; width 107
224 | .byte 96,5,0
225 | .byte 6 ; width 108
226 | .byte 104,5,0
227 | .byte 6 ; width 109
228 | .byte 112,5,0
229 | .byte 6 ; width 110
230 | .byte 120,5,0
231 | .byte 6 ; width 111
232 | .byte 128,5,0
233 | .byte 6 ; width 112
234 | .byte 136,5,0
235 | .byte 6 ; width 113
236 | .byte 144,5,0
237 | .byte 6 ; width 114
238 | .byte 152,5,0
239 | .byte 6 ; width 115
240 | .byte 160,5,0
241 | .byte 6 ; width 116
242 | .byte 168,5,0
243 | .byte 6 ; width 117
244 | .byte 176,5,0
245 | .byte 6 ; width 118
246 | .byte 184,5,0
247 | .byte 6 ; width 119
248 | .byte 192,5,0
249 | .byte 6 ; width 120
250 | .byte 200,5,0
251 | .byte 6 ; width 121
252 | .byte 208,5,0
253 | .byte 6 ; width 122
254 | .byte 216,5,0
255 | .byte 6 ; width 123
256 | .byte 224,5,0
257 | .byte 6 ; width 124
258 | .byte 232,5,0
259 | .byte 6 ; width 125
260 | .byte 240,5,0
261 | .byte 6 ; width 126
262 | .byte 248,5,0
263 | .byte 6 ; width 127
264 | .byte 0,6,0
265 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x00
266 | .byte 0x1C,0x22,0x36,0x22,0x2A,0x22,0x1C,0x00 ; 0x01
267 | .byte 0x1C,0x3E,0x2A,0x3E,0x22,0x3E,0x1C,0x00 ; 0x02
268 | .byte 0x00,0x14,0x3E,0x3E,0x3E,0x1C,0x08,0x00 ; 0x03
269 | .byte 0x00,0x08,0x1C,0x3E,0x3E,0x1C,0x08,0x00 ; 0x04
270 | .byte 0x08,0x1C,0x1C,0x08,0x3E,0x3E,0x08,0x00 ; 0x05
271 | .byte 0x00,0x08,0x1C,0x3E,0x3E,0x08,0x1C,0x00 ; 0x06
272 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x07
273 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x08
274 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x09
275 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x0A
276 | .byte 0x00,0x38,0x30,0x2C,0x12,0x12,0x0C,0x00 ; 0x0B
277 | .byte 0x1C,0x22,0x22,0x1C,0x08,0x1C,0x08,0x00 ; 0x0C
278 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x0D
279 | .byte 0x30,0x2C,0x34,0x2C,0x34,0x36,0x06,0x00 ; 0x0E
280 | .byte 0x00,0x2A,0x1C,0x36,0x1C,0x2A,0x00,0x00 ; 0x0F
281 | .byte 0x04,0x0C,0x1C,0x3C,0x1C,0x0C,0x04,0x00 ; 0x10
282 | .byte 0x10,0x18,0x1C,0x1E,0x1C,0x18,0x10,0x00 ; 0x11
283 | .byte 0x08,0x1C,0x3E,0x08,0x3E,0x1C,0x08,0x00 ; 0x12
284 | .byte 0x14,0x14,0x14,0x14,0x14,0x00,0x14,0x00 ; 0x13
285 | .byte 0x3C,0x2A,0x2A,0x2C,0x28,0x28,0x28,0x00 ; 0x14
286 | .byte 0x1C,0x22,0x0C,0x14,0x18,0x22,0x1C,0x00 ; 0x15
287 | .byte 0x00,0x00,0x00,0x00,0x00,0x1E,0x1E,0x00 ; 0x16
288 | .byte 0x08,0x1C,0x3E,0x08,0x3E,0x1C,0x08,0x1C ; 0x17
289 | .byte 0x08,0x1C,0x3E,0x08,0x08,0x08,0x08,0x00 ; 0x18
290 | .byte 0x08,0x08,0x08,0x08,0x3E,0x1C,0x08,0x00 ; 0x19
291 | .byte 0x00,0x08,0x18,0x3E,0x18,0x08,0x00,0x00 ; 0x1A
292 | .byte 0x00,0x08,0x0C,0x3E,0x0C,0x08,0x00,0x00 ; 0x1B
293 | .byte 0x00,0x00,0x00,0x02,0x02,0x02,0x3E,0x00 ; 0x1C
294 | .byte 0x00,0x14,0x14,0x3E,0x14,0x14,0x00,0x00 ; 0x1D
295 | .byte 0x08,0x08,0x1C,0x1C,0x3E,0x3E,0x00,0x00 ; 0x1E
296 | .byte 0x3E,0x3E,0x1C,0x1C,0x08,0x08,0x00,0x00 ; 0x1F
297 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x20
298 | .byte 0x08,0x1C,0x1C,0x08,0x08,0x00,0x08,0x00 ; 0x21
299 | .byte 0x36,0x36,0x12,0x00,0x00,0x00,0x00,0x00 ; 0x22
300 | .byte 0x00,0x14,0x3E,0x14,0x14,0x3E,0x14,0x00 ; 0x23
301 | .byte 0x04,0x1C,0x02,0x0C,0x10,0x0E,0x08,0x00 ; 0x24
302 | .byte 0x26,0x26,0x10,0x08,0x04,0x32,0x32,0x00 ; 0x25
303 | .byte 0x04,0x0A,0x0A,0x04,0x2A,0x12,0x2C,0x00 ; 0x26
304 | .byte 0x0C,0x0C,0x04,0x00,0x00,0x00,0x00,0x00 ; 0x27
305 | .byte 0x08,0x04,0x04,0x04,0x04,0x04,0x08,0x00 ; 0x28
306 | .byte 0x04,0x08,0x08,0x08,0x08,0x08,0x04,0x00 ; 0x29
307 | .byte 0x00,0x14,0x1C,0x3E,0x1C,0x14,0x00,0x00 ; 0x2A
308 | .byte 0x00,0x08,0x08,0x3E,0x08,0x08,0x00,0x00 ; 0x2B
309 | .byte 0x00,0x00,0x00,0x00,0x00,0x0C,0x0C,0x04 ; 0x2C
310 | .byte 0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0x00 ; 0x2D
311 | .byte 0x00,0x00,0x00,0x00,0x00,0x0C,0x0C,0x00 ; 0x2E
312 | .byte 0x00,0x20,0x10,0x08,0x04,0x02,0x00,0x00 ; 0x2F
313 | .byte 0x1C,0x22,0x32,0x2A,0x26,0x22,0x1C,0x00 ; 0x30
314 | .byte 0x08,0x0C,0x08,0x08,0x08,0x08,0x1C,0x00 ; 0x31
315 | .byte 0x1C,0x22,0x20,0x18,0x04,0x02,0x3E,0x00 ; 0x32
316 | .byte 0x1C,0x22,0x20,0x1C,0x20,0x22,0x1C,0x00 ; 0x33
317 | .byte 0x10,0x18,0x14,0x12,0x3E,0x10,0x10,0x00 ; 0x34
318 | .byte 0x3E,0x02,0x02,0x1E,0x20,0x22,0x1C,0x00 ; 0x35
319 | .byte 0x18,0x04,0x02,0x1E,0x22,0x22,0x1C,0x00 ; 0x36
320 | .byte 0x3E,0x20,0x10,0x08,0x04,0x04,0x04,0x00 ; 0x37
321 | .byte 0x1C,0x22,0x22,0x1C,0x22,0x22,0x1C,0x00 ; 0x38
322 | .byte 0x1C,0x22,0x22,0x3C,0x20,0x10,0x0C,0x00 ; 0x39
323 | .byte 0x00,0x00,0x0C,0x0C,0x00,0x0C,0x0C,0x00 ; 0x3A
324 | .byte 0x00,0x00,0x0C,0x0C,0x00,0x0C,0x0C,0x04 ; 0x3B
325 | .byte 0x10,0x08,0x04,0x02,0x04,0x08,0x10,0x00 ; 0x3C
326 | .byte 0x00,0x00,0x3E,0x00,0x00,0x3E,0x00,0x00 ; 0x3D
327 | .byte 0x04,0x08,0x10,0x20,0x10,0x08,0x04,0x00 ; 0x3E
328 | .byte 0x1C,0x22,0x20,0x18,0x08,0x00,0x08,0x00 ; 0x3F
329 | .byte 0x1C,0x22,0x3A,0x2A,0x3A,0x02,0x1C,0x00 ; 0x40
330 | .byte 0x1C,0x22,0x22,0x22,0x3E,0x22,0x22,0x00 ; 0x41
331 | .byte 0x1E,0x22,0x22,0x1E,0x22,0x22,0x1E,0x00 ; 0x42
332 | .byte 0x1C,0x22,0x02,0x02,0x02,0x22,0x1C,0x00 ; 0x43
333 | .byte 0x1E,0x22,0x22,0x22,0x22,0x22,0x1E,0x00 ; 0x44
334 | .byte 0x3E,0x02,0x02,0x1E,0x02,0x02,0x3E,0x00 ; 0x45
335 | .byte 0x3E,0x02,0x02,0x1E,0x02,0x02,0x02,0x00 ; 0x46
336 | .byte 0x1C,0x22,0x02,0x3A,0x22,0x22,0x3C,0x00 ; 0x47
337 | .byte 0x22,0x22,0x22,0x3E,0x22,0x22,0x22,0x00 ; 0x48
338 | .byte 0x1C,0x08,0x08,0x08,0x08,0x08,0x1C,0x00 ; 0x49
339 | .byte 0x20,0x20,0x20,0x20,0x22,0x22,0x1C,0x00 ; 0x4A
340 | .byte 0x22,0x12,0x0A,0x06,0x0A,0x12,0x22,0x00 ; 0x4B
341 | .byte 0x02,0x02,0x02,0x02,0x02,0x02,0x3E,0x00 ; 0x4C
342 | .byte 0x22,0x36,0x2A,0x22,0x22,0x22,0x22,0x00 ; 0x4D
343 | .byte 0x22,0x26,0x2A,0x32,0x22,0x22,0x22,0x00 ; 0x4E
344 | .byte 0x1C,0x22,0x22,0x22,0x22,0x22,0x1C,0x00 ; 0x4F
345 | .byte 0x1E,0x22,0x22,0x1E,0x02,0x02,0x02,0x00 ; 0x50
346 | .byte 0x1C,0x22,0x22,0x22,0x2A,0x12,0x2C,0x00 ; 0x51
347 | .byte 0x1E,0x22,0x22,0x1E,0x12,0x22,0x22,0x00 ; 0x52
348 | .byte 0x1C,0x22,0x02,0x1C,0x20,0x22,0x1C,0x00 ; 0x53
349 | .byte 0x3E,0x08,0x08,0x08,0x08,0x08,0x08,0x00 ; 0x54
350 | .byte 0x22,0x22,0x22,0x22,0x22,0x22,0x1C,0x00 ; 0x55
351 | .byte 0x22,0x22,0x22,0x22,0x22,0x14,0x08,0x00 ; 0x56
352 | .byte 0x22,0x22,0x2A,0x2A,0x2A,0x2A,0x14,0x00 ; 0x57
353 | .byte 0x22,0x22,0x14,0x08,0x14,0x22,0x22,0x00 ; 0x58
354 | .byte 0x22,0x22,0x22,0x14,0x08,0x08,0x08,0x00 ; 0x59
355 | .byte 0x1E,0x10,0x08,0x04,0x02,0x02,0x1E,0x00 ; 0x5A
356 | .byte 0x1C,0x04,0x04,0x04,0x04,0x04,0x1C,0x00 ; 0x5B
357 | .byte 0x00,0x02,0x04,0x08,0x10,0x20,0x00,0x00 ; 0x5C
358 | .byte 0x1C,0x10,0x10,0x10,0x10,0x10,0x1C,0x00 ; 0x5D
359 | .byte 0x08,0x14,0x22,0x00,0x00,0x00,0x00,0x00 ; 0x5E
360 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F ; 0x5F
361 | .byte 0x0C,0x0C,0x08,0x00,0x00,0x00,0x00,0x00 ; 0x60
362 | .byte 0x00,0x00,0x1C,0x20,0x3C,0x22,0x3C,0x00 ; 0x61
363 | .byte 0x02,0x02,0x1E,0x22,0x22,0x22,0x1E,0x00 ; 0x62
364 | .byte 0x00,0x00,0x1C,0x22,0x02,0x22,0x1C,0x00 ; 0x63
365 | .byte 0x20,0x20,0x3C,0x22,0x22,0x22,0x3C,0x00 ; 0x64
366 | .byte 0x00,0x00,0x1C,0x22,0x1E,0x02,0x1C,0x00 ; 0x65
367 | .byte 0x18,0x04,0x04,0x1E,0x04,0x04,0x04,0x00 ; 0x66
368 | .byte 0x00,0x00,0x3C,0x22,0x22,0x3C,0x20,0x1C ; 0x67
369 | .byte 0x02,0x02,0x0E,0x12,0x12,0x12,0x12,0x00 ; 0x68
370 | .byte 0x08,0x00,0x08,0x08,0x08,0x08,0x18,0x00 ; 0x69
371 | .byte 0x10,0x00,0x18,0x10,0x10,0x10,0x12,0x0C ; 0x6A
372 | .byte 0x02,0x02,0x12,0x0A,0x06,0x0A,0x12,0x00 ; 0x6B
373 | .byte 0x08,0x08,0x08,0x08,0x08,0x08,0x18,0x00 ; 0x6C
374 | .byte 0x00,0x00,0x16,0x2A,0x2A,0x22,0x22,0x00 ; 0x6D
375 | .byte 0x00,0x00,0x0E,0x12,0x12,0x12,0x12,0x00 ; 0x6E
376 | .byte 0x00,0x00,0x1C,0x22,0x22,0x22,0x1C,0x00 ; 0x6F
377 | .byte 0x00,0x00,0x1E,0x22,0x22,0x22,0x1E,0x02 ; 0x70
378 | .byte 0x00,0x00,0x3C,0x22,0x22,0x22,0x3C,0x20 ; 0x71
379 | .byte 0x00,0x00,0x1A,0x24,0x04,0x04,0x0E,0x00 ; 0x72
380 | .byte 0x00,0x00,0x1C,0x02,0x1C,0x20,0x1C,0x00 ; 0x73
381 | .byte 0x00,0x04,0x1E,0x04,0x04,0x14,0x08,0x00 ; 0x74
382 | .byte 0x00,0x00,0x12,0x12,0x12,0x1A,0x14,0x00 ; 0x75
383 | .byte 0x00,0x00,0x22,0x22,0x22,0x14,0x08,0x00 ; 0x76
384 | .byte 0x00,0x00,0x22,0x22,0x2A,0x3E,0x14,0x00 ; 0x77
385 | .byte 0x00,0x00,0x12,0x12,0x0C,0x12,0x12,0x00 ; 0x78
386 | .byte 0x00,0x00,0x12,0x12,0x12,0x1C,0x08,0x06 ; 0x79
387 | .byte 0x00,0x00,0x1E,0x10,0x0C,0x02,0x1E,0x00 ; 0x7A
388 | .byte 0x18,0x04,0x04,0x06,0x04,0x04,0x18,0x00 ; 0x7B
389 | .byte 0x08,0x08,0x08,0x00,0x08,0x08,0x08,0x00 ; 0x7C
390 | .byte 0x0C,0x10,0x10,0x30,0x10,0x10,0x0C,0x00 ; 0x7D
391 | .byte 0x14,0x0A,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x7E
392 | .byte 0x08,0x1C,0x36,0x22,0x22,0x3E,0x00,0x00 ; 0x7F
393 |
394 | FontEnd:
395 |
396 |
--------------------------------------------------------------------------------
/L1Demo-asm-Leo_v8_audio/L1Demo-asm/Fonts.inc:
--------------------------------------------------------------------------------
1 | FontStart:
2 |
3 | ; classic 8x6 bitmapped font
4 | .byte 0x00, 0x00
5 | .byte 0x00, 0x00 ; first char
6 | .byte 0x7F, 0x00 ; last char
7 | .byte 0x08, 0x00 ; height
8 | ; glyph table
9 | .byte 6 ; width 0
10 | .byte 8,2,0
11 | .byte 6 ; width 1
12 | .byte 16,2,0
13 | .byte 6 ; width 2
14 | .byte 24,2,0
15 | .byte 6 ; width 3
16 | .byte 32,2,0
17 | .byte 6 ; width 4
18 | .byte 40,2,0
19 | .byte 6 ; width 5
20 | .byte 48,2,0
21 | .byte 6 ; width 6
22 | .byte 56,2,0
23 | .byte 6 ; width 7
24 | .byte 64,2,0
25 | .byte 6 ; width 8
26 | .byte 72,2,0
27 | .byte 6 ; width 9
28 | .byte 80,2,0
29 | .byte 6 ; width 10
30 | .byte 88,2,0
31 | .byte 6 ; width 11
32 | .byte 96,2,0
33 | .byte 6 ; width 12
34 | .byte 104,2,0
35 | .byte 6 ; width 13
36 | .byte 112,2,0
37 | .byte 6 ; width 14
38 | .byte 120,2,0
39 | .byte 6 ; width 15
40 | .byte 128,2,0
41 | .byte 6 ; width 16
42 | .byte 136,2,0
43 | .byte 6 ; width 17
44 | .byte 144,2,0
45 | .byte 6 ; width 18
46 | .byte 152,2,0
47 | .byte 6 ; width 19
48 | .byte 160,2,0
49 | .byte 6 ; width 20
50 | .byte 168,2,0
51 | .byte 6 ; width 21
52 | .byte 176,2,0
53 | .byte 6 ; width 22
54 | .byte 184,2,0
55 | .byte 6 ; width 23
56 | .byte 192,2,0
57 | .byte 6 ; width 24
58 | .byte 200,2,0
59 | .byte 6 ; width 25
60 | .byte 208,2,0
61 | .byte 6 ; width 26
62 | .byte 216,2,0
63 | .byte 6 ; width 27
64 | .byte 224,2,0
65 | .byte 6 ; width 28
66 | .byte 232,2,0
67 | .byte 6 ; width 29
68 | .byte 240,2,0
69 | .byte 6 ; width 30
70 | .byte 248,2,0
71 | .byte 6 ; width 31
72 | .byte 0,3,0
73 | .byte 6 ; width 32
74 | .byte 8,3,0
75 | .byte 6 ; width 33
76 | .byte 16,3,0
77 | .byte 6 ; width 34
78 | .byte 24,3,0
79 | .byte 6 ; width 35
80 | .byte 32,3,0
81 | .byte 6 ; width 36
82 | .byte 40,3,0
83 | .byte 6 ; width 37
84 | .byte 48,3,0
85 | .byte 6 ; width 38
86 | .byte 56,3,0
87 | .byte 6 ; width 39
88 | .byte 64,3,0
89 | .byte 6 ; width 40
90 | .byte 72,3,0
91 | .byte 6 ; width 41
92 | .byte 80,3,0
93 | .byte 6 ; width 42
94 | .byte 88,3,0
95 | .byte 6 ; width 43
96 | .byte 96,3,0
97 | .byte 6 ; width 44
98 | .byte 104,3,0
99 | .byte 6 ; width 45
100 | .byte 112,3,0
101 | .byte 6 ; width 46
102 | .byte 120,3,0
103 | .byte 6 ; width 47
104 | .byte 128,3,0
105 | .byte 6 ; width 48
106 | .byte 136,3,0
107 | .byte 6 ; width 49
108 | .byte 144,3,0
109 | .byte 6 ; width 50
110 | .byte 152,3,0
111 | .byte 6 ; width 51
112 | .byte 160,3,0
113 | .byte 6 ; width 52
114 | .byte 168,3,0
115 | .byte 6 ; width 53
116 | .byte 176,3,0
117 | .byte 6 ; width 54
118 | .byte 184,3,0
119 | .byte 6 ; width 55
120 | .byte 192,3,0
121 | .byte 6 ; width 56
122 | .byte 200,3,0
123 | .byte 6 ; width 57
124 | .byte 208,3,0
125 | .byte 6 ; width 58
126 | .byte 216,3,0
127 | .byte 6 ; width 59
128 | .byte 224,3,0
129 | .byte 6 ; width 60
130 | .byte 232,3,0
131 | .byte 6 ; width 61
132 | .byte 240,3,0
133 | .byte 6 ; width 62
134 | .byte 248,3,0
135 | .byte 6 ; width 63
136 | .byte 0,4,0
137 | .byte 6 ; width 64
138 | .byte 8,4,0
139 | .byte 6 ; width 65
140 | .byte 16,4,0
141 | .byte 6 ; width 66
142 | .byte 24,4,0
143 | .byte 6 ; width 67
144 | .byte 32,4,0
145 | .byte 6 ; width 68
146 | .byte 40,4,0
147 | .byte 6 ; width 69
148 | .byte 48,4,0
149 | .byte 6 ; width 70
150 | .byte 56,4,0
151 | .byte 6 ; width 71
152 | .byte 64,4,0
153 | .byte 6 ; width 72
154 | .byte 72,4,0
155 | .byte 6 ; width 73
156 | .byte 80,4,0
157 | .byte 6 ; width 74
158 | .byte 88,4,0
159 | .byte 6 ; width 75
160 | .byte 96,4,0
161 | .byte 6 ; width 76
162 | .byte 104,4,0
163 | .byte 6 ; width 77
164 | .byte 112,4,0
165 | .byte 6 ; width 78
166 | .byte 120,4,0
167 | .byte 6 ; width 79
168 | .byte 128,4,0
169 | .byte 6 ; width 80
170 | .byte 136,4,0
171 | .byte 6 ; width 81
172 | .byte 144,4,0
173 | .byte 6 ; width 82
174 | .byte 152,4,0
175 | .byte 6 ; width 83
176 | .byte 160,4,0
177 | .byte 6 ; width 84
178 | .byte 168,4,0
179 | .byte 6 ; width 85
180 | .byte 176,4,0
181 | .byte 6 ; width 86
182 | .byte 184,4,0
183 | .byte 6 ; width 87
184 | .byte 192,4,0
185 | .byte 6 ; width 88
186 | .byte 200,4,0
187 | .byte 6 ; width 89
188 | .byte 208,4,0
189 | .byte 6 ; width 90
190 | .byte 216,4,0
191 | .byte 6 ; width 91
192 | .byte 224,4,0
193 | .byte 6 ; width 92
194 | .byte 232,4,0
195 | .byte 6 ; width 93
196 | .byte 240,4,0
197 | .byte 6 ; width 94
198 | .byte 248,4,0
199 | .byte 6 ; width 95
200 | .byte 0,5,0
201 | .byte 6 ; width 96
202 | .byte 8,5,0
203 | .byte 6 ; width 97
204 | .byte 16,5,0
205 | .byte 6 ; width 98
206 | .byte 24,5,0
207 | .byte 6 ; width 99
208 | .byte 32,5,0
209 | .byte 6 ; width 100
210 | .byte 40,5,0
211 | .byte 6 ; width 101
212 | .byte 48,5,0
213 | .byte 6 ; width 102
214 | .byte 56,5,0
215 | .byte 6 ; width 103
216 | .byte 64,5,0
217 | .byte 6 ; width 104
218 | .byte 72,5,0
219 | .byte 6 ; width 105
220 | .byte 80,5,0
221 | .byte 6 ; width 106
222 | .byte 88,5,0
223 | .byte 6 ; width 107
224 | .byte 96,5,0
225 | .byte 6 ; width 108
226 | .byte 104,5,0
227 | .byte 6 ; width 109
228 | .byte 112,5,0
229 | .byte 6 ; width 110
230 | .byte 120,5,0
231 | .byte 6 ; width 111
232 | .byte 128,5,0
233 | .byte 6 ; width 112
234 | .byte 136,5,0
235 | .byte 6 ; width 113
236 | .byte 144,5,0
237 | .byte 6 ; width 114
238 | .byte 152,5,0
239 | .byte 6 ; width 115
240 | .byte 160,5,0
241 | .byte 6 ; width 116
242 | .byte 168,5,0
243 | .byte 6 ; width 117
244 | .byte 176,5,0
245 | .byte 6 ; width 118
246 | .byte 184,5,0
247 | .byte 6 ; width 119
248 | .byte 192,5,0
249 | .byte 6 ; width 120
250 | .byte 200,5,0
251 | .byte 6 ; width 121
252 | .byte 208,5,0
253 | .byte 6 ; width 122
254 | .byte 216,5,0
255 | .byte 6 ; width 123
256 | .byte 224,5,0
257 | .byte 6 ; width 124
258 | .byte 232,5,0
259 | .byte 6 ; width 125
260 | .byte 240,5,0
261 | .byte 6 ; width 126
262 | .byte 248,5,0
263 | .byte 6 ; width 127
264 | .byte 0,6,0
265 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x00
266 | .byte 0x1C,0x22,0x36,0x22,0x2A,0x22,0x1C,0x00 ; 0x01
267 | .byte 0x1C,0x3E,0x2A,0x3E,0x22,0x3E,0x1C,0x00 ; 0x02
268 | .byte 0x00,0x14,0x3E,0x3E,0x3E,0x1C,0x08,0x00 ; 0x03
269 | .byte 0x00,0x08,0x1C,0x3E,0x3E,0x1C,0x08,0x00 ; 0x04
270 | .byte 0x08,0x1C,0x1C,0x08,0x3E,0x3E,0x08,0x00 ; 0x05
271 | .byte 0x00,0x08,0x1C,0x3E,0x3E,0x08,0x1C,0x00 ; 0x06
272 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x07
273 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x08
274 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x09
275 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x0A
276 | .byte 0x00,0x38,0x30,0x2C,0x12,0x12,0x0C,0x00 ; 0x0B
277 | .byte 0x1C,0x22,0x22,0x1C,0x08,0x1C,0x08,0x00 ; 0x0C
278 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x0D
279 | .byte 0x30,0x2C,0x34,0x2C,0x34,0x36,0x06,0x00 ; 0x0E
280 | .byte 0x00,0x2A,0x1C,0x36,0x1C,0x2A,0x00,0x00 ; 0x0F
281 | .byte 0x04,0x0C,0x1C,0x3C,0x1C,0x0C,0x04,0x00 ; 0x10
282 | .byte 0x10,0x18,0x1C,0x1E,0x1C,0x18,0x10,0x00 ; 0x11
283 | .byte 0x08,0x1C,0x3E,0x08,0x3E,0x1C,0x08,0x00 ; 0x12
284 | .byte 0x14,0x14,0x14,0x14,0x14,0x00,0x14,0x00 ; 0x13
285 | .byte 0x3C,0x2A,0x2A,0x2C,0x28,0x28,0x28,0x00 ; 0x14
286 | .byte 0x1C,0x22,0x0C,0x14,0x18,0x22,0x1C,0x00 ; 0x15
287 | .byte 0x00,0x00,0x00,0x00,0x00,0x1E,0x1E,0x00 ; 0x16
288 | .byte 0x08,0x1C,0x3E,0x08,0x3E,0x1C,0x08,0x1C ; 0x17
289 | .byte 0x08,0x1C,0x3E,0x08,0x08,0x08,0x08,0x00 ; 0x18
290 | .byte 0x08,0x08,0x08,0x08,0x3E,0x1C,0x08,0x00 ; 0x19
291 | .byte 0x00,0x08,0x18,0x3E,0x18,0x08,0x00,0x00 ; 0x1A
292 | .byte 0x00,0x08,0x0C,0x3E,0x0C,0x08,0x00,0x00 ; 0x1B
293 | .byte 0x00,0x00,0x00,0x02,0x02,0x02,0x3E,0x00 ; 0x1C
294 | .byte 0x00,0x14,0x14,0x3E,0x14,0x14,0x00,0x00 ; 0x1D
295 | .byte 0x08,0x08,0x1C,0x1C,0x3E,0x3E,0x00,0x00 ; 0x1E
296 | .byte 0x3E,0x3E,0x1C,0x1C,0x08,0x08,0x00,0x00 ; 0x1F
297 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x20
298 | .byte 0x08,0x1C,0x1C,0x08,0x08,0x00,0x08,0x00 ; 0x21
299 | .byte 0x36,0x36,0x12,0x00,0x00,0x00,0x00,0x00 ; 0x22
300 | .byte 0x00,0x14,0x3E,0x14,0x14,0x3E,0x14,0x00 ; 0x23
301 | .byte 0x04,0x1C,0x02,0x0C,0x10,0x0E,0x08,0x00 ; 0x24
302 | .byte 0x26,0x26,0x10,0x08,0x04,0x32,0x32,0x00 ; 0x25
303 | .byte 0x04,0x0A,0x0A,0x04,0x2A,0x12,0x2C,0x00 ; 0x26
304 | .byte 0x0C,0x0C,0x04,0x00,0x00,0x00,0x00,0x00 ; 0x27
305 | .byte 0x08,0x04,0x04,0x04,0x04,0x04,0x08,0x00 ; 0x28
306 | .byte 0x04,0x08,0x08,0x08,0x08,0x08,0x04,0x00 ; 0x29
307 | .byte 0x00,0x14,0x1C,0x3E,0x1C,0x14,0x00,0x00 ; 0x2A
308 | .byte 0x00,0x08,0x08,0x3E,0x08,0x08,0x00,0x00 ; 0x2B
309 | .byte 0x00,0x00,0x00,0x00,0x00,0x0C,0x0C,0x04 ; 0x2C
310 | .byte 0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0x00 ; 0x2D
311 | .byte 0x00,0x00,0x00,0x00,0x00,0x0C,0x0C,0x00 ; 0x2E
312 | .byte 0x00,0x20,0x10,0x08,0x04,0x02,0x00,0x00 ; 0x2F
313 | .byte 0x1C,0x22,0x32,0x2A,0x26,0x22,0x1C,0x00 ; 0x30
314 | .byte 0x08,0x0C,0x08,0x08,0x08,0x08,0x1C,0x00 ; 0x31
315 | .byte 0x1C,0x22,0x20,0x18,0x04,0x02,0x3E,0x00 ; 0x32
316 | .byte 0x1C,0x22,0x20,0x1C,0x20,0x22,0x1C,0x00 ; 0x33
317 | .byte 0x10,0x18,0x14,0x12,0x3E,0x10,0x10,0x00 ; 0x34
318 | .byte 0x3E,0x02,0x02,0x1E,0x20,0x22,0x1C,0x00 ; 0x35
319 | .byte 0x18,0x04,0x02,0x1E,0x22,0x22,0x1C,0x00 ; 0x36
320 | .byte 0x3E,0x20,0x10,0x08,0x04,0x04,0x04,0x00 ; 0x37
321 | .byte 0x1C,0x22,0x22,0x1C,0x22,0x22,0x1C,0x00 ; 0x38
322 | .byte 0x1C,0x22,0x22,0x3C,0x20,0x10,0x0C,0x00 ; 0x39
323 | .byte 0x00,0x00,0x0C,0x0C,0x00,0x0C,0x0C,0x00 ; 0x3A
324 | .byte 0x00,0x00,0x0C,0x0C,0x00,0x0C,0x0C,0x04 ; 0x3B
325 | .byte 0x10,0x08,0x04,0x02,0x04,0x08,0x10,0x00 ; 0x3C
326 | .byte 0x00,0x00,0x3E,0x00,0x00,0x3E,0x00,0x00 ; 0x3D
327 | .byte 0x04,0x08,0x10,0x20,0x10,0x08,0x04,0x00 ; 0x3E
328 | .byte 0x1C,0x22,0x20,0x18,0x08,0x00,0x08,0x00 ; 0x3F
329 | .byte 0x1C,0x22,0x3A,0x2A,0x3A,0x02,0x1C,0x00 ; 0x40
330 | .byte 0x1C,0x22,0x22,0x22,0x3E,0x22,0x22,0x00 ; 0x41
331 | .byte 0x1E,0x22,0x22,0x1E,0x22,0x22,0x1E,0x00 ; 0x42
332 | .byte 0x1C,0x22,0x02,0x02,0x02,0x22,0x1C,0x00 ; 0x43
333 | .byte 0x1E,0x22,0x22,0x22,0x22,0x22,0x1E,0x00 ; 0x44
334 | .byte 0x3E,0x02,0x02,0x1E,0x02,0x02,0x3E,0x00 ; 0x45
335 | .byte 0x3E,0x02,0x02,0x1E,0x02,0x02,0x02,0x00 ; 0x46
336 | .byte 0x1C,0x22,0x02,0x3A,0x22,0x22,0x3C,0x00 ; 0x47
337 | .byte 0x22,0x22,0x22,0x3E,0x22,0x22,0x22,0x00 ; 0x48
338 | .byte 0x1C,0x08,0x08,0x08,0x08,0x08,0x1C,0x00 ; 0x49
339 | .byte 0x20,0x20,0x20,0x20,0x22,0x22,0x1C,0x00 ; 0x4A
340 | .byte 0x22,0x12,0x0A,0x06,0x0A,0x12,0x22,0x00 ; 0x4B
341 | .byte 0x02,0x02,0x02,0x02,0x02,0x02,0x3E,0x00 ; 0x4C
342 | .byte 0x22,0x36,0x2A,0x22,0x22,0x22,0x22,0x00 ; 0x4D
343 | .byte 0x22,0x26,0x2A,0x32,0x22,0x22,0x22,0x00 ; 0x4E
344 | .byte 0x1C,0x22,0x22,0x22,0x22,0x22,0x1C,0x00 ; 0x4F
345 | .byte 0x1E,0x22,0x22,0x1E,0x02,0x02,0x02,0x00 ; 0x50
346 | .byte 0x1C,0x22,0x22,0x22,0x2A,0x12,0x2C,0x00 ; 0x51
347 | .byte 0x1E,0x22,0x22,0x1E,0x12,0x22,0x22,0x00 ; 0x52
348 | .byte 0x1C,0x22,0x02,0x1C,0x20,0x22,0x1C,0x00 ; 0x53
349 | .byte 0x3E,0x08,0x08,0x08,0x08,0x08,0x08,0x00 ; 0x54
350 | .byte 0x22,0x22,0x22,0x22,0x22,0x22,0x1C,0x00 ; 0x55
351 | .byte 0x22,0x22,0x22,0x22,0x22,0x14,0x08,0x00 ; 0x56
352 | .byte 0x22,0x22,0x2A,0x2A,0x2A,0x2A,0x14,0x00 ; 0x57
353 | .byte 0x22,0x22,0x14,0x08,0x14,0x22,0x22,0x00 ; 0x58
354 | .byte 0x22,0x22,0x22,0x14,0x08,0x08,0x08,0x00 ; 0x59
355 | .byte 0x1E,0x10,0x08,0x04,0x02,0x02,0x1E,0x00 ; 0x5A
356 | .byte 0x1C,0x04,0x04,0x04,0x04,0x04,0x1C,0x00 ; 0x5B
357 | .byte 0x00,0x02,0x04,0x08,0x10,0x20,0x00,0x00 ; 0x5C
358 | .byte 0x1C,0x10,0x10,0x10,0x10,0x10,0x1C,0x00 ; 0x5D
359 | .byte 0x08,0x14,0x22,0x00,0x00,0x00,0x00,0x00 ; 0x5E
360 | .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F ; 0x5F
361 | .byte 0x0C,0x0C,0x08,0x00,0x00,0x00,0x00,0x00 ; 0x60
362 | .byte 0x00,0x00,0x1C,0x20,0x3C,0x22,0x3C,0x00 ; 0x61
363 | .byte 0x02,0x02,0x1E,0x22,0x22,0x22,0x1E,0x00 ; 0x62
364 | .byte 0x00,0x00,0x1C,0x22,0x02,0x22,0x1C,0x00 ; 0x63
365 | .byte 0x20,0x20,0x3C,0x22,0x22,0x22,0x3C,0x00 ; 0x64
366 | .byte 0x00,0x00,0x1C,0x22,0x1E,0x02,0x1C,0x00 ; 0x65
367 | .byte 0x18,0x04,0x04,0x1E,0x04,0x04,0x04,0x00 ; 0x66
368 | .byte 0x00,0x00,0x3C,0x22,0x22,0x3C,0x20,0x1C ; 0x67
369 | .byte 0x02,0x02,0x0E,0x12,0x12,0x12,0x12,0x00 ; 0x68
370 | .byte 0x08,0x00,0x08,0x08,0x08,0x08,0x18,0x00 ; 0x69
371 | .byte 0x10,0x00,0x18,0x10,0x10,0x10,0x12,0x0C ; 0x6A
372 | .byte 0x02,0x02,0x12,0x0A,0x06,0x0A,0x12,0x00 ; 0x6B
373 | .byte 0x08,0x08,0x08,0x08,0x08,0x08,0x18,0x00 ; 0x6C
374 | .byte 0x00,0x00,0x16,0x2A,0x2A,0x22,0x22,0x00 ; 0x6D
375 | .byte 0x00,0x00,0x0E,0x12,0x12,0x12,0x12,0x00 ; 0x6E
376 | .byte 0x00,0x00,0x1C,0x22,0x22,0x22,0x1C,0x00 ; 0x6F
377 | .byte 0x00,0x00,0x1E,0x22,0x22,0x22,0x1E,0x02 ; 0x70
378 | .byte 0x00,0x00,0x3C,0x22,0x22,0x22,0x3C,0x20 ; 0x71
379 | .byte 0x00,0x00,0x1A,0x24,0x04,0x04,0x0E,0x00 ; 0x72
380 | .byte 0x00,0x00,0x1C,0x02,0x1C,0x20,0x1C,0x00 ; 0x73
381 | .byte 0x00,0x04,0x1E,0x04,0x04,0x14,0x08,0x00 ; 0x74
382 | .byte 0x00,0x00,0x12,0x12,0x12,0x1A,0x14,0x00 ; 0x75
383 | .byte 0x00,0x00,0x22,0x22,0x22,0x14,0x08,0x00 ; 0x76
384 | .byte 0x00,0x00,0x22,0x22,0x2A,0x3E,0x14,0x00 ; 0x77
385 | .byte 0x00,0x00,0x12,0x12,0x0C,0x12,0x12,0x00 ; 0x78
386 | .byte 0x00,0x00,0x12,0x12,0x12,0x1C,0x08,0x06 ; 0x79
387 | .byte 0x00,0x00,0x1E,0x10,0x0C,0x02,0x1E,0x00 ; 0x7A
388 | .byte 0x18,0x04,0x04,0x06,0x04,0x04,0x18,0x00 ; 0x7B
389 | .byte 0x08,0x08,0x08,0x00,0x08,0x08,0x08,0x00 ; 0x7C
390 | .byte 0x0C,0x10,0x10,0x30,0x10,0x10,0x0C,0x00 ; 0x7D
391 | .byte 0x14,0x0A,0x00,0x00,0x00,0x00,0x00,0x00 ; 0x7E
392 | .byte 0x08,0x1C,0x36,0x22,0x22,0x3E,0x00,0x00 ; 0x7F
393 |
394 | FontEnd:
395 |
396 |
--------------------------------------------------------------------------------
/L1Demo-C-example/L1DemoProto.X/arko rotate/main.c:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 | #include
4 | #include
5 | #include
6 | #include
7 | #include "fonts.h"
8 |
9 | #define FCY 16000000UL // Instruction cycle frequency, Hz
10 | #include
11 |
12 | _CONFIG1(FWDTEN_OFF & GWRP_OFF & GCP_OFF & JTAGEN_OFF)
13 | _CONFIG2(POSCMOD_HS & FCKSM_CSDCMD & FNOSC_PRIPLL & PLL96MHZ_ON & PLLDIV_DIV2)
14 | _CONFIG3(ALTPMP_ALTPMPEN & SOSCSEL_EC)
15 |
16 | /*
17 | To change resolutions, use an X modeline generator like:
18 | http://xtiming.sourceforge.net/cgi-bin/xtiming.pl
19 | For example, 80x480@60Hz produces
20 | Modeline "80x480@61" 4.93 80 112 128 160 480 490 495 505
21 | Then we convert it to the values we need:
22 |
23 | 4.93 is the pixel clock in MHz, we need to set CLOCKDIV to match. To pick a
24 | divisor, use page 147 of the data sheet or, uh, this perl one-liner to
25 | generate all of them and pick one that's close:
26 | perl -e '$d = 1; $x = 0; while($x < 128) { printf "%s %.2f\n",$x,96/$d;if($x < 64) { $d += 0.25; } elsif($x < 96) { $d += 0.50 } else { $d += 1 }; $x++}'
27 |
28 | The differences between: 80 112 128 160 480
29 | are H-porch, H-Pulse, H-width
30 | The differences between: 480 490 495 505
31 | are V-porch, V-Pulse, V-width
32 |
33 | Once these values are in, the monitor will display it but it will probably
34 | be misaligned (especially vertically). Play with VENST_FUDGE and
35 | HENST_FUDGE to fix this.
36 | */
37 |
38 | #define HOR_RES 80UL
39 | #define VER_RES 480UL
40 | #define HOR_FRONT_PORCH 32
41 | #define HOR_PULSE_WIDTH 8
42 | #define HOR_BACK_PORCH 32
43 | #define VER_FRONT_PORCH 10
44 | #define VER_PULSE_WIDTH 5
45 | #define VER_BACK_PORCH 10
46 | #define BPP 8
47 | #define CLOCKDIV 69
48 | #define VENST_FUDGE 0
49 | #define HENST_FUDGE 0
50 | #define VSPOL 0 /* sync polarities */
51 | #define HSPOL 0
52 |
53 | #define CHR_FGCOLOR 0x5000
54 | #define CHR_BGCOLOR 0x5100
55 | #define CHR_FONTBASE 0x5200
56 | #define CHR_PRINTCHAR 0x5300
57 | #define CHR_TXTAREASTART 0x5800
58 | #define CHR_TXTAREAEND 0x5900
59 | #define CHR_PRINTPOS 0x5A00
60 | #define RCC_SRCADDR 0x6200
61 | #define RCC_DESTADDR 0x6300
62 | #define RCC_RECTSIZE 0x6400
63 | #define RCC_COLOR 0x6600
64 | #define RCC_STARTCOPY 0x6700
65 | #define IPU_SRCADDR 0x7100
66 | #define IPU_DESTADDR 0x7200
67 | #define IPU_DECOMPRESS 0x7400
68 |
69 | #define GFX_BUFFER_SIZE (HOR_RES * VER_RES / (8/BPP))
70 | //__eds__ uint8_t GFXDisplayBuffer[2][GFX_BUFFER_SIZE] __attribute__((eds, section("DISPLAY"), address(0x1000)));
71 | __eds__ uint8_t GFXDisplayBuffer[2][GFX_BUFFER_SIZE] __attribute__((far, section("DISPLAY"),space(eds)));
72 |
73 |
74 | void config_graphics(void) {
75 | _G1CLKSEL = 1;
76 | _GCLKDIV = CLOCKDIV;
77 |
78 | G1DPADRL = (unsigned long)(GFXDisplayBuffer) & 0xFFFF;
79 | G1DPADRH = (unsigned long)(GFXDisplayBuffer) >>16 & 0xFF;
80 | G1W1ADRL = (unsigned long)(GFXDisplayBuffer) & 0xFFFF;
81 | G1W1ADRH = (unsigned long)(GFXDisplayBuffer) >>16 & 0xFF;
82 | G1W2ADRL = (unsigned long)(GFXDisplayBuffer) & 0xFFFF;
83 | G1W2ADRH = (unsigned long)(GFXDisplayBuffer) >>16 & 0xFF;
84 |
85 | _GDBEN = 0xFFFF;
86 |
87 | // Using PIC24F manual section 43 page 37-38
88 | _DPMODE = 1; /* TFT */
89 | _GDBEN = 0xFFFF;
90 | _DPW = _PUW = HOR_RES; // Work area and FB size so GPU works
91 | _DPH = _PUH = VER_RES;
92 | _DPWT = HOR_FRONT_PORCH + HOR_PULSE_WIDTH + HOR_BACK_PORCH + HOR_RES;
93 | _DPHT = VER_FRONT_PORCH + VER_PULSE_WIDTH + VER_BACK_PORCH + VER_RES + 25;//VER_RES;// + 35; // centered but shaky
94 | _DPCLKPOL = 0;
95 | _DPENOE = 0;
96 | _DPENPOL = 0;
97 | _DPVSOE = 1;
98 | _DPHSOE = 1;
99 | _DPVSPOL = VSPOL;
100 | _DPHSPOL = HSPOL;
101 | _ACTLINE = _VENST = VER_FRONT_PORCH + VER_PULSE_WIDTH + VER_BACK_PORCH - VENST_FUDGE;
102 | _ACTPIX = _HENST = HOR_FRONT_PORCH + HOR_PULSE_WIDTH + HOR_BACK_PORCH - HENST_FUDGE;
103 | _VSST = VER_FRONT_PORCH;
104 | _HSST = HOR_FRONT_PORCH;
105 | _VSLEN = VER_PULSE_WIDTH;
106 | _HSLEN = HOR_PULSE_WIDTH;
107 | _DPPWROE = 0;
108 | _DPPINOE = 1;
109 | _DPPOWER = 1;
110 | _DPBPP = _PUBPP = 3;
111 |
112 |
113 | // _DPTEST = 2; /* Uncomment for test patterns */
114 |
115 | _G1EN = 1;
116 | __delay_ms(1);
117 | }
118 |
119 | void config_chr(void) {
120 | while(_CMDFUL) continue;
121 | G1CMDL = 0xFFFF;
122 | G1CMDH = CHR_FGCOLOR;
123 | Nop();
124 |
125 | while(_CMDFUL) continue;
126 | G1CMDL = 0;
127 | G1CMDH = CHR_BGCOLOR;
128 | Nop();
129 |
130 | while(_CMDFUL) continue;
131 | G1CMDL = (uint16_t)(FontStart) & 0xFFFF;
132 | G1CMDH = CHR_FONTBASE;
133 | Nop();
134 |
135 | while(_CMDFUL) continue;
136 | G1CMDL = 0;
137 | G1CMDH = CHR_TXTAREASTART;
138 | Nop();
139 |
140 | while(_CMDFUL) continue;
141 | G1CMDL = (HOR_RES & 0xF)<<12 | VER_RES;
142 | G1CMDH = CHR_TXTAREAEND | (HOR_RES >>4);
143 | Nop();
144 | }
145 |
146 | void chr_print(unsigned char *c) {
147 | while(_CMDFUL) continue;
148 | G1CMDL = 0;
149 | G1CMDH = CHR_PRINTPOS;
150 | Nop();
151 |
152 | while(*c != NULL) {
153 | while(_CMDFUL) continue;
154 | G1CMDL = *c;
155 | G1CMDH = CHR_PRINTCHAR;
156 | Nop();
157 |
158 | c++;
159 | }
160 | }
161 |
162 | void rcc_color(unsigned int color) {
163 | while(_CMDFUL) continue;
164 | G1CMDL = color;
165 | G1CMDH = RCC_COLOR;
166 | Nop();
167 | }
168 |
169 | void rcc_setdest(__eds__ uint8_t *buf) {
170 | while(!_CMDMPT) continue; // Wait for GPU to finish drawing
171 | G1W2ADRL = (unsigned long)(buf);
172 | G1W2ADRH = (unsigned long)(buf);
173 | }
174 |
175 | void gpu_setfb(__eds__ uint8_t *buf) {
176 | G1DPADRL = (unsigned long)(buf);
177 | G1DPADRH = (unsigned long)(buf);
178 | }
179 |
180 | void rcc_draw(uint16_t x, uint16_t y, uint16_t w, uint16_t h) {
181 | // destination
182 | while(_CMDFUL) continue;
183 | G1CMDL = x + y*HOR_RES;
184 | G1CMDH = RCC_DESTADDR | (x + y*HOR_RES)>>16;
185 | Nop();
186 |
187 | // size
188 | while(_CMDFUL) continue;
189 | G1CMDL = (w<<12) | h;
190 | G1CMDH = RCC_RECTSIZE | (w>>4);
191 | Nop();
192 |
193 | // go!
194 | while(_CMDFUL) continue;
195 | G1CMDL = 0xC<<3;
196 | G1CMDH = RCC_STARTCOPY;
197 | Nop();
198 | }
199 |
200 | void blank_background() {
201 | rcc_color(0xffff);
202 | //rcc_color(0x0000);
203 | rcc_draw(0, 0, HOR_RES-1, VER_RES-1);
204 | }
205 |
206 | volatile int fb_ready = 0;
207 | void __attribute__((interrupt, auto_psv))_GFX1Interrupt(void) {
208 | static int lines = 0;
209 | static int syncs = 0;
210 | static int next_fb = 1;
211 | if(_VMRGNIF) { /* on a vertical sync, flip buffers if it's ready */
212 | lines = 0;
213 | syncs++;
214 | if(fb_ready) {
215 | gpu_setfb(GFXDisplayBuffer[next_fb]);
216 | next_fb = !next_fb;
217 | }
218 | fb_ready = 0;
219 | _VMRGNIF = 0;
220 | } else if(_HMRGNIF) { /* on each horizontal sync, ...? */
221 | lines++;
222 | _HMRGNIF = 0;
223 | }
224 | _GFX1IF = 0;
225 | }
226 |
227 | #define PIX_W 1
228 | #define PIX_H 6
229 |
230 | #define MAX_SPRITES 10
231 | #define SPR_HEAD 5
232 |
233 | struct Sprite {
234 | uint8_t width; // Width (in pixels)
235 | uint8_t height; // Height (in pixels)
236 | uint8_t bitres; // Bits per Pixel
237 | uint8_t trans; // Transparency
238 | uint8_t rotate; // Rotation, 0: none, 1: 90 cw, 2: 180, 3: 90 ccw
239 | uint8_t *data; // Pointer to sprite pixel data
240 | };
241 |
242 | struct Sprite s[MAX_SPRITES];
243 |
244 | uint8_t SpriteMap[] __attribute__((space(eds)))= {
245 | 0x08, 0x08, 0x08, 0x00, 0x00, /* data */
246 | /* 0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff,
247 | 0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x00,
248 | 0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff,
249 | 0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x00,
250 | 0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff,
251 | 0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x00,
252 | 0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff,
253 | 0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x00,
254 | */
255 | 0xe0,0x00,0xff,0xff,0xff,0xff,0x00,0x1c,
256 | 0x00,0xff,0xff,0xff,0xff,0xff,0xff,0x00,
257 | 0x00,0xff,0xff,0xff,0xff,0xff,0xff,0x00,
258 | 0x00,0xff,0xff,0xff,0xff,0xff,0xff,0x00,
259 | 0x00,0xff,0xff,0xff,0xff,0xff,0xff,0x00,
260 | 0x00,0xff,0xff,0xff,0xff,0xff,0xff,0x00,
261 | 0x00,0xff,0xff,0xff,0xff,0xff,0xff,0x00,
262 | 0xe0,0x00,0xff,0xff,0xff,0xff,0x00,0x1c,
263 | /* // NSL Logo rotation test black background
264 | 0xe0,0xff,0x00,0x00,0x00,0x00,0xff,0x1c,
265 | 0xff,0x00,0x00,0x00,0x00,0x00,0x00,0xff,
266 | 0xff,0x00,0x00,0x00,0x00,0x00,0x00,0xff,
267 | 0xff,0x00,0x00,0x00,0x00,0x00,0x00,0xff,
268 | 0xff,0x00,0x00,0x00,0x00,0x00,0x00,0xff,
269 | 0xff,0x00,0x00,0x00,0x00,0x00,0x00,0xff,
270 | 0xff,0x00,0x00,0x00,0x00,0x00,0x00,0xff,
271 | 0xe0,0xff,0x00,0x00,0x00,0x00,0xff,0x03,
272 | */
273 |
274 | };
275 |
276 | /*
277 | 0xe0 pure red
278 | 0x1c pure green
279 | 0x03 pure blue
280 | */
281 |
282 | void loadSprite(uint8_t id) {
283 | // TODO: make this actually address multiple sprites
284 | //uint8_t off;
285 | //off = (uint16_t)(SpriteMap) & 0xFFFF;
286 | s[id].width = SpriteMap[0];
287 | s[id].height = SpriteMap[1];
288 | s[id].bitres = SpriteMap[2];
289 | s[id].trans = SpriteMap[3];
290 | s[id].rotate = SpriteMap[4];
291 | s[id].data = &SpriteMap[5];
292 |
293 | // next = s[id].width * s[id].height + SPR_HEAD
294 | }
295 |
296 | void drawSprite(uint16_t x, uint16_t y, uint8_t id, uint8_t rotation) {
297 |
298 | unsigned int w,h;
299 | unsigned int x1,y1;
300 |
301 | for (h=0; h < s[id].height; h++) {
302 | for (w=0; w < s[id].width; w++) {
303 | rcc_color(*(s[id].data + w + s[id].width*h));
304 | //rcc_color(rand()); tv screen effect
305 | switch(rotation) {
306 | // 00 deg 0,0 1,0 2,0 ... 0,1
307 | // 90 deg CCW 7,0 7,1 7,2 ... 6,0
308 | // 180 deg 7,7 6,7 5,7 ... 7,6
309 | // 90 deg CW 0,7 0,6 0,5 ... 1,6
310 | case 0: // 0 degree
311 | x1 = x+w;
312 | y1 = y + (h<<2) + (h<<1);//y+(PIX_H*h);
313 | if (x1 >= HOR_RES-2) break;
314 | if (y1 >= VER_RES-PIX_H) return;
315 | rcc_draw(x1, y1, 1,PIX_H);
316 | break;
317 | case 1: // 90 degree CW
318 | x1 = x+(s[id].width-h-1);
319 | y1 = y+(PIX_H*(w));
320 | if (x1 >= HOR_RES-1 || x1 <= 0) continue;
321 | if (y1 >= VER_RES-PIX_H || y1 <= 0) continue;
322 | rcc_draw(x1, y1, 1,PIX_H);
323 | break;
324 | case 2: // 180 degree
325 | if (x+(s[id].width-w-1) >= HOR_RES-1) continue;
326 | if (y+(PIX_H*(s[id].height-h-1)) >= VER_RES-PIX_H) continue;
327 | rcc_draw(x1, y1, 1,PIX_H);
328 | break;
329 | case 3: // 90 degree CCW
330 | default:
331 | break;
332 | }
333 | }
334 | }
335 | }
336 |
337 | void drawSpriteRotation(uint16_t x, uint16_t y, uint8_t id, uint16_t rotation) {
338 | int x1,y1;
339 |
340 | unsigned int w,h;
341 |
342 | for (h=0; h < s[id].height; h++) {
343 | for (w=0; w < s[id].width; w++) {
344 | rcc_color(*(s[id].data + w + s[id].width*h));
345 | x1 = x * cos(rotation) - y * sin(rotation);
346 | y1 = x * sin(rotation) - y * cos(rotation);
347 | if (x1 >= HOR_RES-1) continue;
348 | rcc_draw(x1, y1, 1, PIX_H);
349 | }
350 | }
351 | }
352 |
353 | int main(void) {
354 |
355 | ANSB = 0x0000;
356 | ANSC = 0x0000;
357 | ANSD = 0x0000;
358 | ANSF = 0x0000;
359 | ANSG = 0x0000;
360 | //OSCCON = 0x0000;
361 | //TRISE = 0x0000;
362 | TRISB = 0x0000;
363 |
364 | config_graphics();
365 | config_chr();
366 |
367 | // clear buffers
368 | rcc_setdest(GFXDisplayBuffer[0]);
369 | blank_background();
370 | rcc_setdest(GFXDisplayBuffer[1]);
371 | blank_background();
372 |
373 |
374 | _VMRGNIF = 0;
375 | _HMRGNIF = 0;
376 | _HMRGNIE = 1;
377 | _VMRGNIE = 1;
378 | _GFX1IE = 1;
379 |
380 | loadSprite(0);
381 | unsigned int lol = 0;
382 |
383 | int next_fb = 1;
384 | while (1) {
385 | rcc_setdest(GFXDisplayBuffer[next_fb]);
386 | next_fb = !next_fb;
387 |
388 | blank_background();
389 |
390 | //rcc_color(0x8888);
391 | //rcc_draw(50,50, 20, 20*PIX_H);
392 |
393 |
394 | drawSprite(((5+lol)%HOR_RES-1),10,0, (lol)%2);
395 | drawSprite(((10+lol)%HOR_RES-1),60,0, (lol)%2);
396 | drawSprite(((15+lol)%HOR_RES-1),110,0, (lol)%2);
397 | drawSprite(((20+lol)%HOR_RES-1),170,0, (lol)%2);
398 | drawSprite(((25+lol)%HOR_RES-1),220,0, (lol)%2);
399 | drawSprite(((30+lol)%HOR_RES-1),270,0, (lol)%2);
400 | drawSprite(((35+lol)%HOR_RES-1),320,0, (lol)%2);
401 | drawSprite(((40+lol)%HOR_RES-1),370,0, (lol)%2);
402 | drawSprite(((45+lol)%HOR_RES-1),420,0, (lol)%2);
403 | drawSprite(((50+lol)%HOR_RES-1),470,0, (lol)%2);
404 |
405 | if(lol > 80) lol=0;
406 | //drawSprite(((20+lol)%HOR_RES-1),200,0, 1);//(lol/100)%3);
407 | //drawSprite(((5+lol)%(HOR_RES-1)),300,0, 0);
408 | //drawSprite(40,300,0, 0);
409 | //drawSprite(40,300,0, (lol)%2);
410 | //drawSprite(40,10,0, 0);
411 | lol++;
412 |
413 | //rcc_color(0);
414 | //rcc_draw(0,0,20,20*PIX_H);
415 |
416 | //char message[50];
417 | //sprintf(message, "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ndisp: %04x\ndraw: %04x", GFXDisplayBuffer[0][15+50*HOR_RES], GFXDisplayBuffer[1][15+50*HOR_RES]);
418 | //chr_print(message);
419 |
420 | // screen border
421 | //rcc_color(0x0000);
422 | rcc_color(0xffff);
423 | rcc_draw(0,0, 1, VER_RES); // left
424 | rcc_draw(HOR_RES-2,0,1,VER_RES); // HOR_RES-1 // right
425 | rcc_draw(0,0, HOR_RES-2, PIX_H); // top
426 | rcc_draw(0,VER_RES-PIX_H,HOR_RES-2,PIX_H); // bottom
427 |
428 | // Clean right column
429 | rcc_color(0x0000);
430 | //rcc_color(0xffff);
431 | rcc_draw(HOR_RES-1,0, 1,VER_RES);
432 |
433 | while(!_CMDMPT) continue; // Wait for GPU to finish drawing
434 | fb_ready = 1;
435 | while(fb_ready) continue; // wait for gfx interrupt to flip
436 | __delay_ms(100);
437 | }
438 |
439 | return 0;
440 | }
--------------------------------------------------------------------------------