From 00b0ec58b4a455cadc63f5165a084f0d49b4e055 Mon Sep 17 00:00:00 2001 From: Irmen de Jong Date: Thu, 14 Sep 2023 21:11:55 +0200 Subject: [PATCH] update to Antlr 4.13.1 --- .idea/libraries/antlr_antlr4.xml | 6 +++--- .idea/misc.xml | 3 +++ compiler/build.gradle | 2 +- compilerAst/build.gradle | 2 +- docs/source/software.rst | 9 +++++++++ examples/cx16/pcmaudio/play-adpcm.p8 | 12 ++++++++++++ parser/build.gradle | 4 ++-- 7 files changed, 31 insertions(+), 7 deletions(-) diff --git a/.idea/libraries/antlr_antlr4.xml b/.idea/libraries/antlr_antlr4.xml index c035c70ed..4d7b191a6 100644 --- a/.idea/libraries/antlr_antlr4.xml +++ b/.idea/libraries/antlr_antlr4.xml @@ -1,13 +1,13 @@ - + - - + + diff --git a/.idea/misc.xml b/.idea/misc.xml index cd58425e0..209ccd3b7 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -16,6 +16,9 @@ + + diff --git a/compiler/build.gradle b/compiler/build.gradle index 4ea8dadae..3e17768c0 100644 --- a/compiler/build.gradle +++ b/compiler/build.gradle @@ -33,7 +33,7 @@ dependencies { implementation project(':codeGenIntermediate') implementation project(':codeGenExperimental') implementation project(':virtualmachine') - implementation "org.antlr:antlr4-runtime:4.12.0" + implementation "org.antlr:antlr4-runtime:4.13.1" implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8" // implementation "org.jetbrains.kotlin:kotlin-reflect" implementation 'org.jetbrains.kotlinx:kotlinx-cli:0.3.6' diff --git a/compilerAst/build.gradle b/compilerAst/build.gradle index 81034674c..8403027c8 100644 --- a/compilerAst/build.gradle +++ b/compilerAst/build.gradle @@ -24,7 +24,7 @@ compileTestKotlin { dependencies { implementation project(':codeCore') implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8" - implementation "org.antlr:antlr4-runtime:4.12.0" + implementation "org.antlr:antlr4-runtime:4.13.1" implementation "com.michael-bull.kotlin-result:kotlin-result-jvm:1.1.18" implementation project(':parser') } diff --git a/docs/source/software.rst b/docs/source/software.rst index bce635c69..a2b4a554b 100644 --- a/docs/source/software.rst +++ b/docs/source/software.rst @@ -32,3 +32,12 @@ there are also larger pieces of software written using Prog8. Here's a list. `Streaming Music Demo `_ Demoscene like "music demos" for the Commander X16. They display graphics, animated song lyrics, and play a high quality sampled song streamed from disk. + + +Various things: + +`GalaX16 and other programs `_ + Beginnings of a Galaga game for the Commander X16. + +`Prog8 code for ZSMkit `_ + ZSMkit is an advanced music and sound effects engine for the Commander X16. diff --git a/examples/cx16/pcmaudio/play-adpcm.p8 b/examples/cx16/pcmaudio/play-adpcm.p8 index a40380cb8..f55495774 100644 --- a/examples/cx16/pcmaudio/play-adpcm.p8 +++ b/examples/cx16/pcmaudio/play-adpcm.p8 @@ -65,8 +65,20 @@ main { txt.print("\ndecoding all blocks...\n") cbm.SETTIM(0,0,0) repeat num_adpcm_blocks { + + ; If the IMA data is mono, an individual chunk of data begins with the following preamble: + ; bytes 0-1: initial predictor (in little-endian format) + ; byte 2: initial index + ; byte 3: unknown, usually 0 and is probably reserved + ; If the IMA data is stereo, a chunk begins with two preambles, one for the left audio channel and one for the right channel. + ; (so we have 8 bytes of preamble). + ; The remaining bytes in the chunk are the IMA nibbles. The first 4 bytes, or 8 nibbles, + ; belong to the left channel and -if it's stereo- the next 4 bytes belong to the right channel. + + ; The code here assumes mono. adpcm.init(peekw(nibblesptr), @(nibblesptr+2)) nibblesptr += 4 + repeat 252 { ubyte @zp nibble = @(nibblesptr) adpcm.decode_nibble(nibble & 15) ; first word diff --git a/parser/build.gradle b/parser/build.gradle index b9a8707fb..26bf8093d 100644 --- a/parser/build.gradle +++ b/parser/build.gradle @@ -10,8 +10,8 @@ java { } dependencies { - antlr 'org.antlr:antlr4:4.12.0' - implementation 'org.antlr:antlr4-runtime:4.12.0' + antlr 'org.antlr:antlr4:4.13.1' + implementation 'org.antlr:antlr4-runtime:4.13.1' } configurations.all {