package Ġch ol iver . n esp ot . ap u Ċ Ċ // ĠSee Ġhttp :// wiki . nes dev . com / w / index . php / AP U _ Pulse Ċ class ĠSquare Syn th Ġ: ĠSyn th Ġ{ ĊĠ Ġprivate Ġval Ġlc Ġ= ĠLength Counter () ĊĠ Ġprivate Ġvar Ġi Seq Ġ= Ġ 0 ĊĠ Ġvar Ġhalt Length Ġ= Ġfalse ĊĠ Ġvar Ġd uty Cycle Ġ= Ġ 0 ĊĊĠ Ġvar Ġlength ĊĠĠĠ Ġget () Ġ= Ġlc . length ĊĠĠĠ Ġset ( value ) Ġ{ ĊĠĠĠĠĠ Ġlc . length Ġ= Ġvalue ĊĠĠĠĠĠ Ġi Seq Ġ= Ġ 0 Ġ Ġ// ĠRe starts Ġphase ĊĠĠĠ Ġ} ĊĊĠ Ġoverride Ġvar Ġenabled ĊĠĠĠ Ġget () Ġ= Ġlc . enabled ĊĠĠĠ Ġset ( value ) Ġ{ Ġlc . enabled Ġ= Ġvalue Ġ} ĊĊĠ Ġoverride Ġval Ġoutput Remaining Ġget () Ġ= Ġlc . remaining Ġ> Ġ 0 ĊĠ Ġoverride Ġval Ġoutput Ġget () Ġ= Ġif Ġ( output Remaining ) ĠSEQ U ENCES [ duty Cycle ][ i Seq ] Ġelse Ġ 0 ĊĊĠ Ġoverride Ġfun Ġon Timer ( num : ĠInt ) Ġ{ ĊĠĠĠ Ġi Seq Ġ= Ġ( i Seq Ġ+ Ġnum ) Ġ% ĠSEQUENCE _ LENGTH ĊĠ Ġ} ĊĊĠ Ġoverride Ġfun Ġon Half Frame () Ġ{ ĊĠĠĠ Ġif Ġ(! halt Length ) Ġ{ ĊĠĠĠĠ Ġlc . decrement () ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠ Ġprivate Ġval ĠSEQ U ENCES Ġ= ĠlistOf ( ĊĠĠĠĠĠ ĠlistOf ( 0 , Ġ 1 , Ġ 0 , Ġ 0 , Ġ 0 , Ġ 0 , Ġ 0 , Ġ 0 ), ĊĠĠĠĠĠ ĠlistOf ( 0 , Ġ 1 , Ġ 1 , Ġ 0 , Ġ 0 , Ġ 0 , Ġ 0 , Ġ 0 ), ĊĠĠĠĠĠ ĠlistOf ( 0 , Ġ 1 , Ġ 1 , Ġ 1 , Ġ 1 , Ġ 0 , Ġ 0 , Ġ 0 ), ĊĠĠĠĠĠ ĠlistOf ( 1 , Ġ 0 , Ġ 0 , Ġ 1 , Ġ 1 , Ġ 1 , Ġ 1 , Ġ 1 ) ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġprivate Ġconst Ġval ĠSEQUENCE _ LENGTH Ġ= Ġ 8 ĊĠ Ġ} Ċ } Ċ