diff --git a/source/boing/boing-bel-background.spin b/source/boing/boing-bel-background.spin index c0db97d..69cee18 100644 Binary files a/source/boing/boing-bel-background.spin and b/source/boing/boing-bel-background.spin differ diff --git a/source/boing/boing-bel-corecon.spin b/source/boing/boing-bel-corecon.spin index 572958d..125188b 100644 --- a/source/boing/boing-bel-corecon.spin +++ b/source/boing/boing-bel-corecon.spin @@ -1 +1,42 @@ -'' '' prerequisites, dependencies & Co '' '' Author: Marko Lukat '' Last modified: 2011/10/22 '' Version: 0.9 '' CON _clkmode = XTAL1|PLL16X _xinfreq = 5_000_000 CON ID_0 = $30B3309C ID_1 = $9ED2732B ID_2 = $38343032 ' cog binary magic number (2048) OVERLAY = %00000000_00000001 ' cog binary is an overlay MAPPING = %00000000_00000010 ' translation table is present PUB null '' This is not a top level object. PUB launch(ID, code, data) '' PASM quick launch using a specific or the next available ID. '' '' parameters '' ID: cog ID '' 0..7: coginit, otherwise cognew (may fail) '' code: address of code fragment (4n) '' data: cognew/coginit parameter (4n) '' '' result '' == 0: [ABORT] thread creation failed (cognew only) '' <> 0: thread/cog ID + 1 ifnot (ID >> 3) coginit(ID++, code, data) elseifnot ID := cognew(code, data) + 1 abort return ID DAT \ No newline at end of file +'' +'' prerequisites, dependencies & Co +'' +'' Author: Marko Lukat +'' Last modified: 2011/10/22 +'' Version: 0.9 +'' +CON + _clkmode = XTAL1|PLL16X + _xinfreq = 5_000_000 + +CON + ID_0 = $30B3309C + ID_1 = $9ED2732B + ID_2 = $38343032 ' cog binary magic number (2048) + + OVERLAY = %00000000_00000001 ' cog binary is an overlay + MAPPING = %00000000_00000010 ' translation table is present + +PUB null +'' This is not a top level object. + +PUB launch(ID, code, data) +'' PASM quick launch using a specific or the next available ID. +'' +'' parameters +'' ID: cog ID +'' 0..7: coginit, otherwise cognew (may fail) +'' code: address of code fragment (4n) +'' data: cognew/coginit parameter (4n) +'' +'' result +'' == 0: [ABORT] thread creation failed (cognew only) +'' <> 0: thread/cog ID + 1 + + ifnot (ID >> 3) + coginit(ID++, code, data) + elseifnot ID := cognew(code, data) + 1 + abort + return ID + +DAT diff --git a/source/boing/boing-bel-driver.spin b/source/boing/boing-bel-driver.spin index 9046b16..622fb5a 100644 Binary files a/source/boing/boing-bel-driver.spin and b/source/boing/boing-bel-driver.spin differ diff --git a/source/boing/boing-bel.spin b/source/boing/boing-bel.spin index c34ba91..cdb4586 100644 Binary files a/source/boing/boing-bel.spin and b/source/boing/boing-bel.spin differ diff --git a/source/boing/boing-reg.spin b/source/boing/boing-reg.spin index 9882c19..f1fe188 100644 Binary files a/source/boing/boing-reg.spin and b/source/boing/boing-reg.spin differ