
                        .FILE     H:\PROJAVR\ADA-C-DDS\DDS.pas

                        ; Compiled by E-LAB AVRco PASCAL Compiler Rev 4.46
                        ; Version     : Profi
                        ;
                        ; Licenced to : Demo Version
                        ;
                        ; (c)E-LAB Computers, Grombacherstr. 27  e-mail info@e-lab.de
                        ; D-74906 Bad Rappenau  Tel. 07268/9124-0 Fax. 07268/9124-24
                        ; ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
                        ; Source File : DDS.pas
                        ; Compiled    : 20. Juni 2007  11:48:06
                        ; ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

                        .MEDIUM
                        .ROMEND         07FFFh;

                        ; ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
                        ; Constants and Variables definition
                        ; ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


                        ; === Internal used memory and constants ===

FALSE                   .EQU    000h            ; const 
TRUE                    .EQU    0FFh            ; const 
NIL                     .EQU    000h            ; const 
PI                      .EQU    000h            ; const 
COMPILERREV             .EQU    1BEh            ; const 
COMPILERBUILD_Y         .EQU    006h            ; const 
COMPILERBUILD_M         .EQU    00Ah            ; const 
COMPILERBUILD_D         .EQU    016h            ; const 
COMPILEYEAR             .EQU    007h            ; const 
COMPILEMONTH            .EQU    006h            ; const 
COMPILEDAY              .EQU    014h            ; const 
COMPILEHOUR             .EQU    00Bh            ; const 
COMPILEMINUTE           .EQU    030h            ; const 
PROJECTBUILD            .EQU    152h            ; const 
OPTIMISERREV            .EQU    000h            ; const 
OPTIMISERBUILD          .EQU    000h            ; const 
INTFLAG                 .EQU    007h            ; const 
_EEPROM                 .EQU    006h            ; const 
_SIGN                   .EQU    005h            ; const 
_WAITLCD                .EQU    004h            ; const 
_STRCONST               .EQU    004h            ; const 
_DEVICE                 .EQU    003h            ; const 
_NEGATIVE               .EQU    002h            ; const 
_ERRFLAG                .EQU    001h            ; const 
_I2C2BYTE               .EQU    000h            ; const 
_TOGGLE300              .EQU    000h            ; const 
_LCDLOWER               .EQU    001h            ; const 
_DSP7RFR                .EQU    002h            ; const 
_PWRSAVFLG              .EQU    003h            ; const 
_STEPCW                 .EQU    004h            ; const 
_STEPDEST               .EQU    005h            ; const 
_FREQCNTFLAG            .EQU    006h            ; const 
_AUTOACK                .EQU    007h            ; const 
_ACCGLO                 .EQU    000h            ; var Data   byte
_ACCGHI                 .EQU    001h            ; var Data   byte
_ACCHLO                 .EQU    002h            ; var Data   byte
_ACCHHI                 .EQU    003h            ; var Data   byte
_ACCB                   .EQU    010h            ; var Data   byte
_ACCA                   .EQU    011h            ; var Data   byte
_ACCALO                 .EQU    012h            ; var Data   byte
_ACCAHI                 .EQU    013h            ; var Data   byte
_ACCDLO                 .EQU    014h            ; var Data   byte
_ACCDHI                 .EQU    015h            ; var Data   byte
_ACCELO                 .EQU    016h            ; var Data   byte
_ACCEHI                 .EQU    017h            ; var Data   byte
_ACCFLO                 .EQU    018h            ; var Data   byte
_ACCFHI                 .EQU    019h            ; var Data   byte
_ACCBLO                 .EQU    01Ah            ; var Data   byte
_ACCBHI                 .EQU    01Bh            ; var Data   byte
_FRAMEPTR               .EQU    01Ch            ; var Data   byte
_FPTRHI                 .EQU    01Dh            ; var Data   byte
_ACCCLO                 .EQU    01Eh            ; var Data   byte
_ACCCHI                 .EQU    01Fh            ; var Data   byte
FLAGS                   .EQU    004h            ; var Data   byte
FLAGS2                  .EQU    005h            ; var Data   byte
_SYSTFLAGS              .EQU    006h            ; var Data   byte
SYSTICK                 .EQU    001h            ; const 
PROCCLOCK               .EQU    0F42400h        ; const 
DECIMALSEP              .EQU    02Eh            ; const 
CPU_ID                  .EQU    1E9502h         ; const 
ROMconstPage            .EQU    0FFFFFFFFFFFFFFFFh          ; const 
STACKSIZE               .EQU    080h            ; const 
FRAMESIZE               .EQU    100h            ; const 
SERPORT                 .EQU    9600h           ; const 
_ADCBUFF                .EQU    0E8h            ; var iData  word
SREG                    .EQU    05Fh            ; var pData  byte
SPH                     .EQU    05Eh            ; var pData  byte
SPL                     .EQU    05Dh            ; var pData  byte
OCR0                    .EQU    05Ch            ; var pData  byte
OCR0A                   .EQU    05Ch            ; var pData  byte
GIMSK                   .EQU    05Bh            ; var pData  byte
GICR                    .EQU    05Bh            ; var pData  byte
GIFR                    .EQU    05Ah            ; var pData  byte
TIMSK                   .EQU    059h            ; var pData  byte
TIFR                    .EQU    058h            ; var pData  byte
SPMCR                   .EQU    057h            ; var pData  byte
SPMCSR                  .EQU    057h            ; var pData  byte
TWCR                    .EQU    056h            ; var pData  byte
MCUCR                   .EQU    055h            ; var pData  byte
MCUSR                   .EQU    054h            ; var pData  byte
MCUCSR                  .EQU    054h            ; var pData  byte
TCCR0                   .EQU    053h            ; var pData  byte
TCCR0A                  .EQU    053h            ; var pData  byte
TCNT0                   .EQU    052h            ; var pData  byte
OSCCAL                  .EQU    051h            ; var pData  byte
OCDR                    .EQU    051h            ; var pData  byte
SFIOR                   .EQU    050h            ; var pData  byte
TCCR1A                  .EQU    04Fh            ; var pData  byte
TCCR1B                  .EQU    04Eh            ; var pData  byte
TCNT1H                  .EQU    04Dh            ; var pData  byte
TCNT1L                  .EQU    04Ch            ; var pData  byte
OCR1AH                  .EQU    04Bh            ; var pData  byte
OCR1AL                  .EQU    04Ah            ; var pData  byte
OCR1BH                  .EQU    049h            ; var pData  byte
OCR1BL                  .EQU    048h            ; var pData  byte
ICR1H                   .EQU    047h            ; var pData  byte
ICR1L                   .EQU    046h            ; var pData  byte
TCCR2                   .EQU    045h            ; var pData  byte
TCCR2A                  .EQU    045h            ; var pData  byte
TCNT2                   .EQU    044h            ; var pData  byte
OCR2                    .EQU    043h            ; var pData  byte
OCR2A                   .EQU    043h            ; var pData  byte
ASSR                    .EQU    042h            ; var pData  byte
WDTCR                   .EQU    041h            ; var pData  byte
UBRR1H                  .EQU    040h            ; var pData  byte
UBRRH                   .EQU    040h            ; var pData  byte
UCSRC                   .EQU    040h            ; var pData  byte
UCSR0C                  .EQU    040h            ; var pData  byte
EEARH                   .EQU    03Fh            ; var pData  byte
EEARL                   .EQU    03Eh            ; var pData  byte
EEDR                    .EQU    03Dh            ; var pData  byte
EECR                    .EQU    03Ch            ; var pData  byte
PORTA                   .EQU    03Bh            ; var pData  byte
DDRA                    .EQU    03Ah            ; var pData  byte
PINA                    .EQU    039h            ; var pData  byte
PORTB                   .EQU    038h            ; var pData  byte
DDRB                    .EQU    037h            ; var pData  byte
PINB                    .EQU    036h            ; var pData  byte
PORTC                   .EQU    035h            ; var pData  byte
DDRC                    .EQU    034h            ; var pData  byte
PINC                    .EQU    033h            ; var pData  byte
PORTD                   .EQU    032h            ; var pData  byte
DDRD                    .EQU    031h            ; var pData  byte
PIND                    .EQU    030h            ; var pData  byte
SPDR                    .EQU    02Fh            ; var pData  byte
SPSR                    .EQU    02Eh            ; var pData  byte
SPCR                    .EQU    02Dh            ; var pData  byte
UDR1                    .EQU    02Ch            ; var pData  byte
USR1                    .EQU    02Bh            ; var pData  byte
UCSRA                   .EQU    02Bh            ; var pData  byte
UCR1                    .EQU    02Ah            ; var pData  byte
UCSRB                   .EQU    02Ah            ; var pData  byte
UBRR1                   .EQU    029h            ; var pData  byte
UBRRL                   .EQU    029h            ; var pData  byte
ACSR                    .EQU    028h            ; var pData  byte
ADMUX                   .EQU    027h            ; var pData  byte
ADCSR                   .EQU    026h            ; var pData  byte
ADCSRA                  .EQU    026h            ; var pData  byte
ADCH                    .EQU    025h            ; var pData  byte
ADCL                    .EQU    024h            ; var pData  byte
TWDR                    .EQU    023h            ; var pData  byte
TWAR                    .EQU    022h            ; var pData  byte
TWSR                    .EQU    021h            ; var pData  byte
TWBR                    .EQU    020h            ; var pData  byte
TCNT1                   .EQU    04Ch            ; var pData  word
OCR1A                   .EQU    04Ah            ; var pData  word
OCR1B                   .EQU    048h            ; var pData  word
ICR1                    .EQU    046h            ; var pData  word
EEAR                    .EQU    03Eh            ; var pData  word
ADC                     .EQU    024h            ; var pData  word
_iDataStart             .EQU    060h            ; const 
_iDataEnd               .EQU    85Fh            ; const 
_EEpromStart            .EQU    000h            ; const 
_EEpromEnd              .EQU    3FFh            ; const 
_FlashStart             .EQU    000h            ; const 
_FlashEnd               .EQU    7FFFh           ; const 
parNone                 .EQU    000h            ; const 
parEven                 .EQU    001h            ; const 
parOdd                  .EQU    002h            ; const 
DataBit5                .EQU    000h            ; const 
DataBit6                .EQU    001h            ; const 
DataBit7                .EQU    002h            ; const 
DataBit8                .EQU    003h            ; const 
StopBit1                .EQU    000h            ; const 
StopBit2                .EQU    001h            ; const 
_RXINP                  .EQU    061h            ; var iData  byte
_RXOUTP                 .EQU    062h            ; var iData  byte
_RXCOUNT                .EQU    063h            ; var iData  byte
_RXBUFF                 .EQU    064h            ; var iData  byte
_TXINP                  .EQU    0A4h            ; var iData  byte
_TXOUTP                 .EQU    0A5h            ; var iData  byte
_TXCOUNT                .EQU    0A6h            ; var iData  byte
_TXBUFF                 .EQU    0A7h            ; var iData  byte
LCD_m1                  .EQU    000h            ; const 
LCD_m2                  .EQU    001h            ; const 
LCD_m3                  .EQU    002h            ; const 
LCD_m4                  .EQU    003h            ; const 
LCD_m5                  .EQU    004h            ; const 
LCD_m6                  .EQU    005h            ; const 
LCD_m7                  .EQU    006h            ; const 
LCD_m8                  .EQU    007h            ; const 
_LCDM_PORT              .EQU    060h            ; var iData  byte
TWI_BR100               .EQU    048h            ; const 
TWI_BR400               .EQU    00Ch            ; const 
SysTickTime             .EQU    0E7h            ; var iData  byte
_INCRSTATE4             .EQU    0EDh            ; var iData  byte
_INCRCOUNT4_0           .EQU    0EEh            ; var iData  longint
_INCRCOUNT4_D0          .EQU    0F2h            ; var iData  longint
_TWI_TO                 .EQU    0F6h            ; var iData  byte
TWI_DevLock             .EQU    0F7h            ; var iData  DeviceLock
EEPROM                  .EQU    000h            ; var EEprom array



                        .RESET     000000h
                        .ORG       0, CODE_START
                        .STARTCODE 000054h


                        .XDATASTART -1


                        ; ============ user definitions module: SoftDDS ============

SoftDDS.c_off           .EQU    000h            ; const byte     0
SoftDDS.c_sinw          .EQU    001h            ; const byte     1
SoftDDS.c_triw          .EQU    002h            ; const byte     2
SoftDDS.c_squw          .EQU    003h            ; const byte     3
SoftDDS.c_logic         .EQU    004h            ; const byte     4
SoftDDS.c_ext           .EQU    005h            ; const byte     5
SoftDDS.DDRBinit        .EQU    01Fh            ; const byte     31
SoftDDS.PortBinit       .EQU    017h            ; const byte     23
SoftDDS.DDRCinit        .EQU    0FCh            ; const byte     252
SoftDDS.PortCinit       .EQU    0FFh            ; const byte     255
SoftDDS.DDRDinit        .EQU    00Ch            ; const byte     12
SoftDDS.PortDinit       .EQU    0FCh            ; const byte     252
SoftDDS.BtnInPortReg    .EQU    030h            ; const byte     48
SoftDDS.LEDOutPort      .EQU    032h            ; const byte     50
SoftDDS.DDSOutPort      .EQU    038h            ; const byte     56
SoftDDS.ControlBitPort  .EQU    038h            ; const byte     56
SoftDDS.b_SCLK          .EQU    000h            ; const byte     0
SoftDDS.b_SDATA         .EQU    001h            ; const byte     1
SoftDDS.b_FSYNC         .EQU    002h            ; const byte     2
SoftDDS.b_STROBE        .EQU    003h            ; const byte     3
SoftDDS.b_STRDAC        .EQU    004h            ; const byte     4
SoftDDS.b_SerAux        .EQU    005h            ; const byte     5
SoftDDS.c_ddsresetcmd   .EQU    02100h          ; const integer  8448
SoftDDS.c_ddssinecmd    .EQU    02000h          ; const integer  8192
SoftDDS.c_ddstrianglecmd      .EQU              02002h      ; const integer  8194
SoftDDS.c_ddssquarecmd  .EQU    02028h          ; const integer  8232
;fhz                     .EQU    '$006'; const String
;Vers1Str                .EQU    '3.482 [DDS by CM'; const String
;Vers3Str                .EQU    'DDS 3.482'; const String
;ErrStrArr               .EQU    ; const Array
;AdrStr                  .EQU    'Adr '; const String
;FrequStr                .EQU    'Frequ Hz'; const String
;LevelStr                .EQU    'Level '; const String
;OffsetStr               .EQU    'Offset V'; const String
;mVInpStr                .EQU    'Input mV'; const String
;WaveSelStrArr           .EQU    ; const Array
;WaveStr                 .EQU    'Function'; const String
;BurstStr                .EQU    'Burst ms'; const String
SoftDDS.ErrSubCh        .EQU    0FFh            ; const byte     255
;CmdStrArr               .EQU    ; const Array
;Cmd2SubChArr            .EQU    ; const Array
SoftDDS.high            .EQU    0FFh            ; const boolean  true
SoftDDS.low             .EQU    000h            ; const boolean  false
SoftDDS.InitFrequenz    .EQU    00000h          ; var EEprom longint
                        .SYM      InitFrequenz, 00000h, 04005h, 3
SoftDDS.InitLevel       .EQU    00004h          ; var EEprom longint
                        .SYM      InitLevel, 00004h, 04005h, 3
SoftDDS.InitdB          .EQU    000000008h      ; var EEprom Float
                        .SYM      InitdB, 00008h, 04006h, 3
SoftDDS.InitWave        .EQU    0000Ch          ; var EEprom byte
                        .SYM      InitWave, 0000Ch, 0400Dh, 3
SoftDDS.InitBurst       .EQU    0000Dh          ; var EEprom byte
                        .SYM      InitBurst, 0000Dh, 0400Dh, 3
SoftDDS.InitOffset      .EQU    0000Eh          ; var EEprom integer
                        .SYM      InitOffset, 0000Eh, 04004h, 3
SoftDDS.TerzArray       .EQU    00010h          ; var EEprom array
                        .SYM      TerzArray, 00010h, 04035h, 3
SoftDDS.EEPwrGaindB     .EQU    00090h          ; var EEprom byte
                        .SYM      EEPwrGaindB, 00090h, 0400Dh, 3
SoftDDS.EEPwrGainFac    .EQU    00091h          ; var EEprom byte
                        .SYM      EEPwrGainFac, 00091h, 0400Dh, 3
                        .SYM      i, 00007h, 0000Dh, 3
SoftDDS.i               .EQU    007h            ; var Data   byte
                        .SYM      k, 00008h, 0000Dh, 3
SoftDDS.k               .EQU    008h            ; var Data   byte
                        .SYM      m, 00009h, 0000Dh, 3
SoftDDS.m               .EQU    009h            ; var Data   byte
                        .SYM      dss_cmd, 000F8h, 0000Eh, 3
SoftDDS.dss_cmd         .EQU    0F8h            ; var iData  word
                        .SYM      wave_cmd, 000FAh, 0000Eh, 3
SoftDDS.wave_cmd        .EQU    0FAh            ; var iData  word
                        .SYM      SlaveCh, 000FCh, 0000Dh, 3
SoftDDS.SlaveCh         .EQU    0FCh            ; var iData  byte
                        .SYM      SwitchState, 000FDh, 0000Dh, 3
SoftDDS.SwitchState     .EQU    0FDh            ; var iData  byte
                        .SYM      ButtonTemp, 000FEh, 0000Dh, 3
SoftDDS.ButtonTemp      .EQU    0FEh            ; var iData  byte
                        .SYM      RangeTemp, 000FFh, 0000Dh, 3
SoftDDS.RangeTemp       .EQU    0FFh            ; var iData  byte
                        .SYM      DACtemp, 00100h, 00004h, 3
SoftDDS.DACtemp         .EQU    100h            ; var iData  integer
                        .SYM      DDSfrequ, 00102h, 00005h, 3
SoftDDS.DDSfrequ        .EQU    102h            ; var iData  longint
                        .SYM      LevelByteHi, 00106h, 0000Dh, 3
SoftDDS.LevelByteHi     .EQU    106h            ; var iData  byte
                        .SYM      LevelByteLo, 00107h, 0000Dh, 3
SoftDDS.LevelByteLo     .EQU    107h            ; var iData  byte
                        .SYM      OffsetRange, 00108h, 00003h, 3
SoftDDS.OffsetRange     .EQU    108h            ; var iData  boolean
                        .SYM      LevelRange, 00109h, 00003h, 3
SoftDDS.LevelRange      .EQU    109h            ; var iData  boolean
                        .SYM      BurstCount, 0010Ah, 0000Dh, 3
SoftDDS.BurstCount      .EQU    10Ah            ; var iData  byte
                        .SYM      BurstPrime, 0010Bh, 00003h, 3
SoftDDS.BurstPrime      .EQU    10Bh            ; var iData  boolean
                        .SYM      MP3isOn, 0010Ch, 00003h, 3
SoftDDS.MP3isOn         .EQU    10Ch            ; var iData  boolean
                        .SYM      MP3currenttrack, 0010Dh, 0000Dh, 3
SoftDDS.MP3currenttrack .EQU    10Dh            ; var iData  byte
                        .SYM      MP3SecondChanged, 0010Eh, 00003h, 3
SoftDDS.MP3SecondChanged      .EQU              10Eh        ; var iData  boolean
                        .SYM      MP3Track, 0010Fh, 0000Dh, 3
SoftDDS.MP3Track        .EQU    10Fh            ; var iData  byte
                        .SYM      MP3dBKorr, 00110h, 0000Dh, 3
SoftDDS.MP3dBKorr       .EQU    110h            ; var iData  byte
SoftDDS.BurstTimer      .EQU    111h            ; var iData  byte
                        .SYM      BurstTimer, 00111h, 0000Dh, 3
                        .SYM      Frequenz, 00112h, 00005h, 3
SoftDDS.Frequenz        .EQU    112h            ; var iData  longint
                        .SYM      TerzNum, 00116h, 0000Dh, 3
SoftDDS.TerzNum         .EQU    116h            ; var iData  byte
                        .SYM      Offset, 00117h, 00004h, 3
SoftDDS.Offset          .EQU    117h            ; var iData  integer
                        .SYM      Level, 00119h, 00005h, 3
SoftDDS.Level           .EQU    119h            ; var iData  longint
                        .SYM      dB, 0011Dh, 00006h, 3
SoftDDS.dB              .EQU    11Dh            ; var iData  Float
                        .SYM      dbInt, 00121h, 00004h, 3
SoftDDS.dbInt           .EQU    121h            ; var iData  integer
                        .SYM      BurstMode, 00123h, 0000Dh, 3
SoftDDS.BurstMode       .EQU    123h            ; var iData  byte
                        .SYM      Wave, 00124h, 0000Dh, 3
SoftDDS.Wave            .EQU    124h            ; var iData  byte
SoftDDS.freqStr         .EQU    125h            ; var iData  string
                        .SYM      freqStr, 00125h, 0303Ch, 3
                        .SYM      CmdWhich, 0012Eh, 0000Ah, 3
SoftDDS.CmdWhich        .EQU    12Eh            ; var iData  enum
SoftDDS.CmdStr          .EQU    12Fh            ; var iData  string
                        .SYM      CmdStr, 0012Fh, 0303Ch, 3
                        .SYM      SubCh, 00133h, 0000Dh, 3
SoftDDS.SubCh           .EQU    133h            ; var iData  byte
                        .SYM      CurrentCh, 00134h, 0000Dh, 3
SoftDDS.CurrentCh       .EQU    134h            ; var iData  byte
                        .SYM      OmniFlag, 00135h, 00003h, 3
SoftDDS.OmniFlag        .EQU    135h            ; var iData  boolean
                        .SYM      Param, 00136h, 00006h, 3
SoftDDS.Param           .EQU    136h            ; var iData  Float
                        .SYM      ParamInt, 0013Ah, 00004h, 3
SoftDDS.ParamInt        .EQU    13Ah            ; var iData  integer
                        .SYM      ParamLong, 0013Ch, 00005h, 3
SoftDDS.ParamLong       .EQU    13Ch            ; var iData  longint
                        .SYM      ParamByte, 00140h, 0000Dh, 3
SoftDDS.ParamByte       .EQU    140h            ; var iData  byte
SoftDDS.SerInpStr       .EQU    141h            ; var iData  string
                        .SYM      SerInpStr, 00141h, 0303Ch, 3
                        .SYM      SerInpPtr, 00181h, 0000Dh, 3
SoftDDS.SerInpPtr       .EQU    181h            ; var iData  byte
SoftDDS.ActivityTimer   .EQU    182h            ; var iData  word
                        .SYM      ActivityTimer, 00182h, 0000Eh, 3
SoftDDS.DisplayTimer    .EQU    184h            ; var iData  word
                        .SYM      DisplayTimer, 00184h, 0000Eh, 3
SoftDDS.IncrTimer       .EQU    186h            ; var iData  byte
                        .SYM      IncrTimer, 00186h, 0000Dh, 3
                        .SYM      LCDpresent, 00187h, 00003h, 3
SoftDDS.LCDpresent      .EQU    187h            ; var iData  boolean
                        .SYM      Modify, 00188h, 0000Ah, 3
SoftDDS.Modify          .EQU    188h            ; var iData  enum
                        .SYM      IncrValue, 00189h, 00005h, 3
SoftDDS.IncrValue       .EQU    189h            ; var iData  longint
                        .SYM      OldIncrValue, 0018Dh, 00005h, 3
SoftDDS.OldIncrValue    .EQU    18Dh            ; var iData  longint
                        .SYM      IncrFine, 00191h, 00003h, 3
SoftDDS.IncrFine        .EQU    191h            ; var iData  boolean
                        .SYM      FirstTurn, 00192h, 00003h, 3
SoftDDS.FirstTurn       .EQU    192h            ; var iData  boolean
                        .SYM      IncrAccFloat, 00193h, 00006h, 3
SoftDDS.IncrAccFloat    .EQU    193h            ; var iData  Float
                        .SYM      IncrDiff, 00197h, 00004h, 3
SoftDDS.IncrDiff        .EQU    197h            ; var iData  integer
                        .SYM      IncrAccInt10, 00199h, 00004h, 3
SoftDDS.IncrAccInt10    .EQU    199h            ; var iData  integer
                        .SYM      digits, 0019Bh, 0000Dh, 3
SoftDDS.digits          .EQU    19Bh            ; var iData  byte
                        .SYM      nachkomma, 0019Ch, 0000Dh, 3
SoftDDS.nachkomma       .EQU    19Ch            ; var iData  byte
SoftDDS.ParamStr        .EQU    19Dh            ; var iData  string
                        .SYM      ParamStr, 0019Dh, 0303Ch, 3
                        .SYM      isInteger, 001C6h, 00003h, 3
SoftDDS.isInteger       .EQU    1C6h            ; var iData  boolean
                        .SYM      Request, 001C7h, 00003h, 3
SoftDDS.Request         .EQU    1C7h            ; var iData  boolean
                        .SYM      Status, 001C8h, 0000Dh, 3
SoftDDS.Status          .EQU    1C8h            ; var iData  byte

                        .FILE     DDS-HW.pas
                        .FUNC     ClkPulsePos, 00003h, 00020h
SoftDDS.ClkPulsePos:
                        .BLOCK    5
                        .ASM
                        .LINE     7
                        brcs SoftDDS.1257datahigh1p
                        .LINE     8
                        cbi  SoftDDS.ControlBitPort, SoftDDS.b_SDATA
                        .LINE     9
                        rjmp SoftDDS.1257dataset1p
                        SoftDDS.1257datahigh1p:
                        .LINE     11
                        sbi  SoftDDS.ControlBitPort, SoftDDS.b_SDATA
                        SoftDDS.1257dataset1p:
                        .LINE     13
                        nop
                        .LINE     14
                        sbi  SoftDDS.ControlBitPort, SoftDDS.b_SCLK
                        .LINE     15
                        nop
                        .LINE     16
                        nop
                        .LINE     17
                        nop
                        .LINE     18
                        nop
                        .LINE     19
                        cbi  SoftDDS.ControlBitPort, SoftDDS.b_SCLK
                        .endasm
                        .ENDBLOCK 21
SoftDDS.ClkPulsePos_X:
                        .LINE     21
                        .BRANCH   19
                        RET
                        .ENDFUNC  21

                        .FUNC     ClkPulseLoad1257, 00017h, 00020h
SoftDDS.ClkPulseLoad1257:
                        .BLOCK    25
                        .ASM
                        .LINE     27
                        brcs SoftDDS.1257datahigh2
                        .LINE     28
                        cbi  SoftDDS.ControlBitPort, SoftDDS.b_SDATA
                        .LINE     29
                        rjmp SoftDDS.1257dataset2
                        SoftDDS.1257datahigh2:
                        .LINE     31
                        sbi  SoftDDS.ControlBitPort, SoftDDS.b_SDATA
                        SoftDDS.1257dataset2:
                        .LINE     33
                        nop
                        .LINE     34
                        sbi  SoftDDS.ControlBitPort, SoftDDS.b_SCLK
                        .LINE     35
                        cbi  SoftDDS.ControlBitPort, SoftDDS.b_STRDAC
                        .LINE     36
                        nop
                        .LINE     37
                        nop
                        .LINE     38
                        nop
                        .LINE     39
                        nop
                        .LINE     40
                        cbi  SoftDDS.ControlBitPort, SoftDDS.b_SCLK
                        .LINE     41
                        sbi  SoftDDS.ControlBitPort, SoftDDS.b_STRDAC
                        .endasm
                        .ENDBLOCK 43
SoftDDS.ClkPulseLoad1257_X:
                        .LINE     43
                        .BRANCH   19
                        RET
                        .ENDFUNC  43

                        .FUNC     ShiftOut1257, 0002Dh, 00020h
SoftDDS.ShiftOut1257:
                        .BLOCK    47
                        .LINE     48
                        LDD       _ACCB, Y+000h
                        LDD       _ACCA, Y+001h
                        LDI       _ACCBLO, 080h
                        EOR       _ACCA, _ACCBLO
                        CPI       _ACCA, 087h
                        BRNE      SoftDDS._L0000
                        CPI       _ACCB, 0FFh
SoftDDS._L0000:
                        LDI       _ACCA, 0h
                        BREQ      SoftDDS._L0001
                        BRLO      SoftDDS._L0001
                        SER       _ACCA
SoftDDS._L0001:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0004
                        BRNE      SoftDDS._L0004
                        .BRANCH   20,SoftDDS._L0002
                        JMP       SoftDDS._L0002
SoftDDS._L0004:
                        .BLOCK    48
                        .LINE     49
                        LDI       _ACCA, 007FFh SHRB 8
                        LDI       _ACCB, 007FFh AND 0FFh
                        STD       Y+001h, _ACCA
                        STD       Y+000h, _ACCB
                        .ENDBLOCK 50
SoftDDS._L0002:
SoftDDS._L0003:
                        .LINE     51
                        LDD       _ACCB, Y+000h
                        LDD       _ACCA, Y+001h
                        LDI       _ACCBLO, 080h
                        EOR       _ACCA, _ACCBLO
                        CPI       _ACCA, 078h
                        BRNE      SoftDDS._L0005
                        CPI       _ACCB, 001h
SoftDDS._L0005:
                        LDI       _ACCA, 0FFh
                        BRLO      SoftDDS._L0006
                        CLR       _ACCA
SoftDDS._L0006:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0009
                        BRNE      SoftDDS._L0009
                        .BRANCH   20,SoftDDS._L0007
                        JMP       SoftDDS._L0007
SoftDDS._L0009:
                        .BLOCK    51
                        .LINE     52
                        LDI       _ACCA, 0F801h SHRB 8
                        LDI       _ACCB, 0F801h AND 0FFh
                        STD       Y+001h, _ACCA
                        STD       Y+000h, _ACCB
                        .ENDBLOCK 53
SoftDDS._L0007:
SoftDDS._L0008:
                        .LINE     55
                        LDD       _ACCB, Y+000h
                        LDD       _ACCA, Y+001h
                        SUBI      _ACCB, -00800h AND 0FFh
                        SBCI      _ACCA, -00800h SHRB 8
                        STD       Y+001h, _ACCA
                        STD       Y+000h, _ACCB
                        .LINE     56
                        LDD       _ACCB, Y+000h
                        LDD       _ACCA, Y+001h
                        MOV       _ACCA, _ACCB
                        STS       SOFTDDS.LEVELBYTELO, _ACCA
                        .LINE     57
                        LDD       _ACCB, Y+000h
                        LDD       _ACCA, Y+001h
                        STS       SOFTDDS.LEVELBYTEHI, _ACCA
                        .ASM
                        .LINE     59
                        cbi  SoftDDS.ControlBitPort, SoftDDS.b_SDATA
                        .LINE     60
                        cbi  SoftDDS.ControlBitPort, SoftDDS.b_SCLK
                        .LINE     61
                        sbi  SoftDDS.ControlBitPort, SoftDDS.b_STRDAC
                        .LINE     63
                        LDS _ACCA, SoftDDS.LevelByteHi ; MSB linksbündig
                        .LINE     64
                        LSL  _ACCA
                        .LINE     65
                        LSL  _ACCA
                        .LINE     66
                        LSL  _ACCA
                        .LINE     67
                        LSL  _ACCA ; Bit 3 sitzt jetzt oben
                        .LINE     68
                        ldi  _ACCB, 4
                        SoftDDS.1257loop1:
                        .LINE     71
                        LSL  _ACCA
                        .LINE     72
                        rcall SoftDDS.ClkPulsePos
                        .LINE     73
                        dec _ACCB
                        .LINE     74
                        BRNE  SoftDDS.1257loop1
                        .LINE     76
                        LDS _ACCA, SoftDDS.LevelByteLo         ; LSB Level zuletzt
                        .LINE     77
                        ldi  _ACCB, 7 ; 7 Bits ohne Load
                        SoftDDS.1257loop2:
                        .LINE     80
                        LSL  _ACCA
                        .LINE     81
                        rcall SoftDDS.ClkPulsePos
                        .LINE     82
                        dec _ACCB
                        .LINE     83
                        BRNE  SoftDDS.1257loop2
                        .LINE     85
                        LSL  _ACCA ; LSB mit Load
                        .LINE     86
                        rcall SoftDDS.ClkPulseLoad1257
                        .LINE     88
                        cbi  SoftDDS.ControlBitPort, SoftDDS.b_SDATA
                        .LINE     89
                        cbi  SoftDDS.ControlBitPort, SoftDDS.b_SCLK
                        .LINE     90
                        sbi  SoftDDS.ControlBitPort, SoftDDS.b_STRDAC
                        .endasm
                        .ENDBLOCK 92
SoftDDS.ShiftOut1257_X:
                        .LINE     92
                        .BRANCH   19
                        RET
                        .ENDFUNC  92

                        .FUNC     ShiftOutLevelSR, 0005Eh, 00020h
SoftDDS.ShiftOutLevelSR:
                        .BLOCK    97
                        .LINE     98
                        LDD       _ACCB, Y+000h
                        LDD       _ACCA, Y+001h
                        STS       SOFTDDS.LEVELBYTEHI, _ACCA
                        .LINE     99
                        LDD       _ACCB, Y+000h
                        LDD       _ACCA, Y+001h
                        MOV       _ACCA, _ACCB
                        STS       SOFTDDS.LEVELBYTELO, _ACCA
                        .LINE     101
                        LDS       _ACCA, SoftDDS.LevelByteHi
                        PUSH      _ACCA
                        LDS       _ACCA, SoftDDS.SwitchState
                        POP       _ACCB
                        OR        _ACCA, _ACCB
                        STS       SOFTDDS.LEVELBYTEHI, _ACCA
                        .ASM
                        .LINE     104
                        cbi  SoftDDS.DDSOutPort, SoftDDS.b_SCLK
                        .LINE     105
                        LDS _ACCA, SoftDDS.SwitchState;
                        .LINE     106
                        ldi  _ACCB, 8
                        SoftDDS.srloop1:
                        .LINE     109
                        LSL  _ACCA
                        .LINE     110
                        brcs SoftDDS.datahigh1
                        .LINE     111
                        cbi  SoftDDS.DDSOutPort, SoftDDS.b_SDATA
                        .LINE     112
                        rjmp SoftDDS.dataset1
                        SoftDDS.datahigh1:
                        .LINE     114
                        sbi  SoftDDS.DDSOutPort, SoftDDS.b_SDATA
                        SoftDDS.dataset1:
                        .LINE     116
                        nop
                        .LINE     117
                        sbi  SoftDDS.DDSOutPort, SoftDDS.b_SCLK
                        .LINE     118
                        nop
                        .LINE     119
                        cbi  SoftDDS.DDSOutPort, SoftDDS.b_SCLK
                        .LINE     120
                        dec _ACCB
                        .LINE     121
                        BRNE  SoftDDS.srloop1
                        .LINE     123
                        LDS _ACCA, SoftDDS.LevelByteHi;
                        .LINE     124
                        ldi  _ACCB, 8
                        SoftDDS.srloop2:
                        .LINE     127
                        LSL  _ACCA
                        .LINE     128
                        brcs SoftDDS.datahigh2
                        .LINE     129
                        cbi  SoftDDS.DDSOutPort, SoftDDS.b_SDATA
                        .LINE     130
                        rjmp SoftDDS.dataset2
                        SoftDDS.datahigh2:
                        .LINE     132
                        sbi  SoftDDS.DDSOutPort, SoftDDS.b_SDATA
                        SoftDDS.dataset2:
                        .LINE     134
                        nop
                        .LINE     135
                        sbi  SoftDDS.DDSOutPort, SoftDDS.b_SCLK
                        .LINE     136
                        nop
                        .LINE     137
                        cbi  SoftDDS.DDSOutPort, SoftDDS.b_SCLK
                        .LINE     138
                        dec _ACCB
                        .LINE     139
                        BRNE  SoftDDS.srloop2
                        .LINE     141
                        LDS _ACCA, SoftDDS.LevelByteLo         ; LSB Level zuletzt
                        .LINE     142
                        ldi  _ACCB, 8
                        SoftDDS.srloop3:
                        .LINE     145
                        LSL  _ACCA
                        .LINE     146
                        brcs SoftDDS.datahigh3
                        .LINE     147
                        cbi  SoftDDS.DDSOutPort, SoftDDS.b_SDATA
                        .LINE     148
                        rjmp SoftDDS.dataset3
                        SoftDDS.datahigh3:
                        .LINE     150
                        sbi  SoftDDS.DDSOutPort, SoftDDS.b_SDATA
                        SoftDDS.dataset3:
                        .LINE     152
                        nop
                        .LINE     153
                        sbi  SoftDDS.DDSOutPort, SoftDDS.b_SCLK
                        .LINE     154
                        nop
                        .LINE     155
                        cbi  SoftDDS.DDSOutPort, SoftDDS.b_SCLK
                        .LINE     156
                        dec _ACCB
                        .LINE     157
                        BRNE  SoftDDS.srloop3
                        .LINE     159
                        sbi  SoftDDS.DDSOutPort, SoftDDS.b_STROBE
                        .LINE     160
                        nop
                        .LINE     161
                        nop
                        .LINE     162
                        cbi  SoftDDS.DDSOutPort, SoftDDS.b_STROBE
                        .LINE     163
                        sbi  SoftDDS.DDSOutPort, SoftDDS.b_SCLK
                        .endasm
                        .ENDBLOCK 165
SoftDDS.ShiftOutLevelSR_X:
                        .LINE     165
                        .BRANCH   19
                        RET
                        .ENDFUNC  165

                        .FUNC     SendDDS, 000A8h, 00020h
SoftDDS.SendDDS:
                        .BLOCK    170
                        .ASM
                        .LINE     172
                        sbi  SoftDDS.DDSOutPort, SoftDDS.b_SCLK
                        .LINE     173
                        lds  _ACCDLO, SoftDDS.dss_cmd
                        .LINE     174
                        lds  _ACCDHI, SoftDDS.dss_cmd+1
                        .LINE     175
                        cbi  SoftDDS.DDSOutPort, SoftDDS.b_FSYNC
                        .LINE     177
                        ldi  _ACCB, 8
                        SoftDDS.ddsloop1:    ; höherwertiges Byte rausschieben
                        .LINE     180
                        lsl  _ACCDHI
                        .LINE     181
                        brcs SoftDDS.ddsdatahigh
                        .LINE     182
                        cbi  SoftDDS.DDSOutPort, SoftDDS.b_SDATA
                        .LINE     183
                        rjmp SoftDDS.ddsdataset
                        SoftDDS.ddsdatahigh:
                        .LINE     185
                        sbi  SoftDDS.DDSOutPort, SoftDDS.b_SDATA
                        SoftDDS.ddsdataset:
                        .LINE     187
                        cbi  SoftDDS.DDSOutPort, SoftDDS.b_SCLK
                        .LINE     188
                        nop
                        .LINE     189
                        sbi  SoftDDS.DDSOutPort, SoftDDS.b_SCLK
                        .LINE     190
                        dec _ACCB
                        .LINE     191
                        brne  SoftDDS.ddsloop1
                        .LINE     193
                        ldi  _ACCB, 8
                        SoftDDS.dssloop2:    ; niederwertiges Byte rausschieben
                        .LINE     196
                        lsl  _ACCDLO
                        .LINE     197
                        brcs SoftDDS.ddsdatahigh2
                        .LINE     198
                        cbi  SoftDDS.DDSOutPort, SoftDDS.b_SDATA
                        .LINE     199
                        rjmp SoftDDS.ddsdataset2
                        SoftDDS.ddsdatahigh2:
                        .LINE     201
                        sbi  SoftDDS.DDSOutPort, SoftDDS.b_SDATA
                        SoftDDS.ddsdataset2:
                        .LINE     203
                        cbi  SoftDDS.DDSOutPort, SoftDDS.b_SCLK
                        .LINE     204
                        nop
                        .LINE     205
                        sbi  SoftDDS.DDSOutPort, SoftDDS.b_SCLK
                        .LINE     206
                        dec _ACCB
                        .LINE     207
                        brne  SoftDDS.dssloop2
                        .LINE     209
                        sbi  SoftDDS.DDSOutPort, SoftDDS.b_FSYNC
                        .endasm
                        .ENDBLOCK 211
SoftDDS.SendDDS_X:
                        .LINE     211
                        .BRANCH   19
                        RET
                        .ENDFUNC  211

                        .FUNC     SetLevelDDS, 000D9h, 00020h
SoftDDS.SetLevelDDS:
                        SBIW      _FRAMEPTR, 14
                        .BLOCK    226
                        .LINE     227
                        LDI       _ACCA, 000h
                        STS       SOFTDDS.SWITCHSTATE, _ACCA
                        .LINE     228
                        LDI       _ACCA, 000h
                        STS       SOFTDDS.LEVELBYTEHI, _ACCA
                        .LINE     229
                        LDI       _ACCA, 000h
                        STS       SOFTDDS.LEVELBYTELO, _ACCA
                        .LINE     230
                        LDS       _ACCB, SoftDDS.Offset
                        LDS       _ACCA, SoftDDS.Offset+1
                        STD       Y+001h, _ACCA
                        STD       Y+000h, _ACCB
                        .LINE     233
                        LDD       _ACCB, Y+000h
                        LDD       _ACCA, Y+001h
                        LDI       _ACCBLO, 080h
                        EOR       _ACCA, _ACCBLO
                        CPI       _ACCA, 080h
                        BRNE      SoftDDS._L0010
                        CPI       _ACCB, 000h
SoftDDS._L0010:
                        LDI       _ACCA, 0h
                        BRNE      SoftDDS._L0011
                        SER       _ACCA
SoftDDS._L0011:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0014
                        BRNE      SoftDDS._L0014
                        .BRANCH   20,SoftDDS._L0012
                        JMP       SoftDDS._L0012
SoftDDS._L0014:
                        .BLOCK    234
                        .LINE     234
                        LDS       _ACCA, 000FDh
                        SBR       _ACCA, 080h
                        STS       000FDh, _ACCA
                        .LINE     235
                        SBI       00032h, 003h
                        .ENDBLOCK 236
                        .BRANCH   20,SoftDDS._L0013
                        JMP       SoftDDS._L0013
SoftDDS._L0012:
                        .BLOCK    236
                        .LINE     237
                        CBI       00032h, 003h
                        .ENDBLOCK 238
SoftDDS._L0013:
                        .LINE     241
                        LDS       _ACCB, SoftDDS.Level
                        LDS       _ACCA, SoftDDS.Level+1
                        LDS       _ACCALO, SoftDDS.Level+2
                        LDS       _ACCAHI, SoftDDS.Level+3
                        LDI       _ACCDLO, 080h
                        EOR       _ACCAHI, _ACCDLO
                        CPI       _ACCAHI, 080h
                        BRNE      SoftDDS._L0015
                        CPI       _ACCALO, 000h
                        BRNE      SoftDDS._L0015
                        CPI       _ACCA, 003h
                        BRNE      SoftDDS._L0015
                        CPI       _ACCB, 0E8h
SoftDDS._L0015:
                        LDI       _ACCA, 0FFh
                        BRLO      SoftDDS._L0016
                        CLR       _ACCA
SoftDDS._L0016:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0019
                        BRNE      SoftDDS._L0019
                        .BRANCH   20,SoftDDS._L0017
                        JMP       SoftDDS._L0017
SoftDDS._L0019:
                        .BLOCK    242
                        .LINE     242
                        LDS       _ACCB, SoftDDS.Level
                        LDS       _ACCA, SoftDDS.Level+1
                        LDS       _ACCALO, SoftDDS.Level+2
                        LDS       _ACCAHI, SoftDDS.Level+3
                        LDI       _ACCDLO, 000000004h AND 0FFh
                        LDI       _ACCDHI, 000000004h SHRB 8
                        LDI       _ACCELO, 000000004h SHRB 16
                        LDI       _ACCEHI, 000000004h SHRB 24
                        SET
                        BLD       Flags, _SIGN
                        CALL      SYSTEM.MUL32_R
                        STD       Y+005h, _ACCA
                        STD       Y+004h, _ACCB
                        .LINE     243
                        LDS       _ACCA, 000FDh
                        SBR       _ACCA, 020h
                        STS       000FDh, _ACCA
                        .LINE     244
                        LDS       _ACCA, SoftDDS.LevelRange
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0022
                        BRNE      SoftDDS._L0022
                        .BRANCH   20,SoftDDS._L0020
                        JMP       SoftDDS._L0020
SoftDDS._L0022:
                        .BLOCK    244
                        .LINE     245
                        LDI       _ACCA, 02100h SHRB 8
                        LDI       _ACCB, 02100h AND 0FFh
                        STS       SOFTDDS.DSS_CMD, _ACCB
                        STS       SOFTDDS.DSS_CMD+1, _ACCA
                        .LINE     246
                        .BRANCH   17,SoftDDS.SENDDDS
                        CALL      SoftDDS.SENDDDS
                        .LINE     247
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 00000h SHRB 8
                        LDI       _ACCB, 00000h AND 0FFh
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  2
                        .FRAME  0
                        .BRANCH   17,SoftDDS.SHIFTOUTLEVELSR
                        CALL      SoftDDS.SHIFTOUTLEVELSR
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     248
                        LDI       _ACCA, 00005h SHRB 8
                        LDI       _ACCB, 00005h AND 0FFh
                        .FRAME  0
                        CALL      SYSTEM.MDELAY
                        .LINE     249
                        LDI       _ACCA, 000h
                        STS       SOFTDDS.LEVELRANGE, _ACCA
                        .ENDBLOCK 250
SoftDDS._L0020:
SoftDDS._L0021:
                        .ENDBLOCK 251
                        .BRANCH   20,SoftDDS._L0018
                        JMP       SoftDDS._L0018
SoftDDS._L0017:
                        .BLOCK    251
                        .LINE     252
                        LDS       _ACCA, 000FDh
                        CBR       _ACCA, 020h
                        STS       000FDh, _ACCA
                        .LINE     253
                        LDS       _ACCB, SoftDDS.Level
                        LDS       _ACCA, SoftDDS.Level+1
                        LDS       _ACCALO, SoftDDS.Level+2
                        LDS       _ACCAHI, SoftDDS.Level+3
                        MOVW      _ACCDLO, _ACCB
                        MOVW      _ACCELO, _ACCALO
                        LDI       _ACCBLO, 00000000Ah AND 0FFh
                        LDI       _ACCBHI, 00000000Ah SHRB 8
                        LDI       _ACCCLO, 00000000Ah SHRB 16
                        LDI       _ACCCHI, 00000000Ah SHRB 24
                        SET
                        BLD       Flags, _SIGN
                        CALL      SYSTEM.DIV32_R
                        STD       Y+005h, _ACCA
                        STD       Y+004h, _ACCB
                        .LINE     254
                        LDI       _ACCA, 0FFh
                        STS       SOFTDDS.LEVELRANGE, _ACCA
                        .ENDBLOCK 255
SoftDDS._L0018:
                        .LINE     258
                        LDS       _ACCA, SoftDDS.Wave
                        .LINE     259
                        CPI       _ACCA, 1
                        .BRANCH   3,SoftDDS._L0026
                        BREQ      SoftDDS._L0026
                        .BRANCH   20,SoftDDS._L0025
                        JMP       SoftDDS._L0025
SoftDDS._L0026:
SoftDDS._L0024:
                        .BLOCK    260
                        .LINE     260
                        LDI       _ACCA, 02000h SHRB 8
                        LDI       _ACCB, 02000h AND 0FFh
                        STS       SOFTDDS.WAVE_CMD, _ACCB
                        STS       SOFTDDS.WAVE_CMD+1, _ACCA
                        .ENDBLOCK 261
                        .BRANCH   20,SoftDDS._L0023
                        JMP       SoftDDS._L0023
SoftDDS._L0025:
                        .LINE     262
                        CPI       _ACCA, 2
                        .BRANCH   3,SoftDDS._L0029
                        BREQ      SoftDDS._L0029
                        .BRANCH   20,SoftDDS._L0028
                        JMP       SoftDDS._L0028
SoftDDS._L0029:
SoftDDS._L0027:
                        .BLOCK    263
                        .LINE     263
                        LDI       _ACCA, 02002h SHRB 8
                        LDI       _ACCB, 02002h AND 0FFh
                        STS       SOFTDDS.WAVE_CMD, _ACCB
                        STS       SOFTDDS.WAVE_CMD+1, _ACCA
                        .ENDBLOCK 264
                        .BRANCH   20,SoftDDS._L0023
                        JMP       SoftDDS._L0023
SoftDDS._L0028:
                        .LINE     265
                        CPI       _ACCA, 3
                        .BRANCH   3,SoftDDS._L0032
                        BREQ      SoftDDS._L0032
                        .BRANCH   20,SoftDDS._L0031
                        JMP       SoftDDS._L0031
SoftDDS._L0032:
                        .BRANCH   20,SoftDDS._L0030
                        JMP       SoftDDS._L0030
SoftDDS._L0031:
                        CPI       _ACCA, 4
                        .BRANCH   3,SoftDDS._L0034
                        BREQ      SoftDDS._L0034
                        .BRANCH   20,SoftDDS._L0033
                        JMP       SoftDDS._L0033
SoftDDS._L0034:
SoftDDS._L0030:
                        .BLOCK    266
                        .LINE     266
                        LDI       _ACCA, 02028h SHRB 8
                        LDI       _ACCB, 02028h AND 0FFh
                        STS       SOFTDDS.WAVE_CMD, _ACCB
                        STS       SOFTDDS.WAVE_CMD+1, _ACCA
                        .LINE     267
                        LDS       _ACCA, 000FDh
                        SBR       _ACCA, 010h
                        STS       000FDh, _ACCA
                        .LINE     268
                        LDS       _ACCA, SoftDDS.wave
                        CPI       _ACCA, 004h
                        LDI       _ACCA, 0h
                        BRNE      SoftDDS._L0035
                        SER       _ACCA
SoftDDS._L0035:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0038
                        BRNE      SoftDDS._L0038
                        .BRANCH   20,SoftDDS._L0036
                        JMP       SoftDDS._L0036
SoftDDS._L0038:
                        .BLOCK    268
                        .LINE     269
                        LDI       _ACCA, 006FEh SHRB 8
                        LDI       _ACCB, 006FEh AND 0FFh
                        STD       Y+005h, _ACCA
                        STD       Y+004h, _ACCB
                        .LINE     271
                        LDI       _ACCA, 009C4h SHRB 8
                        LDI       _ACCB, 009C4h AND 0FFh
                        STD       Y+001h, _ACCA
                        STD       Y+000h, _ACCB
                        .LINE     272
                        LDS       _ACCA, 000FDh
                        CBR       _ACCA, 080h
                        STS       000FDh, _ACCA
                        .LINE     276
                        LDS       _ACCA, 000FDh
                        CBR       _ACCA, 020h
                        STS       000FDh, _ACCA
                        .ENDBLOCK 277
SoftDDS._L0036:
SoftDDS._L0037:
                        .ENDBLOCK 278
                        .BRANCH   20,SoftDDS._L0023
                        JMP       SoftDDS._L0023
SoftDDS._L0033:
                        .LINE     279
                        CPI       _ACCA, 5
                        .BRANCH   3,SoftDDS._L0041
                        BREQ      SoftDDS._L0041
                        .BRANCH   20,SoftDDS._L0040
                        JMP       SoftDDS._L0040
SoftDDS._L0041:
SoftDDS._L0039:
                        .BLOCK    280
                        .LINE     280
                        LDI       _ACCA, 02100h SHRB 8
                        LDI       _ACCB, 02100h AND 0FFh
                        STS       SOFTDDS.WAVE_CMD, _ACCB
                        STS       SOFTDDS.WAVE_CMD+1, _ACCA
                        .LINE     281
                        LDS       _ACCA, 000FDh
                        SBR       _ACCA, 040h
                        STS       000FDh, _ACCA
                        .ENDBLOCK 282
                        .BRANCH   20,SoftDDS._L0023
                        JMP       SoftDDS._L0023
SoftDDS._L0040:
                        .BLOCK    283
                        .LINE     284
                        LDI       _ACCA, 02100h SHRB 8
                        LDI       _ACCB, 02100h AND 0FFh
                        STS       SOFTDDS.WAVE_CMD, _ACCB
                        STS       SOFTDDS.WAVE_CMD+1, _ACCA
                        .ENDBLOCK 285
SoftDDS._L0023:
                        .LINE     287
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDD       _ACCB, Y+000h
                        LDD       _ACCA, Y+001h
                        MOVW      _ACCBLO, _ACCB
                        LDI       _ACCALO, 00005h AND 0FFh
                        LDI       _ACCAHI, 00005h SHRB 8
                        SET
                        BLD       Flags, _SIGN
                        CALL      SYSTEM.DIV16_R
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  2
                        .FRAME  0
                        .BRANCH   17,SoftDDS.SHIFTOUT1257
                        CALL      SoftDDS.SHIFTOUT1257
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     289
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDD       _ACCB, Y+004h
                        LDD       _ACCA, Y+005h
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  2
                        .FRAME  0
                        .BRANCH   17,SoftDDS.SHIFTOUTLEVELSR
                        CALL      SoftDDS.SHIFTOUTLEVELSR
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     292
                        LDI       _ACCB, 000000000h AND 0FFh
                        LDI       _ACCA, 000000000h SHRB 8
                        LDI       _ACCALO, 000000000h SHRB 16
                        LDI       _ACCAHI, 000000000h SHRB 24
                        STS       SOFTDDS.DDSFREQU, _ACCB
                        STS       SOFTDDS.DDSFREQU+1, _ACCA
                        STS       SOFTDDS.DDSFREQU+2, _ACCALO
                        STS       SOFTDDS.DDSFREQU+3, _ACCAHI
                        .LINE     293
                        LDI       _ACCCLO, SoftDDS.FreqStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.FreqStr SHRB 8
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        ADIW      _ACCCLO, 1
                        ST        -Y, _ACCCHI
                        ST        -Y, _ACCCLO
                        LDI       _ACCA, 008h
                        ST        -Y, _ACCA
                        LDI       _ACCA, 0FEH ROLB _DEVICE
                        AND       Flags, _ACCA
                        LDI       _ACCA, 0FEH ROLB _EEPROM
                        AND       Flags, _ACCA
                        .FRAME  3
                        LDS       _ACCB, SoftDDS.Frequenz
                        LDS       _ACCA, SoftDDS.Frequenz+1
                        LDS       _ACCALO, SoftDDS.Frequenz+2
                        LDS       _ACCAHI, SoftDDS.Frequenz+3
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        ST        -Y, _ACCAHI
                        ST        -Y, _ACCALO
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  7
                        LDI       _ACCA, 008h
                        ST        -Y, _ACCA
                        .FRAME  8
                        LDI       _ACCA, 030h
                        LDI       _ACCB, 000h
                        ST        -Y, _ACCB
                        ST        -Y, _ACCA
                        .FRAME  10
                        SET
                        BLD       Flags, _SIGN
                        CALL      SYSTEM.Long2Str
                        .FRAME  3
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        LDI       _ACCA, 008h
                        PUSH      _ACCA
                        LDD       _ACCA, Y+000h
                        POP       _ACCB
                        SUB       _ACCB, _ACCA
                        MOV       _ACCA, _ACCB
                        POP       _ACCCHI
                        POP       _ACCCLO
                        ST        Z, _ACCA
                        ADIW      _FRAMEPTR, 3
                        .FRAME  0
                        .LINE     294
                        LDI       _ACCCLO, SoftDDS.i AND 0FFh
                        LDI       _ACCCHI, SoftDDS.i SHRB 8
                        ST        -Y, _ACCCHI
                        ST        -Y, _ACCCLO
                        .FRAME  2
                        LDI       _ACCA, 000h
                        ST        Z, _ACCA
                        LDI       _ACCA, 007h
                        ST        -Y, _ACCA
                        .FRAME  3
                        LD        _ACCA, Z
SoftDDS._L0044:
                        LDD       _ACCB, Y+000h
                        CP        _ACCB, _ACCA
                        LDI       _ACCA, 0FFh
                        BRLO      SoftDDS._L0045
                        CLR       _ACCA
SoftDDS._L0045:
                        TST       _ACCA
                        .BRANCH   3,SoftDDS._L0046
                        BREQ      SoftDDS._L0046
                        .BRANCH   20,SoftDDS._L0043
                        JMP       SoftDDS._L0043
SoftDDS._L0046:
                        .BLOCK    295
                        .LINE     295
                        LDI       _ACCCLO, SoftDDS.FreqStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.FreqStr SHRB 8
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        MOV       _ACCA, SoftDDS.i
                        SUBI      _ACCA, -001h AND 0FFh
                        POP       _ACCCHI
                        POP       _ACCCLO
                        MOV       _ACCB, _ACCA
                        CLR       _ACCA
                        ADD       _ACCCLO, _ACCB
                        ADC       _ACCCHI, _ACCA
                        LD        _ACCA, Z+
                        SUBI      _ACCA, 030h AND 0FFh
                        MOV       SOFTDDS.K, _ACCA
                        .LINE     296
                        MOV       _ACCA, SoftDDS.i
                        LDI       _ACCCLO, SoftDDS.fhz AND 0FFh
                        LDI       _ACCCHI, SoftDDS.fhz SHRB 8
                        ANDI      _ACCA, 7
                        CLR       _ACCB
                        LSL       _ACCA
                        ROL       _ACCB
                        LSL       _ACCA
                        ROL       _ACCB
                        ADD       _ACCCLO, _ACCA
                        ADC       _ACCCHI, _ACCB
                        LPM       _ACCB, Z+
                        LPM       _ACCA, Z+
                        LPM       _ACCALO, Z+
                        LPM       _ACCAHI, Z
                        STD       Y+010h, _ACCAHI
                        STD       Y+00Fh, _ACCALO
                        STD       Y+00Eh, _ACCA
                        STD       Y+00Dh, _ACCB
                        .LINE     297
                        LDS       _ACCB, SoftDDS.DDSfrequ
                        LDS       _ACCA, SoftDDS.DDSfrequ+1
                        LDS       _ACCALO, SoftDDS.DDSfrequ+2
                        LDS       _ACCAHI, SoftDDS.DDSfrequ+3
                        PUSH      _ACCB
                        PUSH      _ACCA
                        PUSH      _ACCALO
                        PUSH      _ACCAHI
                        LDD       _ACCAHI, Y+010h
                        LDD       _ACCALO, Y+00Fh
                        LDD       _ACCA, Y+00Eh
                        LDD       _ACCB, Y+00Dh
                        PUSH      _ACCB
                        PUSH      _ACCA
                        PUSH      _ACCALO
                        PUSH      _ACCAHI
                        MOV       _ACCA, SoftDDS.k
                        MOV       _ACCB, _ACCA
                        CLR       _ACCA
                        CLR       _ACCAHI
                        CLR       _ACCALO
                        SET
                        BLD       Flags, _SIGN
                        CALL      SYSTEM.MUL32
                        POP       _ACCCHI
                        POP       _ACCCLO
                        POP       _ACCBHI
                        POP       _ACCBLO
                        ADD       _ACCB, _ACCBLO
                        ADC       _ACCA, _ACCBHI
                        ADC       _ACCALO, _ACCCLO
                        ADC       _ACCAHI, _ACCCHI
                        STS       SOFTDDS.DDSFREQU, _ACCB
                        STS       SOFTDDS.DDSFREQU+1, _ACCA
                        STS       SOFTDDS.DDSFREQU+2, _ACCALO
                        STS       SOFTDDS.DDSFREQU+3, _ACCAHI
                        .ENDBLOCK 298
SoftDDS._L0042:
                        .LINE     298
                        LDD       _ACCCLO, Y+001h
                        LDD       _ACCCHI, Y+002h
                        LD        _ACCA, Z
                        INC       _ACCA
                        ST        Z, _ACCA
                        TST       _ACCA
                        .BRANCH   3,SoftDDS._L0043
                        BREQ      SoftDDS._L0043
                        .BRANCH   20,SoftDDS._L0044
                        JMP       SoftDDS._L0044
SoftDDS._L0043:
                        ADIW      _FRAMEPTR, 3
                        .FRAME  0
                        .LINE     299
                        LDS       _ACCB, SoftDDS.DDSfrequ
                        LDS       _ACCA, SoftDDS.DDSfrequ+1
                        LDS       _ACCALO, SoftDDS.DDSfrequ+2
                        LDS       _ACCAHI, SoftDDS.DDSfrequ+3
                        ANDI      _ACCB, 0FFh
                        ANDI      _ACCA, 03Fh
                        STS       SOFTDDS.DSS_CMD, _ACCB
                        STS       SOFTDDS.DSS_CMD+1, _ACCA
                        .LINE     300
                        LDS       _ACCB, SoftDDS.dss_cmd
                        LDS       _ACCA, SoftDDS.dss_cmd+1
                        ORI       _ACCB, 000h
                        ORI       _ACCA, 040h
                        STS       SOFTDDS.DSS_CMD, _ACCB
                        STS       SOFTDDS.DSS_CMD+1, _ACCA
                        .LINE     301
                        .BRANCH   17,SoftDDS.SENDDDS
                        CALL      SoftDDS.SENDDDS
                        .LINE     302
                        LDS       _ACCB, SoftDDS.DDSfrequ
                        LDS       _ACCA, SoftDDS.DDSfrequ+1
                        LDS       _ACCALO, SoftDDS.DDSfrequ+2
                        LDS       _ACCAHI, SoftDDS.DDSfrequ+3
                        LDI       _ACCCLO, 002h
                        CALL      SYSTEM.SHL32
                        STS       SOFTDDS.DDSFREQU, _ACCB
                        STS       SOFTDDS.DDSFREQU+1, _ACCA
                        STS       SOFTDDS.DDSFREQU+2, _ACCALO
                        STS       SOFTDDS.DDSFREQU+3, _ACCAHI
                        .LINE     303
                        LDS       _ACCB, SoftDDS.DDSfrequ
                        LDS       _ACCA, SoftDDS.DDSfrequ+1
                        LDS       _ACCALO, SoftDDS.DDSfrequ+2
                        LDS       _ACCAHI, SoftDDS.DDSfrequ+3
                        MOVW      _ACCB, _ACCALO
                        ANDI      _ACCB, 0FFh
                        ANDI      _ACCA, 03Fh
                        STS       SOFTDDS.DSS_CMD, _ACCB
                        STS       SOFTDDS.DSS_CMD+1, _ACCA
                        .LINE     304
                        LDS       _ACCB, SoftDDS.dss_cmd
                        LDS       _ACCA, SoftDDS.dss_cmd+1
                        ORI       _ACCB, 000h
                        ORI       _ACCA, 040h
                        STS       SOFTDDS.DSS_CMD, _ACCB
                        STS       SOFTDDS.DSS_CMD+1, _ACCA
                        .LINE     305
                        .BRANCH   17,SoftDDS.SENDDDS
                        CALL      SoftDDS.SENDDDS
                        .LINE     306
                        LDS       _ACCB, SoftDDS.wave_cmd
                        LDS       _ACCA, SoftDDS.wave_cmd+1
                        STS       SOFTDDS.DSS_CMD, _ACCB
                        STS       SOFTDDS.DSS_CMD+1, _ACCA
                        .LINE     307
                        .BRANCH   17,SoftDDS.SENDDDS
                        CALL      SoftDDS.SENDDDS
                        .ENDBLOCK 308
SoftDDS.SetLevelDDS_X:
                        .LINE     308
                        .BRANCH   19
                        RET
                        .ENDFUNC  308


                        .FILE     H:\PROJAVR\ADA-C-DDS\DDS.pas
                        .FUNC     PatchCopyFromEE, 0017Ah, 00020h
SoftDDS.PatchCopyFromEE:
                        SBIW      _FRAMEPTR, 2
                        .BLOCK    381
                        .LINE     382
                        LDI       _ACCCLO, SoftDDS.InitFrequenz AND 0FFh
                        LDI       _ACCCHI, SoftDDS.InitFrequenz SHRB 8
                        CALL      SYSTEM._ReadEEp32
                        STS       SOFTDDS.FREQUENZ, _ACCB
                        STS       SOFTDDS.FREQUENZ+1, _ACCA
                        STS       SOFTDDS.FREQUENZ+2, _ACCALO
                        STS       SOFTDDS.FREQUENZ+3, _ACCAHI
                        .LINE     383
                        LDI       _ACCCLO, SoftDDS.InitLevel AND 0FFh
                        LDI       _ACCCHI, SoftDDS.InitLevel SHRB 8
                        CALL      SYSTEM._ReadEEp32
                        STS       SOFTDDS.LEVEL, _ACCB
                        STS       SOFTDDS.LEVEL+1, _ACCA
                        STS       SOFTDDS.LEVEL+2, _ACCALO
                        STS       SOFTDDS.LEVEL+3, _ACCAHI
                        .LINE     384
                        LDI       _ACCCLO, SoftDDS.InitdB AND 0FFh
                        LDI       _ACCCHI, SoftDDS.InitdB SHRB 8
                        CALL      SYSTEM._ReadEEp32
                        STS       SOFTDDS.DB, _ACCB
                        STS       SOFTDDS.DB+1, _ACCA
                        STS       SOFTDDS.DB+2, _ACCALO
                        STS       SOFTDDS.DB+3, _ACCAHI
                        .LINE     385
                        LDI       _ACCCLO, SoftDDS.InitOffset AND 0FFh
                        LDI       _ACCCHI, SoftDDS.InitOffset SHRB 8
                        CALL      SYSTEM._ReadEEp16
                        STS       SOFTDDS.OFFSET, _ACCB
                        STS       SOFTDDS.OFFSET+1, _ACCA
                        .LINE     386
                        LDI       _ACCCLO, SoftDDS.InitBurst AND 0FFh
                        LDI       _ACCCHI, SoftDDS.InitBurst SHRB 8
                        CALL      SYSTEM.ReadEEp8
                        STS       SOFTDDS.BURSTMODE, _ACCA
                        .LINE     387
                        LDI       _ACCCLO, SoftDDS.Initwave AND 0FFh
                        LDI       _ACCCHI, SoftDDS.Initwave SHRB 8
                        CALL      SYSTEM.ReadEEp8
                        STS       SOFTDDS.WAVE, _ACCA
                        .ENDBLOCK 388
SoftDDS.PatchCopyFromEE_X:
                        .LINE     388
                        .BRANCH   19
                        RET
                        .ENDFUNC  388

                        .FUNC     Level2dB, 0018Ah, 00020h
SoftDDS.Level2dB:
                        .BLOCK    395
                        .LINE     397
                        LDD       _ACCAHI, Y+003h
                        LDD       _ACCALO, Y+002h
                        LDD       _ACCA, Y+001h
                        LDD       _ACCB, Y+000h
                        CLT
                        BLD       Flags, _ERRFLAG
                        SET
                        BLD       Flags, _SIGN
                        CALL      SYSTEM.LIntToFloat
                        MOVW      _ACCDLO, _ACCB
                        MOVW      _ACCELO, _ACCALO
                        LDI       _ACCBLO, 0C3h
                        LDI       _ACCBHI, 00Fh
                        LDI       _ACCCLO, 0F2h
                        LDI       _ACCCHI, 045h
                        CLT
                        BLD       Flags, _ERRFLAG
                        CALL      SYSTEM.DivFloat_R
                        CLT
                        BLD       Flags, _ERRFLAG
                        CALL      SYSTEM.Log10Float
                        MOVW      _ACCBLO, _ACCB
                        MOVW      _ACCCLO, _ACCALO
                        LDI       _ACCDLO, 000h
                        LDI       _ACCDHI, 000h
                        LDI       _ACCELO, 0A0h
                        LDI       _ACCEHI, 041h
                        CLT
                        BLD       Flags, _ERRFLAG
                        CALL      SYSTEM.MulFloat_R
                        .ENDBLOCK 401
SoftDDS.Level2dB_X:
                        .LINE     401
                        .BRANCH   19
                        RET
                        .ENDFUNC  401

                        .FUNC     dB2Level, 00193h, 00020h
SoftDDS.dB2Level:
                        SBIW      _FRAMEPTR, 6
                        .BLOCK    407
                        .LINE     410
                        LDD       _ACCAHI, Y+009h
                        LDD       _ACCALO, Y+008h
                        LDD       _ACCA, Y+007h
                        LDD       _ACCB, Y+006h
                        MOVW      _ACCDLO, _ACCB
                        MOVW      _ACCELO, _ACCALO
                        LDI       _ACCBLO, 000h
                        LDI       _ACCBHI, 000h
                        LDI       _ACCCLO, 0A0h
                        LDI       _ACCCHI, 041h
                        CLT
                        BLD       Flags, _ERRFLAG
                        CALL      SYSTEM.DivFloat_R
                        LDI       _ACCBLO, 000h
                        LDI       _ACCBHI, 000h
                        LDI       _ACCCLO, 020h
                        LDI       _ACCCHI, 041h
                        PUSH      _ACCBLO
                        PUSH      _ACCBHI
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        CLT
                        BLD       Flags, _ERRFLAG
                        CALL      SYSTEM.PowFloat
                        MOVW      _ACCBLO, _ACCB
                        MOVW      _ACCCLO, _ACCALO
                        LDI       _ACCDLO, 0C3h
                        LDI       _ACCDHI, 00Fh
                        LDI       _ACCELO, 0F2h
                        LDI       _ACCEHI, 045h
                        CLT
                        BLD       Flags, _ERRFLAG
                        CALL      SYSTEM.MulFloat_R
                        CLT
                        BLD       Flags, _ERRFLAG
                        CALL      SYSTEM.FloatToLInt
                        .ENDBLOCK 431
SoftDDS.dB2Level_X:
                        .LINE     431
                        .BRANCH   19
                        RET
                        .ENDFUNC  431

                        .FUNC     SerCRLF, 001B5h, 00020h
SoftDDS.SerCRLF:
                        .BLOCK    438
                        .LINE     439
                        LDI       _ACCA, 00Dh
                        .FRAME  0
                        CALL      SYSTEM.SEROUT
                        .LINE     440
                        LDI       _ACCA, 00Ah
                        .FRAME  0
                        CALL      SYSTEM.SEROUT
                        .ENDBLOCK 441
SoftDDS.SerCRLF_X:
                        .LINE     441
                        .BRANCH   19
                        RET
                        .ENDFUNC  441

                        .FUNC     WriteChPrefix, 001BBh, 00020h
SoftDDS.WriteChPrefix:
                        .BLOCK    444
                        .LINE     445
                        LDI       _ACCA, 023h
                        .FRAME  0
                        CALL      SYSTEM.SEROUT
                        .LINE     446
                        LDS       _ACCA, SoftDDS.SlaveCh
                        SUBI      _ACCA, -030h AND 0FFh
                        .FRAME  0
                        CALL      SYSTEM.SEROUT
                        .LINE     447
                        LDI       _ACCA, 03Ah
                        .FRAME  0
                        CALL      SYSTEM.SEROUT
                        .LINE     448
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 1 SHLB _DEVICE
                        OR        Flags, _ACCA
                        LDI       _ACCB, SYSTEM.Serout SHRB 1
                        LDI       _ACCA, SYSTEM.Serout SHRB 9
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  2
                        LDS       _ACCA, SoftDDS.SubCh
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        ST        -Y, _ACCA
                        .FRAME  3
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        LDI       _ACCA, 020h
                        ST        -Y, _ACCA
                        .FRAME  6
                        CALL      SYSTEM.Byte2Str
                        .FRAME  2
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .FRAME  0
                        .LINE     449
                        LDI       _ACCA, 03Dh
                        .FRAME  0
                        CALL      SYSTEM.SEROUT
                        .ENDBLOCK 450
SoftDDS.WriteChPrefix_X:
                        .LINE     450
                        .BRANCH   19
                        RET
                        .ENDFUNC  450

                        .FUNC     WriteSerInp, 001C4h, 00020h
SoftDDS.WriteSerInp:
                        .BLOCK    453
                        .LINE     454
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 1 SHLB _DEVICE
                        OR        Flags, _ACCA
                        LDI       _ACCB, SYSTEM.Serout SHRB 1
                        LDI       _ACCA, SYSTEM.Serout SHRB 9
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  2
                        LDI       _ACCCLO, SoftDDS.SerInpStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.SerInpStr SHRB 8
                        CALL      SYSTEM.StrVar2Str
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .FRAME  0
                        .LINE     455
                        .BRANCH   17,SoftDDS.SERCRLF
                        CALL      SoftDDS.SERCRLF
                        .ENDBLOCK 456
SoftDDS.WriteSerInp_X:
                        .LINE     456
                        .BRANCH   19
                        RET
                        .ENDFUNC  456

                        .FUNC     SerPrompt, 001CAh, 00020h
SoftDDS.SerPrompt:
                        .BLOCK    461
                        .LINE     462
                        LDI       _ACCA, 0FFh
                        STS       SOFTDDS.SUBCH, _ACCA
                        .LINE     463
                        .BRANCH   17,SoftDDS.WRITECHPREFIX
                        CALL      SoftDDS.WRITECHPREFIX
                        .LINE     464
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 1 SHLB _DEVICE
                        OR        Flags, _ACCA
                        LDI       _ACCB, SYSTEM.Serout SHRB 1
                        LDI       _ACCA, SYSTEM.Serout SHRB 9
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  2
                        LDD       _ACCA, Y+003h
                        PUSH      _ACCA
                        LDD       _ACCA, Y+002h
                        POP       _ACCB
                        ADD       _ACCA, _ACCB
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        ST        -Y, _ACCA
                        .FRAME  3
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        LDI       _ACCA, 020h
                        ST        -Y, _ACCA
                        .FRAME  6
                        CALL      SYSTEM.Byte2Str
                        .FRAME  2
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .FRAME  0
                        .LINE     465
                        LDI       _ACCA, 020h
                        .FRAME  0
                        CALL      SYSTEM.SEROUT
                        .LINE     466
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 1 SHLB _DEVICE
                        OR        Flags, _ACCA
                        LDI       _ACCB, SYSTEM.serout SHRB 1
                        LDI       _ACCA, SYSTEM.serout SHRB 9
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  2
                        LDI       _ACCCLO, SoftDDS.ErrStrArr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.ErrStrArr SHRB 8
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        LDD       _ACCA, Y+003h
                        MOV       _ACCB, _ACCA
                        CLR       _ACCA
                        LDI       _ACCBLO, 0000Ah AND 0FFh
                        LDI       _ACCBHI, 0000Ah SHRB 8
                        CLT
                        BLD       Flags, _SIGN
                        CALL      SYSTEM.MUL16
                        POP       _ACCCHI
                        POP       _ACCCLO
                        ADD       _ACCCLO, _ACCB
                        ADC       _ACCCHI, _ACCA
                        LPM       _ACCBHI, Z+
                        TST       _ACCBHI
                        BREQ      SoftDDS._L0047
                        CALL      SYSTEM.StrConst2Str
SoftDDS._L0047:
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .FRAME  0
                        .LINE     467
                        .BRANCH   17,SoftDDS.SERCRLF
                        CALL      SoftDDS.SERCRLF
                        .ENDBLOCK 468
SoftDDS.SerPrompt_X:
                        .LINE     468
                        .BRANCH   19
                        RET
                        .ENDFUNC  468

                        .FUNC     WriteParamStrSer, 001DAh, 00020h
SoftDDS.WriteParamStrSer:
                        .BLOCK    475
                        .LINE     476
                        .BRANCH   17,SoftDDS.WRITECHPREFIX
                        CALL      SoftDDS.WRITECHPREFIX
                        .LINE     477
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 1 SHLB _DEVICE
                        OR        Flags, _ACCA
                        LDI       _ACCB, SYSTEM.Serout SHRB 1
                        LDI       _ACCA, SYSTEM.Serout SHRB 9
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  2
                        LDI       _ACCCLO, SoftDDS.ParamStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.ParamStr SHRB 8
                        CALL      SYSTEM.StrVar2Str
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .FRAME  0
                        .LINE     478
                        .BRANCH   17,SoftDDS.SERCRLF
                        CALL      SoftDDS.SERCRLF
                        .ENDBLOCK 479
SoftDDS.WriteParamStrSer_X:
                        .LINE     479
                        .BRANCH   19
                        RET
                        .ENDFUNC  479

                        .FUNC     ParamToStr, 001E2h, 00020h
SoftDDS.ParamToStr:
                        .BLOCK    483
                        .LINE     484
                        LDS       _ACCB, SoftDDS.Param
                        LDS       _ACCA, SoftDDS.Param+1
                        LDS       _ACCALO, SoftDDS.Param+2
                        LDS       _ACCAHI, SoftDDS.Param+3
                        PUSH      _ACCB
                        PUSH      _ACCA
                        PUSH      _ACCALO
                        PUSH      _ACCAHI
                        LDI       _ACCB, 000h
                        LDI       _ACCA, 000h
                        LDI       _ACCALO, 000h
                        LDI       _ACCAHI, 000h
                        POP       _ACCCHI
                        POP       _ACCCLO
                        POP       _ACCBHI
                        POP       _ACCBLO
                        SET
                        BLD       Flags, _NEGATIVE
                        CLR       _ACCDHI
                        CALL      SYSTEM.HighF
                        TST       _ACCDHI
                        BREQ      SoftDDS._L0049
                        BRPL      SoftDDS._L0050
                        BRMI      SoftDDS._L0048
SoftDDS._L0050:
                        CLZ
                        CLC
                        RJMP      SoftDDS._L0049
SoftDDS._L0048:
                        CLZ
                        SEC
SoftDDS._L0049:
                        LDI       _ACCA, 0h
                        BRNE      SoftDDS._L0051
                        SER       _ACCA
SoftDDS._L0051:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0054
                        BRNE      SoftDDS._L0054
                        .BRANCH   20,SoftDDS._L0052
                        JMP       SoftDDS._L0052
SoftDDS._L0054:
                        .BLOCK    484
                        .LINE     485
                        LDI       _ACCCLO, SoftDDS.ParamStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.ParamStr SHRB 8
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        ADIW      _ACCCLO, 1
                        ST        -Y, _ACCCHI
                        ST        -Y, _ACCCLO
                        LDI       _ACCA, 028h
                        ST        -Y, _ACCA
                        LDI       _ACCA, 0FEH ROLB _DEVICE
                        AND       Flags, _ACCA
                        LDI       _ACCA, 0FEH ROLB _EEPROM
                        AND       Flags, _ACCA
                        .FRAME  3
                        LDI       _ACCA, 030h
                        CALL      SYSTEM.Char2Str
                        LDI       _ACCA, 028h
                        PUSH      _ACCA
                        LDD       _ACCA, Y+000h
                        POP       _ACCB
                        SUB       _ACCB, _ACCA
                        MOV       _ACCA, _ACCB
                        POP       _ACCCHI
                        POP       _ACCCLO
                        ST        Z, _ACCA
                        ADIW      _FRAMEPTR, 3
                        .FRAME  0
                        .ENDBLOCK 486
                        .BRANCH   20,SoftDDS._L0053
                        JMP       SoftDDS._L0053
SoftDDS._L0052:
                        .BLOCK    486
                        .LINE     487
                        LDI       _ACCCLO, SoftDDS.ParamStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.ParamStr SHRB 8
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        ADIW      _ACCCLO, 1
                        ST        -Y, _ACCCHI
                        ST        -Y, _ACCCLO
                        LDI       _ACCA, 028h
                        ST        -Y, _ACCA
                        LDI       _ACCA, 0FEH ROLB _DEVICE
                        AND       Flags, _ACCA
                        LDI       _ACCA, 0FEH ROLB _EEPROM
                        AND       Flags, _ACCA
                        .FRAME  3
                        LDS       _ACCB, SoftDDS.Param
                        LDS       _ACCA, SoftDDS.Param+1
                        LDS       _ACCALO, SoftDDS.Param+2
                        LDS       _ACCAHI, SoftDDS.Param+3
                        PUSH      _ACCB
                        PUSH      _ACCA
                        PUSH      _ACCALO
                        PUSH      _ACCAHI
                        LDS       _ACCA, SoftDDS.digits
                        PUSH      _ACCA
                        LDS       _ACCA, SoftDDS.nachkomma
                        PUSH      _ACCA
                        LDI       _ACCA, 020h
                        PUSH      _ACCA
                        CALL      SYSTEM.Float2Str
                        LDI       _ACCA, 028h
                        PUSH      _ACCA
                        LDD       _ACCA, Y+000h
                        POP       _ACCB
                        SUB       _ACCB, _ACCA
                        MOV       _ACCA, _ACCB
                        POP       _ACCCHI
                        POP       _ACCCLO
                        ST        Z, _ACCA
                        ADIW      _FRAMEPTR, 3
                        .FRAME  0
                        .ENDBLOCK 488
SoftDDS._L0053:
                        .ENDBLOCK 489
SoftDDS.ParamToStr_X:
                        .LINE     489
                        .BRANCH   19
                        RET
                        .ENDFUNC  489

                        .FUNC     ParamToPMStr, 001EBh, 00020h
SoftDDS.ParamToPMStr:
                        .BLOCK    492
                        .LINE     493
                        .BRANCH   17,SoftDDS.PARAMTOSTR
                        CALL      SoftDDS.PARAMTOSTR
                        .LINE     494
                        LDI       _ACCCLO, SoftDDS.ParamStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.ParamStr SHRB 8
                        ADIW      _ACCCLO, 00001h
                        LD        _ACCA, Z+
                        CPI       _ACCA, 02Dh
                        LDI       _ACCA, 0h
                        BREQ      SoftDDS._L0055
                        SER       _ACCA
SoftDDS._L0055:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0058
                        BRNE      SoftDDS._L0058
                        .BRANCH   20,SoftDDS._L0056
                        JMP       SoftDDS._L0056
SoftDDS._L0058:
                        .BLOCK    494
                        .LINE     495
                        LDI       _ACCCLO, $St_String11 AND 0FFh
                        LDI       _ACCCHI, $St_String11 SHRB 8
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        LDI       _ACCCLO, SoftDDS.ParamStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.ParamStr SHRB 8
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        LDI       _ACCA, 028h
                        PUSH      _ACCA
                        LDI       _ACCA, 001h
                        LDI       _ACCFHI, 002h
                        CALL      SYSTEM.StringInsert
                        .ENDBLOCK 496
SoftDDS._L0056:
SoftDDS._L0057:
                        .ENDBLOCK 497
SoftDDS.ParamToPMStr_X:
                        .LINE     497
                        .BRANCH   19
                        RET
                        .ENDFUNC  497

                        .FUNC     ParamLongToStr, 001F3h, 00020h
SoftDDS.ParamLongToStr:
                        .BLOCK    500
                        .LINE     501
                        LDS       _ACCB, SoftDDS.ParamLong
                        LDS       _ACCA, SoftDDS.ParamLong+1
                        LDS       _ACCALO, SoftDDS.ParamLong+2
                        LDS       _ACCAHI, SoftDDS.ParamLong+3
                        CLT
                        BLD       Flags, _ERRFLAG
                        SET
                        BLD       Flags, _SIGN
                        CALL      SYSTEM.LIntToFloat
                        MOVW      _ACCDLO, _ACCB
                        MOVW      _ACCELO, _ACCALO
                        LDI       _ACCBLO, 000h
                        LDI       _ACCBHI, 000h
                        LDI       _ACCCLO, 020h
                        LDI       _ACCCHI, 041h
                        CLT
                        BLD       Flags, _ERRFLAG
                        CALL      SYSTEM.DivFloat_R
                        STS       SOFTDDS.PARAM, _ACCB
                        STS       SOFTDDS.PARAM+1, _ACCA
                        STS       SOFTDDS.PARAM+2, _ACCALO
                        STS       SOFTDDS.PARAM+3, _ACCAHI
                        .LINE     502
                        .BRANCH   17,SoftDDS.PARAMTOSTR
                        CALL      SoftDDS.PARAMTOSTR
                        .ENDBLOCK 503
SoftDDS.ParamLongToStr_X:
                        .LINE     503
                        .BRANCH   19
                        RET
                        .ENDFUNC  503

                        .FUNC     OffsetToParam, 001F9h, 00020h
SoftDDS.OffsetToParam:
                        .BLOCK    506
                        .LINE     507
                        LDS       _ACCB, SoftDDS.Offset
                        LDS       _ACCA, SoftDDS.Offset+1
                        SBRS      _ACCA, 7
                        RJMP      SoftDDS._L0059
                        LDI       _ACCAHI, 0FFh
                        LDI       _ACCALO, 0FFh
                        RJMP      SoftDDS._L0060
SoftDDS._L0059:
                        CLR       _ACCAHI
                        CLR       _ACCALO
SoftDDS._L0060:
                        SET
                        BLD       Flags, _SIGN
                        CLT
                        BLD       Flags, _ERRFLAG
                        CALL      SYSTEM.LIntToFloat
                        MOVW      _ACCDLO, _ACCB
                        MOVW      _ACCELO, _ACCALO
                        LDI       _ACCBLO, 000h
                        LDI       _ACCBHI, 000h
                        LDI       _ACCCLO, 07Ah
                        LDI       _ACCCHI, 044h
                        CLT
                        BLD       Flags, _ERRFLAG
                        CALL      SYSTEM.DivFloat_R
                        STS       SOFTDDS.PARAM, _ACCB
                        STS       SOFTDDS.PARAM+1, _ACCA
                        STS       SOFTDDS.PARAM+2, _ACCALO
                        STS       SOFTDDS.PARAM+3, _ACCAHI
                        .ENDBLOCK 508
SoftDDS.OffsetToParam_X:
                        .LINE     508
                        .BRANCH   19
                        RET
                        .ENDFUNC  508

                        .FUNC     WriteParamSer, 0020Ah, 00020h
SoftDDS.WriteParamSer:
                        .BLOCK    523
                        .LINE     524
                        .BRANCH   17,SoftDDS.PARAMTOSTR
                        CALL      SoftDDS.PARAMTOSTR
                        .LINE     525
                        .BRANCH   17,SoftDDS.WRITEPARAMSTRSER
                        CALL      SoftDDS.WRITEPARAMSTRSER
                        .ENDBLOCK 526
SoftDDS.WriteParamSer_X:
                        .LINE     526
                        .BRANCH   19
                        RET
                        .ENDFUNC  526

                        .FUNC     WriteParamByteSer, 00210h, 00020h
SoftDDS.WriteParamByteSer:
                        .BLOCK    529
                        .LINE     530
                        LDI       _ACCCLO, SoftDDS.ParamStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.ParamStr SHRB 8
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        ADIW      _ACCCLO, 1
                        ST        -Y, _ACCCHI
                        ST        -Y, _ACCCLO
                        LDI       _ACCA, 028h
                        ST        -Y, _ACCA
                        LDI       _ACCA, 0FEH ROLB _DEVICE
                        AND       Flags, _ACCA
                        LDI       _ACCA, 0FEH ROLB _EEPROM
                        AND       Flags, _ACCA
                        .FRAME  3
                        LDS       _ACCA, SoftDDS.ParamByte
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        ST        -Y, _ACCA
                        .FRAME  4
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        LDI       _ACCA, 020h
                        ST        -Y, _ACCA
                        .FRAME  7
                        CALL      SYSTEM.Byte2Str
                        .FRAME  3
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        LDI       _ACCA, 028h
                        PUSH      _ACCA
                        LDD       _ACCA, Y+000h
                        POP       _ACCB
                        SUB       _ACCB, _ACCA
                        MOV       _ACCA, _ACCB
                        POP       _ACCCHI
                        POP       _ACCCLO
                        ST        Z, _ACCA
                        ADIW      _FRAMEPTR, 3
                        .FRAME  0
                        .LINE     531
                        .BRANCH   17,SoftDDS.WRITEPARAMSTRSER
                        CALL      SoftDDS.WRITEPARAMSTRSER
                        .ENDBLOCK 532
SoftDDS.WriteParamByteSer_X:
                        .LINE     532
                        .BRANCH   19
                        RET
                        .ENDFUNC  532

                        .FUNC     ParamStrOnLCD, 00217h, 00020h
SoftDDS.ParamStrOnLCD:
                        .BLOCK    536
                        .LINE     537
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  1
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  2
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  3
                        .FRAME  0
                        CALL      SYSTEM.LCDXY_M
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     538
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 1 SHLB _DEVICE
                        OR        Flags, _ACCA
                        LDI       _ACCB, SYSTEM.lcdout_m SHRB 1
                        LDI       _ACCA, SYSTEM.lcdout_m SHRB 9
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  2
                        LDI       _ACCCLO, SoftDDS.ParamStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.ParamStr SHRB 8
                        CALL      SYSTEM.StrVar2Str
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .FRAME  0
                        .LINE     539
                        LDI       _ACCA, 000h
                        .FRAME  0
                        CALL      SYSTEM.LCDCLREOL_M
                        .LINE     540
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  1
                        LDI       _ACCA, 007h
                        ST        -Y, _ACCA
                        .FRAME  2
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  3
                        .FRAME  0
                        CALL      SYSTEM.LCDXY_M
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     541
                        LDS       _ACCA, SoftDDS.IncrFine
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0063
                        BRNE      SoftDDS._L0063
                        .BRANCH   20,SoftDDS._L0061
                        JMP       SoftDDS._L0061
SoftDDS._L0063:
                        .BLOCK    541
                        .LINE     542
                        LDI       _ACCA, 002h
                        .FRAME  0
                        CALL      SYSTEM.LCDOUT_M
                        .ENDBLOCK 543
                        .BRANCH   20,SoftDDS._L0062
                        JMP       SoftDDS._L0062
SoftDDS._L0061:
                        .BLOCK    543
                        .LINE     544
                        LDI       _ACCA, 000h
                        .FRAME  0
                        CALL      SYSTEM.LCDOUT_M
                        .ENDBLOCK 545
SoftDDS._L0062:
                        .LINE     546
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  1
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  2
                        LDI       _ACCA, 001h
                        ST        -Y, _ACCA
                        .FRAME  3
                        .FRAME  0
                        CALL      SYSTEM.LCDXY_M
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .ENDBLOCK 547
SoftDDS.ParamStrOnLCD_X:
                        .LINE     547
                        .BRANCH   19
                        RET
                        .ENDFUNC  547

                        .FUNC     SollWerteOnLCD, 00225h, 00020h
SoftDDS.SollWerteOnLCD:
                        SBIW      _FRAMEPTR, 4
                        .BLOCK    551
                        .LINE     552
                        LDI       _ACCA, 002h
                        STS       SOFTDDS.DIGITS, _ACCA
                        .LINE     553
                        LDI       _ACCA, 001h
                        STS       SOFTDDS.NACHKOMMA, _ACCA
                        .LINE     554
                        LDS       _ACCA, SoftDDS.Modify
                        .LINE     555
                        CPI       _ACCA, 1
                        .BRANCH   3,SoftDDS._L0067
                        BREQ      SoftDDS._L0067
                        .BRANCH   20,SoftDDS._L0066
                        JMP       SoftDDS._L0066
SoftDDS._L0067:
SoftDDS._L0065:
                        .BLOCK    556
                        .LINE     556
                        LDS       _ACCB, SoftDDS.Frequenz
                        LDS       _ACCA, SoftDDS.Frequenz+1
                        LDS       _ACCALO, SoftDDS.Frequenz+2
                        LDS       _ACCAHI, SoftDDS.Frequenz+3
                        STS       SOFTDDS.PARAMLONG, _ACCB
                        STS       SOFTDDS.PARAMLONG+1, _ACCA
                        STS       SOFTDDS.PARAMLONG+2, _ACCALO
                        STS       SOFTDDS.PARAMLONG+3, _ACCAHI
                        .LINE     557
                        .BRANCH   17,SoftDDS.PARAMLONGTOSTR
                        CALL      SoftDDS.PARAMLONGTOSTR
                        .LINE     558
                        .BRANCH   17,SoftDDS.PARAMSTRONLCD
                        CALL      SoftDDS.PARAMSTRONLCD
                        .LINE     559
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 1 SHLB _DEVICE
                        OR        Flags, _ACCA
                        LDI       _ACCB, SYSTEM.lcdout_m SHRB 1
                        LDI       _ACCA, SYSTEM.lcdout_m SHRB 9
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  2
                        LDI       _ACCCLO, SoftDDS.FrequStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.FrequStr SHRB 8
                        LPM       _ACCBHI, Z+
                        TST       _ACCBHI
                        BREQ      SoftDDS._L0068
                        CALL      SYSTEM.StrConst2Str
SoftDDS._L0068:
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .FRAME  0
                        .ENDBLOCK 560
                        .BRANCH   20,SoftDDS._L0064
                        JMP       SoftDDS._L0064
SoftDDS._L0066:
                        .LINE     561
                        CPI       _ACCA, 5
                        .BRANCH   3,SoftDDS._L0071
                        BREQ      SoftDDS._L0071
                        .BRANCH   20,SoftDDS._L0070
                        JMP       SoftDDS._L0070
SoftDDS._L0071:
SoftDDS._L0069:
                        .BLOCK    562
                        .LINE     562
                        LDI       _ACCA, 005h
                        STS       SOFTDDS.DIGITS, _ACCA
                        .LINE     563
                        LDI       _ACCA, 003h
                        STS       SOFTDDS.NACHKOMMA, _ACCA
                        .LINE     564
                        .BRANCH   17,SoftDDS.OFFSETTOPARAM
                        CALL      SoftDDS.OFFSETTOPARAM
                        .LINE     565
                        .BRANCH   17,SoftDDS.PARAMTOPMSTR
                        CALL      SoftDDS.PARAMTOPMSTR
                        .LINE     566
                        .BRANCH   17,SoftDDS.PARAMSTRONLCD
                        CALL      SoftDDS.PARAMSTRONLCD
                        .LINE     567
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 1 SHLB _DEVICE
                        OR        Flags, _ACCA
                        LDI       _ACCB, SYSTEM.lcdout_m SHRB 1
                        LDI       _ACCA, SYSTEM.lcdout_m SHRB 9
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  2
                        LDI       _ACCCLO, SoftDDS.OffsetStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.OffsetStr SHRB 8
                        LPM       _ACCBHI, Z+
                        TST       _ACCBHI
                        BREQ      SoftDDS._L0072
                        CALL      SYSTEM.StrConst2Str
SoftDDS._L0072:
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .FRAME  0
                        .ENDBLOCK 568
                        .BRANCH   20,SoftDDS._L0064
                        JMP       SoftDDS._L0064
SoftDDS._L0070:
                        .LINE     569
                        CPI       _ACCA, 2
                        .BRANCH   3,SoftDDS._L0075
                        BREQ      SoftDDS._L0075
                        .BRANCH   20,SoftDDS._L0074
                        JMP       SoftDDS._L0074
SoftDDS._L0075:
SoftDDS._L0073:
                        .BLOCK    570
                        .LINE     570
                        LDS       _ACCA, SoftDDS.IncrFine
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0078
                        BRNE      SoftDDS._L0078
                        .BRANCH   20,SoftDDS._L0076
                        JMP       SoftDDS._L0076
SoftDDS._L0078:
                        .BLOCK    570
                        .LINE     571
                        LDS       _ACCB, SoftDDS.Level
                        LDS       _ACCA, SoftDDS.Level+1
                        LDS       _ACCALO, SoftDDS.Level+2
                        LDS       _ACCAHI, SoftDDS.Level+3
                        STS       SOFTDDS.PARAMLONG, _ACCB
                        STS       SOFTDDS.PARAMLONG+1, _ACCA
                        STS       SOFTDDS.PARAMLONG+2, _ACCALO
                        STS       SOFTDDS.PARAMLONG+3, _ACCAHI
                        .LINE     572
                        .BRANCH   17,SoftDDS.PARAMLONGTOSTR
                        CALL      SoftDDS.PARAMLONGTOSTR
                        .LINE     573
                        .BRANCH   17,SoftDDS.PARAMSTRONLCD
                        CALL      SoftDDS.PARAMSTRONLCD
                        .LINE     574
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 1 SHLB _DEVICE
                        OR        Flags, _ACCA
                        LDI       _ACCB, SYSTEM.lcdout_m SHRB 1
                        LDI       _ACCA, SYSTEM.lcdout_m SHRB 9
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  2
                        LDI       _ACCCLO, SoftDDS.LevelStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.LevelStr SHRB 8
                        LPM       _ACCBHI, Z+
                        TST       _ACCBHI
                        BREQ      SoftDDS._L0079
                        CALL      SYSTEM.StrConst2Str
SoftDDS._L0079:
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .FRAME  0
                        .LINE     575
                        LDI       _ACCA, 06Dh
                        .FRAME  0
                        CALL      SYSTEM.LCDOUT_M
                        .LINE     576
                        LDI       _ACCA, 056h
                        .FRAME  0
                        CALL      SYSTEM.LCDOUT_M
                        .ENDBLOCK 577
                        .BRANCH   20,SoftDDS._L0077
                        JMP       SoftDDS._L0077
SoftDDS._L0076:
                        .BLOCK    577
                        .LINE     578
                        LDI       _ACCA, 003h
                        STS       SOFTDDS.DIGITS, _ACCA
                        .LINE     579
                        LDI       _ACCA, 002h
                        STS       SOFTDDS.NACHKOMMA, _ACCA
                        .LINE     580
                        LDS       _ACCB, SoftDDS.dB
                        LDS       _ACCA, SoftDDS.dB+1
                        LDS       _ACCALO, SoftDDS.dB+2
                        LDS       _ACCAHI, SoftDDS.dB+3
                        STS       SOFTDDS.PARAM, _ACCB
                        STS       SOFTDDS.PARAM+1, _ACCA
                        STS       SOFTDDS.PARAM+2, _ACCALO
                        STS       SOFTDDS.PARAM+3, _ACCAHI
                        .LINE     581
                        .BRANCH   17,SoftDDS.PARAMTOPMSTR
                        CALL      SoftDDS.PARAMTOPMSTR
                        .LINE     582
                        .BRANCH   17,SoftDDS.PARAMSTRONLCD
                        CALL      SoftDDS.PARAMSTRONLCD
                        .LINE     583
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 1 SHLB _DEVICE
                        OR        Flags, _ACCA
                        LDI       _ACCB, SYSTEM.lcdout_m SHRB 1
                        LDI       _ACCA, SYSTEM.lcdout_m SHRB 9
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  2
                        LDI       _ACCCLO, SoftDDS.LevelStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.LevelStr SHRB 8
                        LPM       _ACCBHI, Z+
                        TST       _ACCBHI
                        BREQ      SoftDDS._L0080
                        CALL      SYSTEM.StrConst2Str
SoftDDS._L0080:
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .FRAME  0
                        .LINE     584
                        LDI       _ACCA, 064h
                        .FRAME  0
                        CALL      SYSTEM.LCDOUT_M
                        .LINE     585
                        LDI       _ACCA, 042h
                        .FRAME  0
                        CALL      SYSTEM.LCDOUT_M
                        .ENDBLOCK 586
SoftDDS._L0077:
                        .ENDBLOCK 587
                        .BRANCH   20,SoftDDS._L0064
                        JMP       SoftDDS._L0064
SoftDDS._L0074:
                        .LINE     588
                        CPI       _ACCA, 4
                        .BRANCH   3,SoftDDS._L0083
                        BREQ      SoftDDS._L0083
                        .BRANCH   20,SoftDDS._L0082
                        JMP       SoftDDS._L0082
SoftDDS._L0083:
SoftDDS._L0081:
                        .BLOCK    590
                        .LINE     590
                        LDI       _ACCA, 004h
                        .FRAME  0
                        CALL       SYSTEM.GETADC
                        CLR       _ACCAHI
                        CLR       _ACCALO
                        CLT
                        BLD       Flags, _SIGN
                        CLT
                        BLD       Flags, _ERRFLAG
                        CALL      SYSTEM.LIntToFloat
                        STS       SOFTDDS.PARAM, _ACCB
                        STS       SOFTDDS.PARAM+1, _ACCA
                        STS       SOFTDDS.PARAM+2, _ACCALO
                        STS       SOFTDDS.PARAM+3, _ACCAHI
                        .LINE     594
                        .BRANCH   17,SoftDDS.PARAMTOSTR
                        CALL      SoftDDS.PARAMTOSTR
                        .LINE     595
                        .BRANCH   17,SoftDDS.PARAMSTRONLCD
                        CALL      SoftDDS.PARAMSTRONLCD
                        .LINE     596
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 1 SHLB _DEVICE
                        OR        Flags, _ACCA
                        LDI       _ACCB, SYSTEM.lcdout_m SHRB 1
                        LDI       _ACCA, SYSTEM.lcdout_m SHRB 9
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  2
                        LDI       _ACCCLO, SoftDDS.mVInpStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.mVInpStr SHRB 8
                        LPM       _ACCBHI, Z+
                        TST       _ACCBHI
                        BREQ      SoftDDS._L0084
                        CALL      SYSTEM.StrConst2Str
SoftDDS._L0084:
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .FRAME  0
                        .ENDBLOCK 597
                        .BRANCH   20,SoftDDS._L0064
                        JMP       SoftDDS._L0064
SoftDDS._L0082:
                        .LINE     598
                        CPI       _ACCA, 0
                        .BRANCH   3,SoftDDS._L0087
                        BREQ      SoftDDS._L0087
                        .BRANCH   20,SoftDDS._L0086
                        JMP       SoftDDS._L0086
SoftDDS._L0087:
SoftDDS._L0085:
                        .BLOCK    599
                        .LINE     599
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  1
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  2
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  3
                        .FRAME  0
                        CALL      SYSTEM.LCDXY_M
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     600
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 1 SHLB _DEVICE
                        OR        Flags, _ACCA
                        LDI       _ACCB, SYSTEM.lcdout_m SHRB 1
                        LDI       _ACCA, SYSTEM.lcdout_m SHRB 9
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  2
                        LDI       _ACCCLO, SoftDDS.WaveSelStrArr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.WaveSelStrArr SHRB 8
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        LDS       _ACCA, SoftDDS.Wave
                        MOV       _ACCB, _ACCA
                        CLR       _ACCA
                        LDI       _ACCBLO, 0000Ah AND 0FFh
                        LDI       _ACCBHI, 0000Ah SHRB 8
                        CLT
                        BLD       Flags, _SIGN
                        CALL      SYSTEM.MUL16
                        POP       _ACCCHI
                        POP       _ACCCLO
                        ADD       _ACCCLO, _ACCB
                        ADC       _ACCCHI, _ACCA
                        LPM       _ACCBHI, Z+
                        TST       _ACCBHI
                        BREQ      SoftDDS._L0088
                        CALL      SYSTEM.StrConst2Str
SoftDDS._L0088:
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .FRAME  0
                        .LINE     601
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 1 SHLB _DEVICE
                        OR        Flags, _ACCA
                        LDI       _ACCB, SYSTEM.lcdout_m SHRB 1
                        LDI       _ACCA, SYSTEM.lcdout_m SHRB 9
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  2
                        LDI       _ACCCLO, $St_String12 AND 0FFh
                        LDI       _ACCCHI, $St_String12 SHRB 8
                        LPM       _ACCBHI, Z+
                        TST       _ACCBHI
                        BREQ      SoftDDS._L0089
                        CALL      SYSTEM.StrConst2Str
SoftDDS._L0089:
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .FRAME  0
                        .LINE     602
                        LDI       _ACCA, 000h
                        .FRAME  0
                        CALL      SYSTEM.LCDOUT_M
                        .LINE     603
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  1
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  2
                        LDI       _ACCA, 001h
                        ST        -Y, _ACCA
                        .FRAME  3
                        .FRAME  0
                        CALL      SYSTEM.LCDXY_M
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     604
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 1 SHLB _DEVICE
                        OR        Flags, _ACCA
                        LDI       _ACCB, SYSTEM.lcdout_m SHRB 1
                        LDI       _ACCA, SYSTEM.lcdout_m SHRB 9
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  2
                        LDI       _ACCCLO, SoftDDS.WaveStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.WaveStr SHRB 8
                        LPM       _ACCBHI, Z+
                        TST       _ACCBHI
                        BREQ      SoftDDS._L0090
                        CALL      SYSTEM.StrConst2Str
SoftDDS._L0090:
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .FRAME  0
                        .ENDBLOCK 605
                        .BRANCH   20,SoftDDS._L0064
                        JMP       SoftDDS._L0064
SoftDDS._L0086:
                        .LINE     606
                        CPI       _ACCA, 3
                        .BRANCH   3,SoftDDS._L0093
                        BREQ      SoftDDS._L0093
                        .BRANCH   20,SoftDDS._L0092
                        JMP       SoftDDS._L0092
SoftDDS._L0093:
SoftDDS._L0091:
                        .BLOCK    607
                        .LINE     607
                        LDI       _ACCCLO, SoftDDS.ParamStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.ParamStr SHRB 8
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        ADIW      _ACCCLO, 1
                        ST        -Y, _ACCCHI
                        ST        -Y, _ACCCLO
                        LDI       _ACCA, 028h
                        ST        -Y, _ACCA
                        LDI       _ACCA, 0FEH ROLB _DEVICE
                        AND       Flags, _ACCA
                        LDI       _ACCA, 0FEH ROLB _EEPROM
                        AND       Flags, _ACCA
                        .FRAME  3
                        LDS       _ACCA, SoftDDS.BurstMode
                        MOV       _ACCB, _ACCA
                        CLR       _ACCA
                        LDI       _ACCBLO, 0000Ah AND 0FFh
                        LDI       _ACCBHI, 0000Ah SHRB 8
                        SET
                        BLD       Flags, _SIGN
                        CALL      SYSTEM.MUL16
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  5
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        LDI       _ACCA, 020h
                        ST        -Y, _ACCA
                        .FRAME  8
                        SET
                        BLD       Flags, _SIGN
                        CALL      SYSTEM.Int2Str
                        .FRAME  3
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        LDI       _ACCA, 028h
                        PUSH      _ACCA
                        LDD       _ACCA, Y+000h
                        POP       _ACCB
                        SUB       _ACCB, _ACCA
                        MOV       _ACCA, _ACCB
                        POP       _ACCCHI
                        POP       _ACCCLO
                        ST        Z, _ACCA
                        ADIW      _FRAMEPTR, 3
                        .FRAME  0
                        .LINE     608
                        .BRANCH   17,SoftDDS.PARAMSTRONLCD
                        CALL      SoftDDS.PARAMSTRONLCD
                        .LINE     609
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 1 SHLB _DEVICE
                        OR        Flags, _ACCA
                        LDI       _ACCB, SYSTEM.lcdout_m SHRB 1
                        LDI       _ACCA, SYSTEM.lcdout_m SHRB 9
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  2
                        LDI       _ACCCLO, SoftDDS.BurstStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.BurstStr SHRB 8
                        LPM       _ACCBHI, Z+
                        TST       _ACCBHI
                        BREQ      SoftDDS._L0094
                        CALL      SYSTEM.StrConst2Str
SoftDDS._L0094:
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .FRAME  0
                        .ENDBLOCK 610
                        .BRANCH   20,SoftDDS._L0064
                        JMP       SoftDDS._L0064
SoftDDS._L0092:
SoftDDS._L0064:
                        .ENDBLOCK 612
SoftDDS.SollWerteOnLCD_X:
                        .LINE     612
                        .BRANCH   19
                        RET
                        .ENDFUNC  612

                        .FUNC     Checklimits, 00267h, 00020h
SoftDDS.Checklimits:
                        SBIW      _FRAMEPTR, 1
                        .BLOCK    618
                        .LINE     619
                        LDI       _ACCA, 000h
                        STD       Y+000h, _ACCA
                        .LINE     620
                        LDS       _ACCB, SoftDDS.Frequenz
                        LDS       _ACCA, SoftDDS.Frequenz+1
                        LDS       _ACCALO, SoftDDS.Frequenz+2
                        LDS       _ACCAHI, SoftDDS.Frequenz+3
                        LDI       _ACCDLO, 080h
                        EOR       _ACCAHI, _ACCDLO
                        CPI       _ACCAHI, 080h
                        BRNE      SoftDDS._L0095
                        CPI       _ACCALO, 000h
                        BRNE      SoftDDS._L0095
                        CPI       _ACCA, 000h
                        BRNE      SoftDDS._L0095
                        CPI       _ACCB, 000h
SoftDDS._L0095:
                        LDI       _ACCA, 0FFh
                        BRLO      SoftDDS._L0096
                        CLR       _ACCA
SoftDDS._L0096:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0099
                        BRNE      SoftDDS._L0099
                        .BRANCH   20,SoftDDS._L0097
                        JMP       SoftDDS._L0097
SoftDDS._L0099:
                        .BLOCK    620
                        .LINE     621
                        LDI       _ACCB, 000000000h AND 0FFh
                        LDI       _ACCA, 000000000h SHRB 8
                        LDI       _ACCALO, 000000000h SHRB 16
                        LDI       _ACCAHI, 000000000h SHRB 24
                        STS       SOFTDDS.FREQUENZ, _ACCB
                        STS       SOFTDDS.FREQUENZ+1, _ACCA
                        STS       SOFTDDS.FREQUENZ+2, _ACCALO
                        STS       SOFTDDS.FREQUENZ+3, _ACCAHI
                        .LINE     622
                        LDI       _ACCA, 0FFh
                        STD       Y+000h, _ACCA
                        .ENDBLOCK 623
SoftDDS._L0097:
SoftDDS._L0098:
                        .LINE     624
                        LDS       _ACCB, SoftDDS.Frequenz
                        LDS       _ACCA, SoftDDS.Frequenz+1
                        LDS       _ACCALO, SoftDDS.Frequenz+2
                        LDS       _ACCAHI, SoftDDS.Frequenz+3
                        LDI       _ACCDLO, 080h
                        EOR       _ACCAHI, _ACCDLO
                        CPI       _ACCAHI, 080h
                        BRNE      SoftDDS._L0100
                        CPI       _ACCALO, 098h
                        BRNE      SoftDDS._L0100
                        CPI       _ACCA, 096h
                        BRNE      SoftDDS._L0100
                        CPI       _ACCB, 07Fh
SoftDDS._L0100:
                        LDI       _ACCA, 0h
                        BREQ      SoftDDS._L0101
                        BRLO      SoftDDS._L0101
                        SER       _ACCA
SoftDDS._L0101:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0104
                        BRNE      SoftDDS._L0104
                        .BRANCH   20,SoftDDS._L0102
                        JMP       SoftDDS._L0102
SoftDDS._L0104:
                        .BLOCK    624
                        .LINE     625
                        LDI       _ACCB, 00098967Fh AND 0FFh
                        LDI       _ACCA, 00098967Fh SHRB 8
                        LDI       _ACCALO, 00098967Fh SHRB 16
                        LDI       _ACCAHI, 00098967Fh SHRB 24
                        STS       SOFTDDS.FREQUENZ, _ACCB
                        STS       SOFTDDS.FREQUENZ+1, _ACCA
                        STS       SOFTDDS.FREQUENZ+2, _ACCALO
                        STS       SOFTDDS.FREQUENZ+3, _ACCAHI
                        .LINE     626
                        LDI       _ACCA, 0FFh
                        STD       Y+000h, _ACCA
                        .ENDBLOCK 627
SoftDDS._L0102:
SoftDDS._L0103:
                        .LINE     628
                        LDS       _ACCB, SoftDDS.Level
                        LDS       _ACCA, SoftDDS.Level+1
                        LDS       _ACCALO, SoftDDS.Level+2
                        LDS       _ACCAHI, SoftDDS.Level+3
                        LDI       _ACCDLO, 080h
                        EOR       _ACCAHI, _ACCDLO
                        CPI       _ACCAHI, 080h
                        BRNE      SoftDDS._L0105
                        CPI       _ACCALO, 000h
                        BRNE      SoftDDS._L0105
                        CPI       _ACCA, 000h
                        BRNE      SoftDDS._L0105
                        CPI       _ACCB, 000h
SoftDDS._L0105:
                        LDI       _ACCA, 0FFh
                        BRLO      SoftDDS._L0106
                        BREQ      SoftDDS._L0106
                        CLR       _ACCA
SoftDDS._L0106:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0109
                        BRNE      SoftDDS._L0109
                        .BRANCH   20,SoftDDS._L0107
                        JMP       SoftDDS._L0107
SoftDDS._L0109:
                        .BLOCK    628
                        .LINE     629
                        LDI       _ACCB, 000000001h AND 0FFh
                        LDI       _ACCA, 000000001h SHRB 8
                        LDI       _ACCALO, 000000001h SHRB 16
                        LDI       _ACCAHI, 000000001h SHRB 24
                        STS       SOFTDDS.LEVEL, _ACCB
                        STS       SOFTDDS.LEVEL+1, _ACCA
                        STS       SOFTDDS.LEVEL+2, _ACCALO
                        STS       SOFTDDS.LEVEL+3, _ACCAHI
                        .LINE     630
                        LDI       _ACCA, 0FFh
                        STD       Y+000h, _ACCA
                        .ENDBLOCK 631
SoftDDS._L0107:
SoftDDS._L0108:
                        .LINE     632
                        LDS       _ACCB, SoftDDS.Level
                        LDS       _ACCA, SoftDDS.Level+1
                        LDS       _ACCALO, SoftDDS.Level+2
                        LDS       _ACCAHI, SoftDDS.Level+3
                        LDI       _ACCDLO, 080h
                        EOR       _ACCAHI, _ACCDLO
                        CPI       _ACCAHI, 080h
                        BRNE      SoftDDS._L0110
                        CPI       _ACCALO, 000h
                        BRNE      SoftDDS._L0110
                        CPI       _ACCA, 09Ch
                        BRNE      SoftDDS._L0110
                        CPI       _ACCB, 040h
SoftDDS._L0110:
                        LDI       _ACCA, 0h
                        BREQ      SoftDDS._L0111
                        BRLO      SoftDDS._L0111
                        SER       _ACCA
SoftDDS._L0111:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0114
                        BRNE      SoftDDS._L0114
                        .BRANCH   20,SoftDDS._L0112
                        JMP       SoftDDS._L0112
SoftDDS._L0114:
                        .BLOCK    632
                        .LINE     633
                        LDI       _ACCB, 000009C40h AND 0FFh
                        LDI       _ACCA, 000009C40h SHRB 8
                        LDI       _ACCALO, 000009C40h SHRB 16
                        LDI       _ACCAHI, 000009C40h SHRB 24
                        STS       SOFTDDS.LEVEL, _ACCB
                        STS       SOFTDDS.LEVEL+1, _ACCA
                        STS       SOFTDDS.LEVEL+2, _ACCALO
                        STS       SOFTDDS.LEVEL+3, _ACCAHI
                        .LINE     634
                        LDI       _ACCA, 0FFh
                        STD       Y+000h, _ACCA
                        .ENDBLOCK 635
SoftDDS._L0112:
SoftDDS._L0113:
                        .LINE     636
                        LDS       _ACCB, SoftDDS.Offset
                        LDS       _ACCA, SoftDDS.Offset+1
                        LDI       _ACCBLO, 080h
                        EOR       _ACCA, _ACCBLO
                        CPI       _ACCA, 058h
                        BRNE      SoftDDS._L0115
                        CPI       _ACCB, 0F0h
SoftDDS._L0115:
                        LDI       _ACCA, 0FFh
                        BRLO      SoftDDS._L0116
                        CLR       _ACCA
SoftDDS._L0116:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0119
                        BRNE      SoftDDS._L0119
                        .BRANCH   20,SoftDDS._L0117
                        JMP       SoftDDS._L0117
SoftDDS._L0119:
                        .BLOCK    636
                        .LINE     637
                        LDI       _ACCA, 0D8F0h SHRB 8
                        LDI       _ACCB, 0D8F0h AND 0FFh
                        STS       SOFTDDS.OFFSET, _ACCB
                        STS       SOFTDDS.OFFSET+1, _ACCA
                        .LINE     638
                        LDI       _ACCA, 0FFh
                        STD       Y+000h, _ACCA
                        .ENDBLOCK 639
SoftDDS._L0117:
SoftDDS._L0118:
                        .LINE     640
                        LDS       _ACCB, SoftDDS.Offset
                        LDS       _ACCA, SoftDDS.Offset+1
                        LDI       _ACCBLO, 080h
                        EOR       _ACCA, _ACCBLO
                        CPI       _ACCA, 0A7h
                        BRNE      SoftDDS._L0120
                        CPI       _ACCB, 010h
SoftDDS._L0120:
                        LDI       _ACCA, 0h
                        BREQ      SoftDDS._L0121
                        BRLO      SoftDDS._L0121
                        SER       _ACCA
SoftDDS._L0121:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0124
                        BRNE      SoftDDS._L0124
                        .BRANCH   20,SoftDDS._L0122
                        JMP       SoftDDS._L0122
SoftDDS._L0124:
                        .BLOCK    640
                        .LINE     641
                        LDI       _ACCA, 02710h SHRB 8
                        LDI       _ACCB, 02710h AND 0FFh
                        STS       SOFTDDS.OFFSET, _ACCB
                        STS       SOFTDDS.OFFSET+1, _ACCA
                        .LINE     642
                        LDI       _ACCA, 0FFh
                        STD       Y+000h, _ACCA
                        .ENDBLOCK 643
SoftDDS._L0122:
SoftDDS._L0123:
                        .LINE     644
                        LDS       _ACCB, SoftDDS.dB
                        LDS       _ACCA, SoftDDS.dB+1
                        LDS       _ACCALO, SoftDDS.dB+2
                        LDS       _ACCAHI, SoftDDS.dB+3
                        PUSH      _ACCB
                        PUSH      _ACCA
                        PUSH      _ACCALO
                        PUSH      _ACCAHI
                        LDI       _ACCB, 000h
                        LDI       _ACCA, 000h
                        LDI       _ACCALO, 060h
                        LDI       _ACCAHI, 041h
                        POP       _ACCCHI
                        POP       _ACCCLO
                        POP       _ACCBHI
                        POP       _ACCBLO
                        SET
                        BLD       Flags, _NEGATIVE
                        CLR       _ACCDHI
                        CALL      SYSTEM.HighF
                        TST       _ACCDHI
                        BREQ      SoftDDS._L0126
                        BRPL      SoftDDS._L0127
                        BRMI      SoftDDS._L0125
SoftDDS._L0127:
                        CLZ
                        CLC
                        RJMP      SoftDDS._L0126
SoftDDS._L0125:
                        CLZ
                        SEC
SoftDDS._L0126:
                        LDI       _ACCA, 0h
                        BREQ      SoftDDS._L0128
                        BRLO      SoftDDS._L0128
                        SER       _ACCA
SoftDDS._L0128:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0131
                        BRNE      SoftDDS._L0131
                        .BRANCH   20,SoftDDS._L0129
                        JMP       SoftDDS._L0129
SoftDDS._L0131:
                        .BLOCK    644
                        .LINE     645
                        LDI       _ACCB, 000h
                        LDI       _ACCA, 000h
                        LDI       _ACCALO, 060h
                        LDI       _ACCAHI, 041h
                        STS       SOFTDDS.DB, _ACCB
                        STS       SOFTDDS.DB+1, _ACCA
                        STS       SOFTDDS.DB+2, _ACCALO
                        STS       SOFTDDS.DB+3, _ACCAHI
                        .LINE     646
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDS       _ACCB, SoftDDS.db
                        LDS       _ACCA, SoftDDS.db+1
                        LDS       _ACCALO, SoftDDS.db+2
                        LDS       _ACCAHI, SoftDDS.db+3
                        ST        -Y, _ACCAHI
                        ST        -Y, _ACCALO
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  4
                        .FRAME  0
                        .BRANCH   17,SoftDDS.DB2LEVEL
                        CALL       SoftDDS.DB2LEVEL
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        STS       SOFTDDS.LEVEL, _ACCB
                        STS       SOFTDDS.LEVEL+1, _ACCA
                        STS       SOFTDDS.LEVEL+2, _ACCALO
                        STS       SOFTDDS.LEVEL+3, _ACCAHI
                        .LINE     647
                        LDI       _ACCA, 0FFh
                        STD       Y+000h, _ACCA
                        .ENDBLOCK 648
SoftDDS._L0129:
SoftDDS._L0130:
                        .LINE     649
                        LDS       _ACCB, SoftDDS.dB
                        LDS       _ACCA, SoftDDS.dB+1
                        LDS       _ACCALO, SoftDDS.dB+2
                        LDS       _ACCAHI, SoftDDS.dB+3
                        PUSH      _ACCB
                        PUSH      _ACCA
                        PUSH      _ACCALO
                        PUSH      _ACCAHI
                        LDI       _ACCB, 000h
                        LDI       _ACCA, 000h
                        LDI       _ACCALO, 08Ch
                        LDI       _ACCAHI, 0C2h
                        POP       _ACCCHI
                        POP       _ACCCLO
                        POP       _ACCBHI
                        POP       _ACCBLO
                        SET
                        BLD       Flags, _NEGATIVE
                        CLR       _ACCDHI
                        CALL      SYSTEM.HighF
                        TST       _ACCDHI
                        BREQ      SoftDDS._L0133
                        BRPL      SoftDDS._L0134
                        BRMI      SoftDDS._L0132
SoftDDS._L0134:
                        CLZ
                        CLC
                        RJMP      SoftDDS._L0133
SoftDDS._L0132:
                        CLZ
                        SEC
SoftDDS._L0133:
                        LDI       _ACCA, 0FFh
                        BRLO      SoftDDS._L0135
                        CLR       _ACCA
SoftDDS._L0135:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0138
                        BRNE      SoftDDS._L0138
                        .BRANCH   20,SoftDDS._L0136
                        JMP       SoftDDS._L0136
SoftDDS._L0138:
                        .BLOCK    649
                        .LINE     650
                        LDI       _ACCB, 000h
                        LDI       _ACCA, 000h
                        LDI       _ACCALO, 08Ch
                        LDI       _ACCAHI, 0C2h
                        STS       SOFTDDS.DB, _ACCB
                        STS       SOFTDDS.DB+1, _ACCA
                        STS       SOFTDDS.DB+2, _ACCALO
                        STS       SOFTDDS.DB+3, _ACCAHI
                        .LINE     651
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDS       _ACCB, SoftDDS.db
                        LDS       _ACCA, SoftDDS.db+1
                        LDS       _ACCALO, SoftDDS.db+2
                        LDS       _ACCAHI, SoftDDS.db+3
                        ST        -Y, _ACCAHI
                        ST        -Y, _ACCALO
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  4
                        .FRAME  0
                        .BRANCH   17,SoftDDS.DB2LEVEL
                        CALL       SoftDDS.DB2LEVEL
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        STS       SOFTDDS.LEVEL, _ACCB
                        STS       SOFTDDS.LEVEL+1, _ACCA
                        STS       SOFTDDS.LEVEL+2, _ACCALO
                        STS       SOFTDDS.LEVEL+3, _ACCAHI
                        .LINE     652
                        LDI       _ACCA, 0FFh
                        STD       Y+000h, _ACCA
                        .ENDBLOCK 653
SoftDDS._L0136:
SoftDDS._L0137:
                        .LINE     654
                        LDS       _ACCA, SoftDDS.Wave
                        CPI       _ACCA, 07Fh
                        LDI       _ACCA, 0h
                        BREQ      SoftDDS._L0139
                        BRLO      SoftDDS._L0139
                        SER       _ACCA
SoftDDS._L0139:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0142
                        BRNE      SoftDDS._L0142
                        .BRANCH   20,SoftDDS._L0140
                        JMP       SoftDDS._L0140
SoftDDS._L0142:
                        .BLOCK    655
                        .LINE     655
                        LDI       _ACCA, 000h
                        STS       SOFTDDS.WAVE, _ACCA
                        .LINE     656
                        LDI       _ACCA, 0FFh
                        STD       Y+000h, _ACCA
                        .ENDBLOCK 657
SoftDDS._L0140:
SoftDDS._L0141:
                        .LINE     658
                        LDS       _ACCA, SoftDDS.Wave
                        CPI       _ACCA, 005h
                        LDI       _ACCA, 0h
                        BREQ      SoftDDS._L0143
                        BRLO      SoftDDS._L0143
                        SER       _ACCA
SoftDDS._L0143:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0146
                        BRNE      SoftDDS._L0146
                        .BRANCH   20,SoftDDS._L0144
                        JMP       SoftDDS._L0144
SoftDDS._L0146:
                        .BLOCK    658
                        .LINE     659
                        LDI       _ACCA, 005h
                        STS       SOFTDDS.WAVE, _ACCA
                        .LINE     660
                        LDI       _ACCA, 0FFh
                        STD       Y+000h, _ACCA
                        .ENDBLOCK 661
SoftDDS._L0144:
SoftDDS._L0145:
                        .LINE     662
                        LDS       _ACCA, SoftDDS.TerzNum
                        CPI       _ACCA, 07Fh
                        LDI       _ACCA, 0h
                        BREQ      SoftDDS._L0147
                        BRLO      SoftDDS._L0147
                        SER       _ACCA
SoftDDS._L0147:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0150
                        BRNE      SoftDDS._L0150
                        .BRANCH   20,SoftDDS._L0148
                        JMP       SoftDDS._L0148
SoftDDS._L0150:
                        .BLOCK    663
                        .LINE     663
                        LDI       _ACCA, 000h
                        STS       SOFTDDS.TERZNUM, _ACCA
                        .LINE     664
                        LDI       _ACCA, 0FFh
                        STD       Y+000h, _ACCA
                        .ENDBLOCK 665
SoftDDS._L0148:
SoftDDS._L0149:
                        .LINE     666
                        LDS       _ACCA, SoftDDS.TerzNum
                        CPI       _ACCA, 01Eh
                        LDI       _ACCA, 0h
                        BREQ      SoftDDS._L0151
                        BRLO      SoftDDS._L0151
                        SER       _ACCA
SoftDDS._L0151:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0154
                        BRNE      SoftDDS._L0154
                        .BRANCH   20,SoftDDS._L0152
                        JMP       SoftDDS._L0152
SoftDDS._L0154:
                        .BLOCK    666
                        .LINE     667
                        LDI       _ACCA, 01Eh
                        STS       SOFTDDS.TERZNUM, _ACCA
                        .LINE     668
                        LDI       _ACCA, 0FFh
                        STD       Y+000h, _ACCA
                        .ENDBLOCK 669
SoftDDS._L0152:
SoftDDS._L0153:
                        .LINE     670
                        LDS       _ACCA, SoftDDS.BurstMode
                        CPI       _ACCA, 07Fh
                        LDI       _ACCA, 0h
                        BREQ      SoftDDS._L0155
                        BRLO      SoftDDS._L0155
                        SER       _ACCA
SoftDDS._L0155:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0158
                        BRNE      SoftDDS._L0158
                        .BRANCH   20,SoftDDS._L0156
                        JMP       SoftDDS._L0156
SoftDDS._L0158:
                        .BLOCK    671
                        .LINE     671
                        LDI       _ACCA, 000h
                        STS       SOFTDDS.BURSTMODE, _ACCA
                        .LINE     672
                        LDI       _ACCA, 0FFh
                        STD       Y+000h, _ACCA
                        .ENDBLOCK 673
SoftDDS._L0156:
SoftDDS._L0157:
                        .LINE     674
                        LDS       _ACCA, SoftDDS.BurstMode
                        CPI       _ACCA, 064h
                        LDI       _ACCA, 0h
                        BREQ      SoftDDS._L0159
                        BRLO      SoftDDS._L0159
                        SER       _ACCA
SoftDDS._L0159:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0162
                        BRNE      SoftDDS._L0162
                        .BRANCH   20,SoftDDS._L0160
                        JMP       SoftDDS._L0160
SoftDDS._L0162:
                        .BLOCK    674
                        .LINE     675
                        LDI       _ACCA, 064h
                        STS       SOFTDDS.BURSTMODE, _ACCA
                        .LINE     676
                        LDI       _ACCA, 0FFh
                        STD       Y+000h, _ACCA
                        .ENDBLOCK 677
SoftDDS._L0160:
SoftDDS._L0161:
                        .LINE     678
                        LDD       _ACCA, Y+000h
                        .ENDBLOCK 679
SoftDDS.Checklimits_X:
                        .LINE     679
                        .BRANCH   19
                        RET
                        .ENDFUNC  679

                        .FUNC     ParseGetParam, 002ADh, 00020h
SoftDDS.ParseGetParam:
                        .BLOCK    686
                        .LINE     687
                        LDI       _ACCA, 002h
                        STS       SOFTDDS.DIGITS, _ACCA
                        .LINE     688
                        LDI       _ACCA, 001h
                        STS       SOFTDDS.NACHKOMMA, _ACCA
                        .LINE     689
                        LDS       _ACCA, SoftDDS.SubCh
                        .LINE     690
                        CPI       _ACCA, 0
                        .BRANCH   3,SoftDDS._L0166
                        BREQ      SoftDDS._L0166
                        .BRANCH   20,SoftDDS._L0165
                        JMP       SoftDDS._L0165
SoftDDS._L0166:
SoftDDS._L0164:
                        .BLOCK    691
                        .LINE     691
                        LDS       _ACCB, SoftDDS.Frequenz
                        LDS       _ACCA, SoftDDS.Frequenz+1
                        LDS       _ACCALO, SoftDDS.Frequenz+2
                        LDS       _ACCAHI, SoftDDS.Frequenz+3
                        STS       SOFTDDS.PARAMLONG, _ACCB
                        STS       SOFTDDS.PARAMLONG+1, _ACCA
                        STS       SOFTDDS.PARAMLONG+2, _ACCALO
                        STS       SOFTDDS.PARAMLONG+3, _ACCAHI
                        .LINE     692
                        .BRANCH   17,SoftDDS.PARAMLONGTOSTR
                        CALL      SoftDDS.PARAMLONGTOSTR
                        .LINE     693
                        .BRANCH   17,SoftDDS.WRITEPARAMSTRSER
                        CALL      SoftDDS.WRITEPARAMSTRSER
                        .LINE     694
                        .BRANCH   20,SoftDDS.ParseGetParam_X
                        JMP       SoftDDS.ParseGetParam_X
                        .ENDBLOCK 695
                        .BRANCH   20,SoftDDS._L0163
                        JMP       SoftDDS._L0163
SoftDDS._L0165:
                        .LINE     696
                        CPI       _ACCA, 1
                        .BRANCH   3,SoftDDS._L0169
                        BREQ      SoftDDS._L0169
                        .BRANCH   20,SoftDDS._L0168
                        JMP       SoftDDS._L0168
SoftDDS._L0169:
SoftDDS._L0167:
                        .BLOCK    697
                        .LINE     697
                        LDS       _ACCB, SoftDDS.Level
                        LDS       _ACCA, SoftDDS.Level+1
                        LDS       _ACCALO, SoftDDS.Level+2
                        LDS       _ACCAHI, SoftDDS.Level+3
                        STS       SOFTDDS.PARAMLONG, _ACCB
                        STS       SOFTDDS.PARAMLONG+1, _ACCA
                        STS       SOFTDDS.PARAMLONG+2, _ACCALO
                        STS       SOFTDDS.PARAMLONG+3, _ACCAHI
                        .LINE     698
                        .BRANCH   17,SoftDDS.PARAMLONGTOSTR
                        CALL      SoftDDS.PARAMLONGTOSTR
                        .LINE     699
                        .BRANCH   17,SoftDDS.WRITEPARAMSTRSER
                        CALL      SoftDDS.WRITEPARAMSTRSER
                        .LINE     700
                        .BRANCH   20,SoftDDS.ParseGetParam_X
                        JMP       SoftDDS.ParseGetParam_X
                        .ENDBLOCK 701
                        .BRANCH   20,SoftDDS._L0163
                        JMP       SoftDDS._L0163
SoftDDS._L0168:
                        .LINE     702
                        CPI       _ACCA, 2
                        .BRANCH   3,SoftDDS._L0172
                        BREQ      SoftDDS._L0172
                        .BRANCH   20,SoftDDS._L0171
                        JMP       SoftDDS._L0171
SoftDDS._L0172:
SoftDDS._L0170:
                        .BLOCK    703
                        .LINE     703
                        LDI       _ACCA, 002h
                        STS       SOFTDDS.NACHKOMMA, _ACCA
                        .LINE     704
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDS       _ACCB, SoftDDS.Level
                        LDS       _ACCA, SoftDDS.Level+1
                        LDS       _ACCALO, SoftDDS.Level+2
                        LDS       _ACCAHI, SoftDDS.Level+3
                        ST        -Y, _ACCAHI
                        ST        -Y, _ACCALO
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  4
                        .FRAME  0
                        .BRANCH   17,SoftDDS.LEVEL2DB
                        CALL       SoftDDS.LEVEL2DB
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        STS       SOFTDDS.DB, _ACCB
                        STS       SOFTDDS.DB+1, _ACCA
                        STS       SOFTDDS.DB+2, _ACCALO
                        STS       SOFTDDS.DB+3, _ACCAHI
                        .LINE     705
                        LDS       _ACCB, SoftDDS.db
                        LDS       _ACCA, SoftDDS.db+1
                        LDS       _ACCALO, SoftDDS.db+2
                        LDS       _ACCAHI, SoftDDS.db+3
                        STS       SOFTDDS.PARAM, _ACCB
                        STS       SOFTDDS.PARAM+1, _ACCA
                        STS       SOFTDDS.PARAM+2, _ACCALO
                        STS       SOFTDDS.PARAM+3, _ACCAHI
                        .ENDBLOCK 706
                        .BRANCH   20,SoftDDS._L0163
                        JMP       SoftDDS._L0163
SoftDDS._L0171:
                        .LINE     707
                        CPI       _ACCA, 3
                        .BRANCH   3,SoftDDS._L0175
                        BREQ      SoftDDS._L0175
                        .BRANCH   20,SoftDDS._L0174
                        JMP       SoftDDS._L0174
SoftDDS._L0175:
SoftDDS._L0173:
                        .BLOCK    708
                        .LINE     708
                        LDS       _ACCA, SoftDDS.wave
                        STS       SOFTDDS.PARAMBYTE, _ACCA
                        .LINE     709
                        .BRANCH   17,SoftDDS.WRITEPARAMBYTESER
                        CALL      SoftDDS.WRITEPARAMBYTESER
                        .LINE     710
                        .BRANCH   20,SoftDDS.ParseGetParam_X
                        JMP       SoftDDS.ParseGetParam_X
                        .ENDBLOCK 711
                        .BRANCH   20,SoftDDS._L0163
                        JMP       SoftDDS._L0163
SoftDDS._L0174:
                        .LINE     712
                        CPI       _ACCA, 4
                        .BRANCH   3,SoftDDS._L0178
                        BREQ      SoftDDS._L0178
                        .BRANCH   20,SoftDDS._L0177
                        JMP       SoftDDS._L0177
SoftDDS._L0178:
SoftDDS._L0176:
                        .BLOCK    713
                        .LINE     713
                        LDS       _ACCA, SoftDDS.BurstMode
                        STS       SOFTDDS.PARAMBYTE, _ACCA
                        .LINE     714
                        .BRANCH   17,SoftDDS.WRITEPARAMBYTESER
                        CALL      SoftDDS.WRITEPARAMBYTESER
                        .LINE     715
                        .BRANCH   20,SoftDDS.ParseGetParam_X
                        JMP       SoftDDS.ParseGetParam_X
                        .ENDBLOCK 716
                        .BRANCH   20,SoftDDS._L0163
                        JMP       SoftDDS._L0163
SoftDDS._L0177:
                        .LINE     717
                        CPI       _ACCA, 6
                        .BRANCH   3,SoftDDS._L0181
                        BREQ      SoftDDS._L0181
                        .BRANCH   20,SoftDDS._L0180
                        JMP       SoftDDS._L0180
SoftDDS._L0181:
SoftDDS._L0179:
                        .BLOCK    719
                        .LINE     719
                        LDI       _ACCA, 003h
                        .FRAME  0
                        CALL       SYSTEM.GETADC
                        CLR       _ACCAHI
                        CLR       _ACCALO
                        CLT
                        BLD       Flags, _SIGN
                        CLT
                        BLD       Flags, _ERRFLAG
                        CALL      SYSTEM.LIntToFloat
                        STS       SOFTDDS.PARAM, _ACCB
                        STS       SOFTDDS.PARAM+1, _ACCA
                        STS       SOFTDDS.PARAM+2, _ACCALO
                        STS       SOFTDDS.PARAM+3, _ACCAHI
                        .ENDBLOCK 723
                        .BRANCH   20,SoftDDS._L0163
                        JMP       SoftDDS._L0163
SoftDDS._L0180:
                        .LINE     724
                        CPI       _ACCA, 7
                        .BRANCH   3,SoftDDS._L0184
                        BREQ      SoftDDS._L0184
                        .BRANCH   20,SoftDDS._L0183
                        JMP       SoftDDS._L0183
SoftDDS._L0184:
SoftDDS._L0182:
                        .BLOCK    725
                        .LINE     725
                        LDI       _ACCA, 002h
                        STS       SOFTDDS.NACHKOMMA, _ACCA
                        .LINE     727
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 003h
                        .FRAME  0
                        CALL       SYSTEM.GETADC
                        LDI       _ACCBLO, 0000Ah AND 0FFh
                        LDI       _ACCBHI, 0000Ah SHRB 8
                        CLT
                        BLD       Flags, _SIGN
                        CALL      SYSTEM.MUL16
                        CLR       _ACCAHI
                        CLR       _ACCALO
                        ST        -Y, _ACCAHI
                        ST        -Y, _ACCALO
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  4
                        .FRAME  0
                        .BRANCH   17,SoftDDS.LEVEL2DB
                        CALL       SoftDDS.LEVEL2DB
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        STS       SOFTDDS.PARAM, _ACCB
                        STS       SOFTDDS.PARAM+1, _ACCA
                        STS       SOFTDDS.PARAM+2, _ACCALO
                        STS       SOFTDDS.PARAM+3, _ACCAHI
                        .ENDBLOCK 731
                        .BRANCH   20,SoftDDS._L0163
                        JMP       SoftDDS._L0163
SoftDDS._L0183:
                        .LINE     732
                        CPI       _ACCA, 8
                        .BRANCH   3,SoftDDS._L0187
                        BREQ      SoftDDS._L0187
                        .BRANCH   20,SoftDDS._L0186
                        JMP       SoftDDS._L0186
SoftDDS._L0187:
                        .BRANCH   20,SoftDDS._L0185
                        JMP       SoftDDS._L0185
SoftDDS._L0186:
                        CPI       _ACCA, 99
                        .BRANCH   3,SoftDDS._L0189
                        BREQ      SoftDDS._L0189
                        .BRANCH   20,SoftDDS._L0188
                        JMP       SoftDDS._L0188
SoftDDS._L0189:
SoftDDS._L0185:
                        .BLOCK    734
                        .LINE     734
                        LDI       _ACCA, 004h
                        .FRAME  0
                        CALL       SYSTEM.GETADC
                        CLR       _ACCAHI
                        CLR       _ACCALO
                        CLT
                        BLD       Flags, _SIGN
                        CLT
                        BLD       Flags, _ERRFLAG
                        CALL      SYSTEM.LIntToFloat
                        STS       SOFTDDS.PARAM, _ACCB
                        STS       SOFTDDS.PARAM+1, _ACCA
                        STS       SOFTDDS.PARAM+2, _ACCALO
                        STS       SOFTDDS.PARAM+3, _ACCAHI
                        .ENDBLOCK 738
                        .BRANCH   20,SoftDDS._L0163
                        JMP       SoftDDS._L0163
SoftDDS._L0188:
                        .LINE     739
                        CPI       _ACCA, 9
                        .BRANCH   3,SoftDDS._L0192
                        BREQ      SoftDDS._L0192
                        .BRANCH   20,SoftDDS._L0191
                        JMP       SoftDDS._L0191
SoftDDS._L0192:
SoftDDS._L0190:
                        .BLOCK    740
                        .LINE     740
                        LDI       _ACCA, 002h
                        STS       SOFTDDS.NACHKOMMA, _ACCA
                        .LINE     742
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 004h
                        .FRAME  0
                        CALL       SYSTEM.GETADC
                        LDI       _ACCBLO, 0000Ah AND 0FFh
                        LDI       _ACCBHI, 0000Ah SHRB 8
                        CLT
                        BLD       Flags, _SIGN
                        CALL      SYSTEM.MUL16
                        CLR       _ACCAHI
                        CLR       _ACCALO
                        ST        -Y, _ACCAHI
                        ST        -Y, _ACCALO
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  4
                        .FRAME  0
                        .BRANCH   17,SoftDDS.LEVEL2DB
                        CALL       SoftDDS.LEVEL2DB
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        STS       SOFTDDS.PARAM, _ACCB
                        STS       SOFTDDS.PARAM+1, _ACCA
                        STS       SOFTDDS.PARAM+2, _ACCALO
                        STS       SOFTDDS.PARAM+3, _ACCAHI
                        .ENDBLOCK 746
                        .BRANCH   20,SoftDDS._L0163
                        JMP       SoftDDS._L0163
SoftDDS._L0191:
                        .LINE     748
                        CPI       _ACCA, 10
                        .BRANCH   3,SoftDDS._L0195
                        BREQ      SoftDDS._L0195
                        .BRANCH   20,SoftDDS._L0194
                        JMP       SoftDDS._L0194
SoftDDS._L0195:
SoftDDS._L0193:
                        .BLOCK    749
                        .LINE     749
                        LDI       _ACCA, 004h
                        STS       SOFTDDS.NACHKOMMA, _ACCA
                        .LINE     750
                        .BRANCH   17,SoftDDS.OFFSETTOPARAM
                        CALL      SoftDDS.OFFSETTOPARAM
                        .ENDBLOCK 751
                        .BRANCH   20,SoftDDS._L0163
                        JMP       SoftDDS._L0163
SoftDDS._L0194:
                        .LINE     752
                        CPI       _ACCA, 254
                        .BRANCH   3,SoftDDS._L0198
                        BREQ      SoftDDS._L0198
                        .BRANCH   20,SoftDDS._L0197
                        JMP       SoftDDS._L0197
SoftDDS._L0198:
SoftDDS._L0196:
                        .BLOCK    753
                        .LINE     753
                        .BRANCH   17,SoftDDS.WRITECHPREFIX
                        CALL      SoftDDS.WRITECHPREFIX
                        .LINE     754
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 1 SHLB _DEVICE
                        OR        Flags, _ACCA
                        LDI       _ACCB, SYSTEM.serout SHRB 1
                        LDI       _ACCA, SYSTEM.serout SHRB 9
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  2
                        LDI       _ACCCLO, SoftDDS.Vers1Str AND 0FFh
                        LDI       _ACCCHI, SoftDDS.Vers1Str SHRB 8
                        LPM       _ACCBHI, Z+
                        TST       _ACCBHI
                        BREQ      SoftDDS._L0199
                        CALL      SYSTEM.StrConst2Str
SoftDDS._L0199:
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .FRAME  0
                        .LINE     755
                        .BRANCH   17,SoftDDS.SERCRLF
                        CALL      SoftDDS.SERCRLF
                        .LINE     756
                        .BRANCH   20,SoftDDS.ParseGetParam_X
                        JMP       SoftDDS.ParseGetParam_X
                        .ENDBLOCK 757
                        .BRANCH   20,SoftDDS._L0163
                        JMP       SoftDDS._L0163
SoftDDS._L0197:
                        .LINE     758
                        CPI       _ACCA, 255
                        .BRANCH   3,SoftDDS._L0202
                        BREQ      SoftDDS._L0202
                        .BRANCH   20,SoftDDS._L0201
                        JMP       SoftDDS._L0201
SoftDDS._L0202:
SoftDDS._L0200:
                        .BLOCK    759
                        .LINE     759
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  1
                        LDS       _ACCA, SoftDDS.Status
                        ST        -Y, _ACCA
                        .FRAME  2
                        .FRAME  0
                        .BRANCH   17,SoftDDS.SERPROMPT
                        CALL      SoftDDS.SERPROMPT
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     760
                        .BRANCH   20,SoftDDS.ParseGetParam_X
                        JMP       SoftDDS.ParseGetParam_X
                        .ENDBLOCK 761
                        .BRANCH   20,SoftDDS._L0163
                        JMP       SoftDDS._L0163
SoftDDS._L0201:
                        .BLOCK    762
                        .LINE     763
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 005h
                        ST        -Y, _ACCA
                        .FRAME  1
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  2
                        .FRAME  0
                        .BRANCH   17,SoftDDS.SERPROMPT
                        CALL      SoftDDS.SERPROMPT
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     764
                        .BRANCH   20,SoftDDS.ParseGetParam_X
                        JMP       SoftDDS.ParseGetParam_X
                        .ENDBLOCK 765
SoftDDS._L0163:
                        .LINE     766
                        .BRANCH   17,SoftDDS.WRITEPARAMSER
                        CALL      SoftDDS.WRITEPARAMSER
                        .ENDBLOCK 767
SoftDDS.ParseGetParam_X:
                        .LINE     767
                        .BRANCH   19
                        RET
                        .ENDFUNC  767

                        .FUNC     ParseSetParam, 00301h, 00020h
SoftDDS.ParseSetParam:
                        .BLOCK    770
                        .LINE     771
                        LDS       _ACCA, SoftDDS.SubCh
                        .LINE     772
                        CPI       _ACCA, 0
                        .BRANCH   3,SoftDDS._L0206
                        BREQ      SoftDDS._L0206
                        .BRANCH   20,SoftDDS._L0205
                        JMP       SoftDDS._L0205
SoftDDS._L0206:
SoftDDS._L0204:
                        .BLOCK    773
                        .LINE     773
                        LDS       _ACCB, SoftDDS.Param
                        LDS       _ACCA, SoftDDS.Param+1
                        LDS       _ACCALO, SoftDDS.Param+2
                        LDS       _ACCAHI, SoftDDS.Param+3
                        PUSH      _ACCB
                        PUSH      _ACCA
                        PUSH      _ACCALO
                        PUSH      _ACCAHI
                        POP       _ACCEHI
                        POP       _ACCELO
                        POP       _ACCDHI
                        POP       _ACCDLO
                        LDI       _ACCBLO, 000h
                        LDI       _ACCBHI, 000h
                        LDI       _ACCCLO, 020h
                        LDI       _ACCCHI, 041h
                        CLT
                        BLD       Flags, _ERRFLAG
                        CALL      SYSTEM.MulFloat_R
                        CLT
                        BLD       Flags, _ERRFLAG
                        CALL      SYSTEM.FloatToLInt
                        STS       SOFTDDS.FREQUENZ, _ACCB
                        STS       SOFTDDS.FREQUENZ+1, _ACCA
                        STS       SOFTDDS.FREQUENZ+2, _ACCALO
                        STS       SOFTDDS.FREQUENZ+3, _ACCAHI
                        .ENDBLOCK 774
                        .BRANCH   20,SoftDDS._L0203
                        JMP       SoftDDS._L0203
SoftDDS._L0205:
                        .LINE     775
                        CPI       _ACCA, 1
                        .BRANCH   3,SoftDDS._L0209
                        BREQ      SoftDDS._L0209
                        .BRANCH   20,SoftDDS._L0208
                        JMP       SoftDDS._L0208
SoftDDS._L0209:
SoftDDS._L0207:
                        .BLOCK    776
                        .LINE     776
                        LDS       _ACCB, SoftDDS.Param
                        LDS       _ACCA, SoftDDS.Param+1
                        LDS       _ACCALO, SoftDDS.Param+2
                        LDS       _ACCAHI, SoftDDS.Param+3
                        PUSH      _ACCB
                        PUSH      _ACCA
                        PUSH      _ACCALO
                        PUSH      _ACCAHI
                        POP       _ACCEHI
                        POP       _ACCELO
                        POP       _ACCDHI
                        POP       _ACCDLO
                        LDI       _ACCBLO, 000h
                        LDI       _ACCBHI, 000h
                        LDI       _ACCCLO, 020h
                        LDI       _ACCCHI, 041h
                        CLT
                        BLD       Flags, _ERRFLAG
                        CALL      SYSTEM.MulFloat_R
                        CLT
                        BLD       Flags, _ERRFLAG
                        CALL      SYSTEM.FloatToLInt
                        STS       SOFTDDS.LEVEL, _ACCB
                        STS       SOFTDDS.LEVEL+1, _ACCA
                        STS       SOFTDDS.LEVEL+2, _ACCALO
                        STS       SOFTDDS.LEVEL+3, _ACCAHI
                        .LINE     777
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDS       _ACCB, SoftDDS.Level
                        LDS       _ACCA, SoftDDS.Level+1
                        LDS       _ACCALO, SoftDDS.Level+2
                        LDS       _ACCAHI, SoftDDS.Level+3
                        ST        -Y, _ACCAHI
                        ST        -Y, _ACCALO
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  4
                        .FRAME  0
                        .BRANCH   17,SoftDDS.LEVEL2DB
                        CALL       SoftDDS.LEVEL2DB
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        STS       SOFTDDS.DB, _ACCB
                        STS       SOFTDDS.DB+1, _ACCA
                        STS       SOFTDDS.DB+2, _ACCALO
                        STS       SOFTDDS.DB+3, _ACCAHI
                        .ENDBLOCK 778
                        .BRANCH   20,SoftDDS._L0203
                        JMP       SoftDDS._L0203
SoftDDS._L0208:
                        .LINE     780
                        CPI       _ACCA, 2
                        .BRANCH   3,SoftDDS._L0212
                        BREQ      SoftDDS._L0212
                        .BRANCH   20,SoftDDS._L0211
                        JMP       SoftDDS._L0211
SoftDDS._L0212:
SoftDDS._L0210:
                        .BLOCK    781
                        .LINE     781
                        LDS       _ACCB, SoftDDS.param
                        LDS       _ACCA, SoftDDS.param+1
                        LDS       _ACCALO, SoftDDS.param+2
                        LDS       _ACCAHI, SoftDDS.param+3
                        STS       SOFTDDS.DB, _ACCB
                        STS       SOFTDDS.DB+1, _ACCA
                        STS       SOFTDDS.DB+2, _ACCALO
                        STS       SOFTDDS.DB+3, _ACCAHI
                        .LINE     782
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDS       _ACCB, SoftDDS.db
                        LDS       _ACCA, SoftDDS.db+1
                        LDS       _ACCALO, SoftDDS.db+2
                        LDS       _ACCAHI, SoftDDS.db+3
                        ST        -Y, _ACCAHI
                        ST        -Y, _ACCALO
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  4
                        .FRAME  0
                        .BRANCH   17,SoftDDS.DB2LEVEL
                        CALL       SoftDDS.DB2LEVEL
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        STS       SOFTDDS.LEVEL, _ACCB
                        STS       SOFTDDS.LEVEL+1, _ACCA
                        STS       SOFTDDS.LEVEL+2, _ACCALO
                        STS       SOFTDDS.LEVEL+3, _ACCAHI
                        .ENDBLOCK 783
                        .BRANCH   20,SoftDDS._L0203
                        JMP       SoftDDS._L0203
SoftDDS._L0211:
                        .LINE     785
                        CPI       _ACCA, 3
                        .BRANCH   3,SoftDDS._L0215
                        BREQ      SoftDDS._L0215
                        .BRANCH   20,SoftDDS._L0214
                        JMP       SoftDDS._L0214
SoftDDS._L0215:
SoftDDS._L0213:
                        .BLOCK    786
                        .LINE     786
                        LDS       _ACCA, SoftDDS.ParamByte
                        STS       SOFTDDS.WAVE, _ACCA
                        .ENDBLOCK 787
                        .BRANCH   20,SoftDDS._L0203
                        JMP       SoftDDS._L0203
SoftDDS._L0214:
                        .LINE     788
                        CPI       _ACCA, 4
                        .BRANCH   3,SoftDDS._L0218
                        BREQ      SoftDDS._L0218
                        .BRANCH   20,SoftDDS._L0217
                        JMP       SoftDDS._L0217
SoftDDS._L0218:
SoftDDS._L0216:
                        .BLOCK    789
                        .LINE     789
                        LDS       _ACCA, SoftDDS.ParamByte
                        STS       SOFTDDS.BURSTMODE, _ACCA
                        .ENDBLOCK 790
                        .BRANCH   20,SoftDDS._L0203
                        JMP       SoftDDS._L0203
SoftDDS._L0217:
                        .LINE     791
                        CPI       _ACCA, 10
                        .BRANCH   3,SoftDDS._L0221
                        BREQ      SoftDDS._L0221
                        .BRANCH   20,SoftDDS._L0220
                        JMP       SoftDDS._L0220
SoftDDS._L0221:
SoftDDS._L0219:
                        .BLOCK    792
                        .LINE     792
                        LDS       _ACCB, SoftDDS.Param
                        LDS       _ACCA, SoftDDS.Param+1
                        LDS       _ACCALO, SoftDDS.Param+2
                        LDS       _ACCAHI, SoftDDS.Param+3
                        PUSH      _ACCB
                        PUSH      _ACCA
                        PUSH      _ACCALO
                        PUSH      _ACCAHI
                        POP       _ACCEHI
                        POP       _ACCELO
                        POP       _ACCDHI
                        POP       _ACCDLO
                        LDI       _ACCBLO, 000h
                        LDI       _ACCBHI, 000h
                        LDI       _ACCCLO, 07Ah
                        LDI       _ACCCHI, 044h
                        CLT
                        BLD       Flags, _ERRFLAG
                        CALL      SYSTEM.MulFloat_R
                        CLT
                        BLD       Flags, _ERRFLAG
                        CALL      SYSTEM.FloatToLInt
                        SBRC      _ACCAHI, 7
                        RJMP      SoftDDS._L0222
                        OR        _ACCAHI, _ACCALO
                        BRNE      SoftDDS._L0223
                        RJMP      SoftDDS._L0224
SoftDDS._L0222:
                        CPI       _ACCAHI, 0FFh
                        BRNE      SoftDDS._L0223
                        CPI       _ACCALO, 0FFh
                        BREQ      SoftDDS._L0224
SoftDDS._L0223:
                        SET
                        BLD       Flags, _ERRFLAG
SoftDDS._L0224:
                        STS       SOFTDDS.OFFSET, _ACCB
                        STS       SOFTDDS.OFFSET+1, _ACCA
                        .ENDBLOCK 793
                        .BRANCH   20,SoftDDS._L0203
                        JMP       SoftDDS._L0203
SoftDDS._L0220:
                        .BLOCK    794
                        .LINE     795
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 005h
                        ST        -Y, _ACCA
                        .FRAME  1
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  2
                        .FRAME  0
                        .BRANCH   17,SoftDDS.SERPROMPT
                        CALL      SoftDDS.SERPROMPT
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     796
                        .BRANCH   20,SoftDDS.ParseSetParam_X
                        JMP       SoftDDS.ParseSetParam_X
                        .ENDBLOCK 797
SoftDDS._L0203:
                        .LINE     798
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        .BRANCH   17,SoftDDS.CHECKLIMITS
                        CALL       SoftDDS.CHECKLIMITS
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0227
                        BRNE      SoftDDS._L0227
                        .BRANCH   20,SoftDDS._L0225
                        JMP       SoftDDS._L0225
SoftDDS._L0227:
                        .BLOCK    798
                        .LINE     799
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 005h
                        ST        -Y, _ACCA
                        .FRAME  1
                        LDS       _ACCA, SoftDDS.Status
                        ST        -Y, _ACCA
                        .FRAME  2
                        .FRAME  0
                        .BRANCH   17,SoftDDS.SERPROMPT
                        CALL      SoftDDS.SERPROMPT
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .ENDBLOCK 800
                        .BRANCH   20,SoftDDS._L0226
                        JMP       SoftDDS._L0226
SoftDDS._L0225:
                        .BLOCK    800
                        .LINE     801
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  1
                        LDS       _ACCA, SoftDDS.Status
                        ST        -Y, _ACCA
                        .FRAME  2
                        .FRAME  0
                        .BRANCH   17,SoftDDS.SERPROMPT
                        CALL      SoftDDS.SERPROMPT
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .ENDBLOCK 802
SoftDDS._L0226:
                        .LINE     803
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        .BRANCH   17,SoftDDS.SETLEVELDDS
                        CALL      SoftDDS.SETLEVELDDS
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .ENDBLOCK 804
SoftDDS.ParseSetParam_X:
                        .LINE     804
                        .BRANCH   19
                        RET
                        .ENDFUNC  804

                        .FUNC     Cmd2Index, 0032Bh, 00020h
SoftDDS.Cmd2Index:
                        SBIW      _FRAMEPTR, 1
                        .BLOCK    814
                        .LINE     815
                        LDI       _ACCCLO, SoftDDS.ParamStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.ParamStr SHRB 8
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        ADIW      _ACCCLO, 1
                        ST        -Y, _ACCCHI
                        ST        -Y, _ACCCLO
                        LDI       _ACCA, 028h
                        ST        -Y, _ACCA
                        LDI       _ACCA, 0FEH ROLB _DEVICE
                        AND       Flags, _ACCA
                        LDI       _ACCA, 0FEH ROLB _EEPROM
                        AND       Flags, _ACCA
                        .FRAME  3
                        LDI       _ACCCLO, SoftDDS.ParamStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.ParamStr SHRB 8
                        CALL      SYSTEM.UpperCaseStr
                        LDI       _ACCA, 028h
                        PUSH      _ACCA
                        LDD       _ACCA, Y+000h
                        POP       _ACCB
                        SUB       _ACCB, _ACCA
                        MOV       _ACCA, _ACCB
                        POP       _ACCCHI
                        POP       _ACCCLO
                        ST        Z, _ACCA
                        ADIW      _FRAMEPTR, 3
                        .FRAME  0
                        .LINE     816
                        MOVW      _ACCCLO, _FRAMEPTR
                        ST        -Y, _ACCCHI
                        ST        -Y, _ACCCLO
                        .FRAME  2
                        LDI       _ACCA, 000h
                        ST        Z, _ACCA
                        LDI       _ACCA, 00Bh
                        ST        -Y, _ACCA
                        .FRAME  3
                        LD        _ACCA, Z
SoftDDS._L0230:
                        LDD       _ACCB, Y+000h
                        CP        _ACCB, _ACCA
                        LDI       _ACCA, 0FFh
                        BRLO      SoftDDS._L0231
                        CLR       _ACCA
SoftDDS._L0231:
                        TST       _ACCA
                        .BRANCH   3,SoftDDS._L0232
                        BREQ      SoftDDS._L0232
                        .BRANCH   20,SoftDDS._L0229
                        JMP       SoftDDS._L0229
SoftDDS._L0232:
                        .BLOCK    817
                        .LINE     817
                        LDI       _ACCCLO, SoftDDS.ParamStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.ParamStr SHRB 8
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        LDI       _ACCCLO, SoftDDS.CmdStrArr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.CmdStrArr SHRB 8
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        LDD       _ACCA, Y+003h
                        MOV       _ACCB, _ACCA
                        CLR       _ACCA
                        LDI       _ACCBLO, 00004h AND 0FFh
                        LDI       _ACCBHI, 00004h SHRB 8
                        CLT
                        BLD       Flags, _SIGN
                        CALL      SYSTEM.MUL16
                        POP       _ACCCHI
                        POP       _ACCCLO
                        ADD       _ACCCLO, _ACCB
                        ADC       _ACCCHI, _ACCA
                        POP       _ACCBHI
                        POP       _ACCBLO
                        SET
                        BLD       Flags, _STRCONST
                        CALL      SYSTEM.StringComp
                        LDI       _ACCA, 0h
                        BRNE      SoftDDS._L0233
                        SER       _ACCA
SoftDDS._L0233:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0236
                        BRNE      SoftDDS._L0236
                        .BRANCH   20,SoftDDS._L0234
                        JMP       SoftDDS._L0234
SoftDDS._L0236:
                        .BLOCK    817
                        .LINE     818
                        LDD       _ACCA, Y+003h
                        ADIW      _FRAMEPTR, 3
                        .BRANCH   20,SoftDDS.Cmd2Index_X
                        JMP       SoftDDS.Cmd2Index_X
                        .ENDBLOCK 819
SoftDDS._L0234:
SoftDDS._L0235:
                        .ENDBLOCK 820
SoftDDS._L0228:
                        .LINE     820
                        LDD       _ACCCLO, Y+001h
                        LDD       _ACCCHI, Y+002h
                        LD        _ACCA, Z
                        INC       _ACCA
                        ST        Z, _ACCA
                        TST       _ACCA
                        .BRANCH   3,SoftDDS._L0229
                        BREQ      SoftDDS._L0229
                        .BRANCH   20,SoftDDS._L0230
                        JMP       SoftDDS._L0230
SoftDDS._L0229:
                        ADIW      _FRAMEPTR, 3
                        .FRAME  0
                        .LINE     821
                        LDI       _ACCA, 00Ch
                        .ENDBLOCK 822
SoftDDS.Cmd2Index_X:
                        .LINE     822
                        .BRANCH   19
                        RET
                        .ENDFUNC  822

                        .FUNC     ParseExtract, 00338h, 00020h
SoftDDS.ParseExtract:
                        SBIW      _FRAMEPTR, 2
                        .BLOCK    828
                        .LINE     829
                        LDI       _ACCCLO, SoftDDS.ParamStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.ParamStr SHRB 8
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        ADIW      _ACCCLO, 1
                        ST        -Y, _ACCCHI
                        ST        -Y, _ACCCLO
                        LDI       _ACCA, 028h
                        ST        -Y, _ACCA
                        LDI       _ACCA, 0FEH ROLB _DEVICE
                        AND       Flags, _ACCA
                        LDI       _ACCA, 0FEH ROLB _EEPROM
                        AND       Flags, _ACCA
                        .FRAME  3
                        LDI       _ACCA, 028h
                        PUSH      _ACCA
                        LDD       _ACCA, Y+000h
                        POP       _ACCB
                        SUB       _ACCB, _ACCA
                        MOV       _ACCA, _ACCB
                        POP       _ACCCHI
                        POP       _ACCCLO
                        ST        Z, _ACCA
                        ADIW      _FRAMEPTR, 3
                        .FRAME  0
                        .LINE     830
                        LDI       _ACCA, 000h
                        STD       Y+000h, _ACCA
                        .LINE     831
SoftDDS._L0237:
                        LDI       _ACCCLO, SoftDDS.SerInpStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.SerInpStr SHRB 8
                        LDS       _ACCA, SoftDDS.SerInpPtr
                        MOV       _ACCB, _ACCA
                        CLR       _ACCA
                        ADD       _ACCCLO, _ACCB
                        ADC       _ACCCHI, _ACCA
                        LD        _ACCA, Z+
                        CPI       _ACCA, 020h
                        LDI       _ACCA, 0h
                        BRNE      SoftDDS._L0239
                        SER       _ACCA
SoftDDS._L0239:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0240
                        BRNE      SoftDDS._L0240
                        .BRANCH   20,SoftDDS._L0238
                        JMP       SoftDDS._L0238
SoftDDS._L0240:
                        .BLOCK    832
                        .LINE     832
                        LDS       _ACCA, SoftDDS.serInpPtr
                        INC       _ACCA
                        STS       SoftDDS.serInpPtr, _ACCA
                        .ENDBLOCK 833
                        .LINE     833
                        .BRANCH   20,SoftDDS._L0237
                        JMP       SoftDDS._L0237
SoftDDS._L0238:
                        .LINE     834
                        LDI       _ACCCLO, SoftDDS.SerInpStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.SerInpStr SHRB 8
                        LDS       _ACCA, SoftDDS.SerInpPtr
                        MOV       _ACCB, _ACCA
                        CLR       _ACCA
                        ADD       _ACCCLO, _ACCB
                        ADC       _ACCCHI, _ACCA
                        LD        _ACCA, Z+
                        CPI       _ACCA, 039h
                        .BRANCH   3,SoftDDS._L0241
                        BREQ      SoftDDS._L0241
                        .BRANCH   1,SoftDDS._L0242
                        BRSH      SoftDDS._L0242
                        CPI       _ACCA, 02Ah
                        .BRANCH   1,SoftDDS._L0242
                        BRLO      SoftDDS._L0242
                        CLR       _ACCDLO
                        .BRANCH   20,SoftDDS._L0241
                        RJMP      SoftDDS._L0241
SoftDDS._L0242:
                        LDI       _ACCDLO, 001h
SoftDDS._L0241:
                        LDI       _ACCA, 0h
                        BRNE      SoftDDS._L0243
                        SER       _ACCA
SoftDDS._L0243:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0246
                        BRNE      SoftDDS._L0246
                        .BRANCH   20,SoftDDS._L0244
                        JMP       SoftDDS._L0244
SoftDDS._L0246:
                        .BLOCK    835
                        .LINE     835
                        LDI       _ACCA, 0FFh
                        STD       Y+000h, _ACCA
                        .LINE     836
                        LDI       _ACCCLO, SoftDDS.i AND 0FFh
                        LDI       _ACCCHI, SoftDDS.i SHRB 8
                        ST        -Y, _ACCCHI
                        ST        -Y, _ACCCLO
                        .FRAME  2
                        LDS       _ACCA, SoftDDS.SerInpPtr
                        ST        Z, _ACCA
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        LDI       _ACCCLO, SoftDDS.SerInpStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.SerInpStr SHRB 8
                        LD        _ACCA, Z
                        POP       _ACCCHI
                        POP       _ACCCLO
                        ST        -Y, _ACCA
                        .FRAME  3
                        LD        _ACCA, Z
SoftDDS._L0249:
                        LDD       _ACCB, Y+000h
                        CP        _ACCB, _ACCA
                        LDI       _ACCA, 0FFh
                        BRLO      SoftDDS._L0250
                        CLR       _ACCA
SoftDDS._L0250:
                        TST       _ACCA
                        .BRANCH   3,SoftDDS._L0251
                        BREQ      SoftDDS._L0251
                        .BRANCH   20,SoftDDS._L0248
                        JMP       SoftDDS._L0248
SoftDDS._L0251:
                        .BLOCK    837
                        .LINE     837
                        LDI       _ACCCLO, SoftDDS.SerInpStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.SerInpStr SHRB 8
                        MOV       _ACCA, SoftDDS.i
                        MOV       _ACCB, _ACCA
                        CLR       _ACCA
                        ADD       _ACCCLO, _ACCB
                        ADC       _ACCCHI, _ACCA
                        LD        _ACCA, Z+
                        STD       Y+004h, _ACCA
                        .LINE     838
                        LDD       _ACCA, Y+004h
                        CPI       _ACCA, 039h
                        LDI       _ACCA, 0FFh
                        BRLO      SoftDDS._L0252
                        BREQ      SoftDDS._L0252
                        CLR       _ACCA
SoftDDS._L0252:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0255
                        BRNE      SoftDDS._L0255
                        .BRANCH   20,SoftDDS._L0253
                        JMP       SoftDDS._L0253
SoftDDS._L0255:
                        .BLOCK    838
                        .LINE     839
                        LDD       _ACCA, Y+004h
                        MOV       _ACCEHI, _ACCA
                        LDI       _ACCELO, 001h
                        LDI       _ACCA, _ACCELO SHRB 8
                        LDI       _ACCB, _ACCELO AND 0FFh
                        PUSH      _ACCB
                        PUSH      _ACCA
                        LDI       _ACCCLO, SoftDDS.ParamStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.ParamStr SHRB 8
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        LDI       _ACCA, 028h
                        PUSH      _ACCA
                        LDI       _ACCFHI, 000h
                        CALL      SYSTEM.StringAppend
                        .ENDBLOCK 841
                        .BRANCH   20,SoftDDS._L0254
                        JMP       SoftDDS._L0254
SoftDDS._L0253:
                        .BLOCK    841
                        .LINE     841
                        MOV       _ACCA, SoftDDS.i
                        STS       SOFTDDS.SERINPPTR, _ACCA
                        .LINE     842
                        LDD       _ACCA, Y+003h
                        ADIW      _FRAMEPTR, 3
                        .BRANCH   20,SoftDDS.ParseExtract_X
                        JMP       SoftDDS.ParseExtract_X
                        .ENDBLOCK 843
SoftDDS._L0254:
                        .ENDBLOCK 844
SoftDDS._L0247:
                        .LINE     844
                        LDD       _ACCCLO, Y+001h
                        LDD       _ACCCHI, Y+002h
                        LD        _ACCA, Z
                        INC       _ACCA
                        ST        Z, _ACCA
                        TST       _ACCA
                        .BRANCH   3,SoftDDS._L0248
                        BREQ      SoftDDS._L0248
                        .BRANCH   20,SoftDDS._L0249
                        JMP       SoftDDS._L0249
SoftDDS._L0248:
                        ADIW      _FRAMEPTR, 3
                        .FRAME  0
                        .ENDBLOCK 845
                        .BRANCH   20,SoftDDS._L0245
                        JMP       SoftDDS._L0245
SoftDDS._L0244:
                        .BLOCK    845
                        .LINE     846
                        LDI       _ACCCLO, SoftDDS.i AND 0FFh
                        LDI       _ACCCHI, SoftDDS.i SHRB 8
                        ST        -Y, _ACCCHI
                        ST        -Y, _ACCCLO
                        .FRAME  2
                        LDS       _ACCA, SoftDDS.SerInpPtr
                        ST        Z, _ACCA
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        LDI       _ACCCLO, SoftDDS.SerInpStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.SerInpStr SHRB 8
                        LD        _ACCA, Z
                        POP       _ACCCHI
                        POP       _ACCCLO
                        ST        -Y, _ACCA
                        .FRAME  3
                        LD        _ACCA, Z
SoftDDS._L0258:
                        LDD       _ACCB, Y+000h
                        CP        _ACCB, _ACCA
                        LDI       _ACCA, 0FFh
                        BRLO      SoftDDS._L0259
                        CLR       _ACCA
SoftDDS._L0259:
                        TST       _ACCA
                        .BRANCH   3,SoftDDS._L0260
                        BREQ      SoftDDS._L0260
                        .BRANCH   20,SoftDDS._L0257
                        JMP       SoftDDS._L0257
SoftDDS._L0260:
                        .BLOCK    847
                        .LINE     847
                        LDI       _ACCCLO, SoftDDS.SerInpStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.SerInpStr SHRB 8
                        MOV       _ACCA, SoftDDS.i
                        MOV       _ACCB, _ACCA
                        CLR       _ACCA
                        ADD       _ACCCLO, _ACCB
                        ADC       _ACCCHI, _ACCA
                        LD        _ACCA, Z+
                        STD       Y+004h, _ACCA
                        .LINE     848
                        LDD       _ACCA, Y+004h
                        CPI       _ACCA, 041h
                        LDI       _ACCA, 0
                        BRLO      SoftDDS._L0261
                        LDI       _ACCA, 0FFh
SoftDDS._L0261:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0264
                        BRNE      SoftDDS._L0264
                        .BRANCH   20,SoftDDS._L0262
                        JMP       SoftDDS._L0262
SoftDDS._L0264:
                        .BLOCK    848
                        .LINE     849
                        LDD       _ACCA, Y+004h
                        MOV       _ACCEHI, _ACCA
                        LDI       _ACCELO, 001h
                        LDI       _ACCA, _ACCELO SHRB 8
                        LDI       _ACCB, _ACCELO AND 0FFh
                        PUSH      _ACCB
                        PUSH      _ACCA
                        LDI       _ACCCLO, SoftDDS.ParamStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.ParamStr SHRB 8
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        LDI       _ACCA, 028h
                        PUSH      _ACCA
                        LDI       _ACCFHI, 000h
                        CALL      SYSTEM.StringAppend
                        .ENDBLOCK 851
                        .BRANCH   20,SoftDDS._L0263
                        JMP       SoftDDS._L0263
SoftDDS._L0262:
                        .BLOCK    851
                        .LINE     851
                        MOV       _ACCA, SoftDDS.i
                        STS       SOFTDDS.SERINPPTR, _ACCA
                        .LINE     852
                        LDD       _ACCA, Y+003h
                        ADIW      _FRAMEPTR, 3
                        .BRANCH   20,SoftDDS.ParseExtract_X
                        JMP       SoftDDS.ParseExtract_X
                        .ENDBLOCK 853
SoftDDS._L0263:
                        .ENDBLOCK 854
SoftDDS._L0256:
                        .LINE     854
                        LDD       _ACCCLO, Y+001h
                        LDD       _ACCCHI, Y+002h
                        LD        _ACCA, Z
                        INC       _ACCA
                        ST        Z, _ACCA
                        TST       _ACCA
                        .BRANCH   3,SoftDDS._L0257
                        BREQ      SoftDDS._L0257
                        .BRANCH   20,SoftDDS._L0258
                        JMP       SoftDDS._L0258
SoftDDS._L0257:
                        ADIW      _FRAMEPTR, 3
                        .FRAME  0
                        .ENDBLOCK 855
SoftDDS._L0245:
                        .LINE     856
                        LDD       _ACCA, Y+000h
                        .ENDBLOCK 857
SoftDDS.ParseExtract_X:
                        .LINE     857
                        .BRANCH   19
                        RET
                        .ENDFUNC  857

                        .FUNC     ParseSubCh, 0035Bh, 00020h
SoftDDS.ParseSubCh:
                        SBIW      _FRAMEPTR, 8
                        .BLOCK    869
                        .LINE     870
                        LDI       _ACCCLO, SoftDDS.SerInpStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.SerInpStr SHRB 8
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        ADIW      _ACCCLO, 1
                        ST        -Y, _ACCCHI
                        ST        -Y, _ACCCLO
                        LDI       _ACCA, 03Fh
                        ST        -Y, _ACCA
                        LDI       _ACCA, 0FEH ROLB _DEVICE
                        AND       Flags, _ACCA
                        LDI       _ACCA, 0FEH ROLB _EEPROM
                        AND       Flags, _ACCA
                        .FRAME  3
                        LDI       _ACCCLO, SoftDDS.SerInpStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.SerInpStr SHRB 8
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        LD        _ACCB, Z+
                        LDI       _ACCALO, 1
SoftDDS._L0265:
                        TST       _ACCB
                        BREQ      SoftDDS._L0266
                        LD        _ACCA, Z+
                        CPI       _ACCA, 20h
                        BRNE      SoftDDS._L0266
                        INC       _ACCALO
                        DEC       _ACCB
                        RJMP      SoftDDS._L0265
SoftDDS._L0266:
                        MOV       _ACCA, _ACCB
                        CLR       _ACCAHI
                        ADD       _ACCCLO, _ACCB
                        ADC       _ACCCHI, _ACCAHI
                        SBIW      _ACCCLO, 02h
SoftDDS._L0267:
                        TST       _ACCB
                        BREQ      SoftDDS._L0268
                        LD        _ACCA, Z
                        SBIW      _ACCCLO, 01h
                        CPI       _ACCA, 20h
                        BRNE      SoftDDS._L0268
                        DEC       _ACCB
                        RJMP      SoftDDS._L0267
SoftDDS._L0268:
                        MOV       _ACCA, _ACCB
                        PUSH      _ACCALO
                        POP       _ACCB
                        POP       _ACCCHI
                        POP       _ACCCLO
                        CALL      SYSTEM.StrCopyV
                        LDI       _ACCA, 03Fh
                        PUSH      _ACCA
                        LDD       _ACCA, Y+000h
                        POP       _ACCB
                        SUB       _ACCB, _ACCA
                        MOV       _ACCA, _ACCB
                        POP       _ACCCHI
                        POP       _ACCCLO
                        ST        Z, _ACCA
                        ADIW      _FRAMEPTR, 3
                        .FRAME  0
                        .LINE     871
                        LDI       _ACCCLO, SoftDDS.SerInpStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.SerInpStr SHRB 8
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        LDI       _ACCCLO, $St_String13 AND 0FFh
                        LDI       _ACCCHI, $St_String13 SHRB 8
                        POP       _ACCBHI
                        POP       _ACCBLO
                        SET
                        BLD       Flags, _STRCONST
                        CALL      SYSTEM.StringComp
                        LDI       _ACCA, 0h
                        BRNE      SoftDDS._L0269
                        SER       _ACCA
SoftDDS._L0269:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0272
                        BRNE      SoftDDS._L0272
                        .BRANCH   20,SoftDDS._L0270
                        JMP       SoftDDS._L0270
SoftDDS._L0272:
                        .BLOCK    871
                        .LINE     872
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  1
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  2
                        .FRAME  0
                        .BRANCH   17,SoftDDS.SERPROMPT
                        CALL      SoftDDS.SERPROMPT
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     873
                        .BRANCH   20,SoftDDS.ParseSubCh_X
                        JMP       SoftDDS.ParseSubCh_X
                        .ENDBLOCK 874
SoftDDS._L0270:
SoftDDS._L0271:
                        .LINE     875
                        LDI       _ACCA, 03Ah
                        PUSH      _ACCA
                        LDI       _ACCCLO, SoftDDS.SerInpStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.SerInpStr SHRB 8
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        LDI       _ACCELO, 001h
                        POP       _ACCCHI
                        POP       _ACCCLO
                        POP       _ACCB
                        CALL      SYSTEM.PosChInVarStr
                        CPI       _ACCA, 000h
                        LDI       _ACCA, 0h
                        BREQ      SoftDDS._L0273
                        BRLO      SoftDDS._L0273
                        SER       _ACCA
SoftDDS._L0273:
                        STD       Y+004h, _ACCA
                        .LINE     876
                        LDI       _ACCA, 03Fh
                        PUSH      _ACCA
                        LDI       _ACCCLO, SoftDDS.SerInpStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.SerInpStr SHRB 8
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        LDI       _ACCELO, 001h
                        POP       _ACCCHI
                        POP       _ACCCLO
                        POP       _ACCB
                        CALL      SYSTEM.PosChInVarStr
                        CPI       _ACCA, 000h
                        LDI       _ACCA, 0h
                        BREQ      SoftDDS._L0274
                        BRLO      SoftDDS._L0274
                        SER       _ACCA
SoftDDS._L0274:
                        STD       Y+001h, _ACCA
                        .LINE     877
                        LDI       _ACCA, 023h
                        PUSH      _ACCA
                        LDI       _ACCCLO, SoftDDS.SerInpStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.SerInpStr SHRB 8
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        LDI       _ACCELO, 001h
                        POP       _ACCCHI
                        POP       _ACCCLO
                        POP       _ACCB
                        CALL      SYSTEM.PosChInVarStr
                        CPI       _ACCA, 000h
                        LDI       _ACCA, 0h
                        BREQ      SoftDDS._L0275
                        BRLO      SoftDDS._L0275
                        SER       _ACCA
SoftDDS._L0275:
                        STD       Y+003h, _ACCA
                        .LINE     878
                        LDI       _ACCA, 02Ah
                        PUSH      _ACCA
                        LDI       _ACCCLO, SoftDDS.SerInpStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.SerInpStr SHRB 8
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        LDI       _ACCELO, 001h
                        POP       _ACCCHI
                        POP       _ACCCLO
                        POP       _ACCB
                        CALL      SYSTEM.PosChInVarStr
                        CPI       _ACCA, 000h
                        LDI       _ACCA, 0h
                        BREQ      SoftDDS._L0276
                        BRLO      SoftDDS._L0276
                        SER       _ACCA
SoftDDS._L0276:
                        STD       Y+002h, _ACCA
                        .LINE     879
                        LDD       _ACCA, Y+003h
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0279
                        BRNE      SoftDDS._L0279
                        .BRANCH   20,SoftDDS._L0277
                        JMP       SoftDDS._L0277
SoftDDS._L0279:
                        .BLOCK    879
                        .LINE     880
                        .BRANCH   17,SoftDDS.WRITESERINP
                        CALL      SoftDDS.WRITESERINP
                        .LINE     881
                        .BRANCH   20,SoftDDS.ParseSubCh_X
                        JMP       SoftDDS.ParseSubCh_X
                        .ENDBLOCK 882
SoftDDS._L0277:
SoftDDS._L0278:
                        .LINE     883
                        LDI       _ACCA, 001h
                        STS       SOFTDDS.SERINPPTR, _ACCA
                        .LINE     884
                        LDD       _ACCA, Y+004h
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0282
                        BRNE      SoftDDS._L0282
                        .BRANCH   20,SoftDDS._L0280
                        JMP       SoftDDS._L0280
SoftDDS._L0282:
                        .BLOCK    884
                        .LINE     885
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        .BRANCH   17,SoftDDS.PARSEEXTRACT
                        CALL       SoftDDS.PARSEEXTRACT
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        STD       Y+000h, _ACCA
                        .LINE     886
                        LDS       _ACCA, SoftDDS.SerInpPtr
                        INC       _ACCA
                        STS       SoftDDS.SerInpPtr, _ACCA
                        .LINE     887
                        LDD       _ACCA, Y+002h
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0285
                        BRNE      SoftDDS._L0285
                        .BRANCH   20,SoftDDS._L0283
                        JMP       SoftDDS._L0283
SoftDDS._L0285:
                        .BLOCK    888
                        .LINE     888
                        .BRANCH   17,SoftDDS.WRITESERINP
                        CALL      SoftDDS.WRITESERINP
                        .ENDBLOCK 889
                        .BRANCH   20,SoftDDS._L0284
                        JMP       SoftDDS._L0284
SoftDDS._L0283:
                        .BLOCK    889
                        .LINE     890
                        LDI       _ACCCLO, SoftDDS.ParamStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.ParamStr SHRB 8
                        LDI       _ACCA, 0FEH ROLB _EEPROM
                        AND       Flags, _ACCA
                        CLT
                        BLD       Flags, _ERRFLAG
                        LDI       _ACCB, 000h
                        CALL      SYSTEM.Str2Int
                        MOV       _ACCA, _ACCB
                        STS       SOFTDDS.CURRENTCH, _ACCA
                        .ENDBLOCK 891
SoftDDS._L0284:
                        .ENDBLOCK 892
SoftDDS._L0280:
SoftDDS._L0281:
                        .LINE     893
                        LDD       _ACCA, Y+002h
                        COM       _ACCA
                        PUSH      _ACCA
                        LDS       _ACCA, SoftDDS.CurrentCh
                        PUSH      _ACCA
                        LDS       _ACCA, SoftDDS.SlaveCh
                        POP       _ACCB
                        CP        _ACCB, _ACCA
                        LDI       _ACCA, 0h
                        BREQ      SoftDDS._L0286
                        SER       _ACCA
SoftDDS._L0286:
                        POP       _ACCB
                        AND       _ACCA, _ACCB
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0289
                        BRNE      SoftDDS._L0289
                        .BRANCH   20,SoftDDS._L0287
                        JMP       SoftDDS._L0287
SoftDDS._L0289:
                        .BLOCK    894
                        .LINE     894
                        .BRANCH   17,SoftDDS.WRITESERINP
                        CALL      SoftDDS.WRITESERINP
                        .LINE     895
                        .BRANCH   20,SoftDDS.ParseSubCh_X
                        JMP       SoftDDS.ParseSubCh_X
                        .ENDBLOCK 896
SoftDDS._L0287:
SoftDDS._L0288:
                        .LINE     897
                        LDD       _ACCA, Y+008h
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0292
                        BRNE      SoftDDS._L0292
                        .BRANCH   20,SoftDDS._L0290
                        JMP       SoftDDS._L0290
SoftDDS._L0292:
                        .BLOCK    898
                        .LINE     898
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 002h
                        ST        -Y, _ACCA
                        .FRAME  1
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  2
                        .FRAME  0
                        .BRANCH   17,SoftDDS.SERPROMPT
                        CALL      SoftDDS.SERPROMPT
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     899
                        .BRANCH   20,SoftDDS.ParseSubCh_X
                        JMP       SoftDDS.ParseSubCh_X
                        .ENDBLOCK 900
SoftDDS._L0290:
SoftDDS._L0291:
                        .LINE     902
                        LDI       _ACCA, 001F4h SHRB 8
                        LDI       _ACCB, 001F4h AND 0FFh
                        LDI       _ACCCLO, SoftDDS.ActivityTimer AND 0FFh
                        LDI       _ACCCHI, SoftDDS.ActivityTimer SHRB 8
                        LDI       _ACCBHI, 001h
                        CALL      SYSTEM.SetSysTimer
                        .LINE     903
                        CBI       00032h, 002h
                        .LINE     906
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        .BRANCH   17,SoftDDS.PARSEEXTRACT
                        CALL       SoftDDS.PARSEEXTRACT
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0295
                        BRNE      SoftDDS._L0295
                        .BRANCH   20,SoftDDS._L0293
                        JMP       SoftDDS._L0293
SoftDDS._L0295:
                        .BLOCK    906
                        .LINE     907
                        LDI       _ACCA, 000h
                        STD       Y+006h, _ACCA
                        .ENDBLOCK 908
                        .BRANCH   20,SoftDDS._L0294
                        JMP       SoftDDS._L0294
SoftDDS._L0293:
                        .BLOCK    908
                        .LINE     909
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        .BRANCH   17,SoftDDS.CMD2INDEX
                        CALL       SoftDDS.CMD2INDEX
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        STS       SOFTDDS.CMDWHICH, _ACCA
                        .LINE     910
                        LDS       _ACCA, SoftDDS.CmdWhich
                        CPI       _ACCA, 00Ch
                        LDI       _ACCA, 0h
                        BRNE      SoftDDS._L0296
                        SER       _ACCA
SoftDDS._L0296:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0299
                        BRNE      SoftDDS._L0299
                        .BRANCH   20,SoftDDS._L0297
                        JMP       SoftDDS._L0297
SoftDDS._L0299:
                        .BLOCK    910
                        .LINE     911
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 004h
                        ST        -Y, _ACCA
                        .FRAME  1
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  2
                        .FRAME  0
                        .BRANCH   17,SoftDDS.SERPROMPT
                        CALL      SoftDDS.SERPROMPT
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     912
                        .BRANCH   20,SoftDDS.ParseSubCh_X
                        JMP       SoftDDS.ParseSubCh_X
                        .ENDBLOCK 913
SoftDDS._L0297:
SoftDDS._L0298:
                        .LINE     914
                        LDI       _ACCCLO, SoftDDS.Cmd2SubChArr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.Cmd2SubChArr SHRB 8
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        LDS       _ACCA, SoftDDS.CmdWhich
                        MOV       _ACCB, _ACCA
                        CLR       _ACCA
                        POP       _ACCCHI
                        POP       _ACCCLO
                        ADD       _ACCCLO, _ACCB
                        ADC       _ACCCHI, _ACCA
                        LPM       _ACCA, Z
                        STD       Y+006h, _ACCA
                        .LINE     915
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        .BRANCH   17,SoftDDS.PARSEEXTRACT
                        CALL       SoftDDS.PARSEEXTRACT
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        STD       Y+000h, _ACCA
                        .ENDBLOCK 916
SoftDDS._L0294:
                        .LINE     917
                        LDI       _ACCCLO, SoftDDS.ParamStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.ParamStr SHRB 8
                        LDI       _ACCA, 0FEH ROLB _EEPROM
                        AND       Flags, _ACCA
                        CLT
                        BLD       Flags, _ERRFLAG
                        LDI       _ACCB, 000h
                        CALL      SYSTEM.Str2Int
                        MOV       _ACCA, _ACCB
                        PUSH      _ACCA
                        LDD       _ACCA, Y+006h
                        POP       _ACCB
                        ADD       _ACCA, _ACCB
                        STS       SOFTDDS.SUBCH, _ACCA
                        .LINE     919
                        LDD       _ACCA, Y+001h
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0302
                        BRNE      SoftDDS._L0302
                        .BRANCH   20,SoftDDS._L0300
                        JMP       SoftDDS._L0300
SoftDDS._L0302:
                        .BLOCK    919
                        .LINE     920
                        .BRANCH   17,SoftDDS.PARSEGETPARAM
                        CALL      SoftDDS.PARSEGETPARAM
                        .ENDBLOCK 921
                        .BRANCH   20,SoftDDS._L0301
                        JMP       SoftDDS._L0301
SoftDDS._L0300:
                        .BLOCK    921
                        .LINE     922
                        LDI       _ACCA, 03Dh
                        PUSH      _ACCA
                        LDI       _ACCCLO, SoftDDS.SerInpStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.SerInpStr SHRB 8
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        LDI       _ACCELO, 001h
                        POP       _ACCCHI
                        POP       _ACCCLO
                        POP       _ACCB
                        CALL      SYSTEM.PosChInVarStr
                        SUBI      _ACCA, -001h AND 0FFh
                        STS       SOFTDDS.SERINPPTR, _ACCA
                        .LINE     923
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        .BRANCH   17,SoftDDS.PARSEEXTRACT
                        CALL       SoftDDS.PARSEEXTRACT
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0305
                        BRNE      SoftDDS._L0305
                        .BRANCH   20,SoftDDS._L0303
                        JMP       SoftDDS._L0303
SoftDDS._L0305:
                        .BLOCK    923
                        .LINE     924
                        LDI       _ACCCLO, SoftDDS.ParamStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.ParamStr SHRB 8
                        LDI       _ACCA, 0FEH ROLB _EEPROM
                        AND       Flags, _ACCA
                        CALL      SYSTEM.Str2Float
                        STS       SOFTDDS.PARAM, _ACCB
                        STS       SOFTDDS.PARAM+1, _ACCA
                        STS       SOFTDDS.PARAM+2, _ACCALO
                        STS       SOFTDDS.PARAM+3, _ACCAHI
                        .LINE     925
                        LDS       _ACCB, SoftDDS.Param
                        LDS       _ACCA, SoftDDS.Param+1
                        LDS       _ACCALO, SoftDDS.Param+2
                        LDS       _ACCAHI, SoftDDS.Param+3
                        CLT
                        BLD       Flags, _ERRFLAG
                        CALL      SYSTEM.FloatToLInt
                        SBRC      _ACCAHI, 7
                        RJMP      SoftDDS._L0306
                        OR        _ACCAHI, _ACCALO
                        BRNE      SoftDDS._L0307
                        RJMP      SoftDDS._L0308
SoftDDS._L0306:
                        CPI       _ACCAHI, 0FFh
                        BRNE      SoftDDS._L0307
                        CPI       _ACCALO, 0FFh
                        BREQ      SoftDDS._L0308
SoftDDS._L0307:
                        SET
                        BLD       Flags, _ERRFLAG
SoftDDS._L0308:
                        STS       SOFTDDS.PARAMINT, _ACCB
                        STS       SOFTDDS.PARAMINT+1, _ACCA
                        .LINE     926
                        LDS       _ACCB, SoftDDS.ParamInt
                        LDS       _ACCA, SoftDDS.ParamInt+1
                        MOV       _ACCA, _ACCB
                        STS       SOFTDDS.PARAMBYTE, _ACCA
                        .ENDBLOCK 927
                        .BRANCH   20,SoftDDS._L0304
                        JMP       SoftDDS._L0304
SoftDDS._L0303:
                        .BLOCK    927
                        .LINE     928
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 005h
                        ST        -Y, _ACCA
                        .FRAME  1
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  2
                        .FRAME  0
                        .BRANCH   17,SoftDDS.SERPROMPT
                        CALL      SoftDDS.SERPROMPT
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     929
                        .BRANCH   20,SoftDDS.ParseSubCh_X
                        JMP       SoftDDS.ParseSubCh_X
                        .ENDBLOCK 930
SoftDDS._L0304:
                        .LINE     931
                        .BRANCH   17,SoftDDS.PARSESETPARAM
                        CALL      SoftDDS.PARSESETPARAM
                        .ENDBLOCK 932
SoftDDS._L0301:
                        .ENDBLOCK 933
SoftDDS.ParseSubCh_X:
                        .LINE     933
                        .BRANCH   19
                        RET
                        .ENDFUNC  933

                        .FUNC     BurstGen, 003AAh, 00020h
SoftDDS.BurstGen:
                        .BLOCK    940
                        .LINE     941
                        LDS       _ACCA, SoftDDS.BurstMode
                        CPI       _ACCA, 000h
                        LDI       _ACCA, 0h
                        BREQ      SoftDDS._L0309
                        SER       _ACCA
SoftDDS._L0309:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0312
                        BRNE      SoftDDS._L0312
                        .BRANCH   20,SoftDDS._L0310
                        JMP       SoftDDS._L0310
SoftDDS._L0312:
                        .BLOCK    941
                        .LINE     942
                        SER       _ACCA
                        LDS       _ACCB, SoftDDS.BurstTimer
                        TST       _ACCB
                        BREQ      SoftDDS._L0313
                        COM       _ACCA
SoftDDS._L0313:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0316
                        BRNE      SoftDDS._L0316
                        .BRANCH   20,SoftDDS._L0314
                        JMP       SoftDDS._L0314
SoftDDS._L0316:
                        .BLOCK    942
                        .LINE     943
                        LDI       _ACCA, 00Ah
                        STS       SoftDDS.BurstTimer, _ACCA
                        .LINE     944
                        LDS       _ACCA, SoftDDS.BurstCount
                        DEC       _ACCA
                        STS       SoftDDS.BurstCount, _ACCA
                        .LINE     945
                        LDS       _ACCA, SoftDDS.BurstCount
                        CPI       _ACCA, 000h
                        LDI       _ACCA, 0h
                        BRNE      SoftDDS._L0317
                        SER       _ACCA
SoftDDS._L0317:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0320
                        BRNE      SoftDDS._L0320
                        .BRANCH   20,SoftDDS._L0318
                        JMP       SoftDDS._L0318
SoftDDS._L0320:
                        .BLOCK    945
                        .LINE     946
                        LDI       _ACCA, 02100h SHRB 8
                        LDI       _ACCB, 02100h AND 0FFh
                        STS       SOFTDDS.DSS_CMD, _ACCB
                        STS       SOFTDDS.DSS_CMD+1, _ACCA
                        .LINE     947
                        .BRANCH   17,SoftDDS.SENDDDS
                        CALL      SoftDDS.SENDDDS
                        .LINE     948
                        LDS       _ACCA, SoftDDS.BurstMode
                        SUBI      _ACCA, -001h AND 0FFh
                        STS       SOFTDDS.BURSTCOUNT, _ACCA
                        .LINE     949
                        LDI       _ACCA, 0FFh
                        STS       SOFTDDS.BURSTPRIME, _ACCA
                        .ENDBLOCK 950
SoftDDS._L0318:
SoftDDS._L0319:
                        .ENDBLOCK 951
SoftDDS._L0314:
SoftDDS._L0315:
                        .LINE     952
                        LDS       _ACCA, SoftDDS.BurstCount
                        CPI       _ACCA, 001h
                        LDI       _ACCA, 0h
                        BRNE      SoftDDS._L0321
                        SER       _ACCA
SoftDDS._L0321:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0324
                        BRNE      SoftDDS._L0324
                        .BRANCH   20,SoftDDS._L0322
                        JMP       SoftDDS._L0322
SoftDDS._L0324:
                        .BLOCK    952
                        .LINE     953
                        LDS       _ACCA, SoftDDS.BurstPrime
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0327
                        BRNE      SoftDDS._L0327
                        .BRANCH   20,SoftDDS._L0325
                        JMP       SoftDDS._L0325
SoftDDS._L0327:
                        .BLOCK    953
                        .LINE     954
                        LDS       _ACCB, SoftDDS.wave_cmd
                        LDS       _ACCA, SoftDDS.wave_cmd+1
                        STS       SOFTDDS.DSS_CMD, _ACCB
                        STS       SOFTDDS.DSS_CMD+1, _ACCA
                        .LINE     955
                        .BRANCH   17,SoftDDS.SENDDDS
                        CALL      SoftDDS.SENDDDS
                        .LINE     956
                        LDI       _ACCA, 000h
                        STS       SOFTDDS.BURSTPRIME, _ACCA
                        .ENDBLOCK 957
SoftDDS._L0325:
SoftDDS._L0326:
                        .ENDBLOCK 958
SoftDDS._L0322:
SoftDDS._L0323:
                        .ENDBLOCK 959
SoftDDS._L0310:
SoftDDS._L0311:
                        .ENDBLOCK 960
SoftDDS.BurstGen_X:
                        .LINE     960
                        .BRANCH   19
                        RET
                        .ENDFUNC  960

                        .FUNC     Chores, 003C4h, 00020h
SoftDDS.Chores:
                        .BLOCK    966
                        .LINE     967
                        .BRANCH   17,SoftDDS.BURSTGEN
                        CALL      SoftDDS.BURSTGEN
                        .ENDBLOCK 970
SoftDDS.Chores_X:
                        .LINE     970
                        .BRANCH   19
                        RET
                        .ENDFUNC  970

                        .FUNC     CheckSer, 003CCh, 00020h
SoftDDS.CheckSer:
                        SBIW      _FRAMEPTR, 1
                        .BLOCK    975
                        .LINE     976
SoftDDS._L0328:
                        CALL       SYSTEM.SERSTAT
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0330
                        BRNE      SoftDDS._L0330
                        .BRANCH   20,SoftDDS._L0329
                        JMP       SoftDDS._L0329
SoftDDS._L0330:
                        .BLOCK    976
                        .LINE     977
                        CALL       SYSTEM.SERINP
                        STD       Y+000h, _ACCA
                        .LINE     979
                        LDD       _ACCA, Y+000h
                        CPI       _ACCA, 07Fh
                        .BRANCH   3,SoftDDS._L0331
                        BREQ      SoftDDS._L0331
                        .BRANCH   1,SoftDDS._L0332
                        BRSH      SoftDDS._L0332
                        CPI       _ACCA, 020h
                        .BRANCH   1,SoftDDS._L0332
                        BRLO      SoftDDS._L0332
                        CLR       _ACCDLO
                        .BRANCH   20,SoftDDS._L0331
                        RJMP      SoftDDS._L0331
SoftDDS._L0332:
                        LDI       _ACCDLO, 001h
SoftDDS._L0331:
                        LDI       _ACCA, 0h
                        BRNE      SoftDDS._L0333
                        SER       _ACCA
SoftDDS._L0333:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0336
                        BRNE      SoftDDS._L0336
                        .BRANCH   20,SoftDDS._L0334
                        JMP       SoftDDS._L0334
SoftDDS._L0336:
                        .BLOCK    980
                        .LINE     980
                        LDD       _ACCA, Y+000h
                        MOV       _ACCEHI, _ACCA
                        LDI       _ACCELO, 001h
                        LDI       _ACCA, _ACCELO SHRB 8
                        LDI       _ACCB, _ACCELO AND 0FFh
                        PUSH      _ACCB
                        PUSH      _ACCA
                        LDI       _ACCCLO, SoftDDS.SerInpStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.SerInpStr SHRB 8
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        LDI       _ACCA, 03Fh
                        PUSH      _ACCA
                        LDI       _ACCFHI, 000h
                        CALL      SYSTEM.StringAppend
                        .ENDBLOCK 981
SoftDDS._L0334:
SoftDDS._L0335:
                        .LINE     982
                        LDD       _ACCA, Y+000h
                        CPI       _ACCA, 008h
                        LDI       _ACCA, 0h
                        BRNE      SoftDDS._L0337
                        SER       _ACCA
SoftDDS._L0337:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0340
                        BRNE      SoftDDS._L0340
                        .BRANCH   20,SoftDDS._L0338
                        JMP       SoftDDS._L0338
SoftDDS._L0340:
                        .BLOCK    983
                        .LINE     983
                        LDI       _ACCCLO, SoftDDS.SerInpStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.SerInpStr SHRB 8
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        LDI       _ACCCLO, SoftDDS.SerInpStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.SerInpStr SHRB 8
                        LD        _ACCA, Z
                        PUSH      _ACCA
                        LDI       _ACCA, 001h
                        LDI       _ACCEHI, 000h
                        CALL      SYSTEM.StringDelete
                        .ENDBLOCK 984
SoftDDS._L0338:
SoftDDS._L0339:
                        .LINE     985
                        LDD       _ACCA, Y+000h
                        CPI       _ACCA, 00Dh
                        LDI       _ACCA, 0h
                        BRNE      SoftDDS._L0341
                        SER       _ACCA
SoftDDS._L0341:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0344
                        BRNE      SoftDDS._L0344
                        .BRANCH   20,SoftDDS._L0342
                        JMP       SoftDDS._L0342
SoftDDS._L0344:
                        .BLOCK    985
                        .LINE     987
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  1
                        .FRAME  0
                        .BRANCH   17,SoftDDS.PARSESUBCH
                        CALL      SoftDDS.PARSESUBCH
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     989
                        LDI       _ACCCLO, SoftDDS.SerInpStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.SerInpStr SHRB 8
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        ADIW      _ACCCLO, 1
                        ST        -Y, _ACCCHI
                        ST        -Y, _ACCCLO
                        LDI       _ACCA, 03Fh
                        ST        -Y, _ACCA
                        LDI       _ACCA, 0FEH ROLB _DEVICE
                        AND       Flags, _ACCA
                        LDI       _ACCA, 0FEH ROLB _EEPROM
                        AND       Flags, _ACCA
                        .FRAME  3
                        LDI       _ACCA, 03Fh
                        PUSH      _ACCA
                        LDD       _ACCA, Y+000h
                        POP       _ACCB
                        SUB       _ACCB, _ACCA
                        MOV       _ACCA, _ACCB
                        POP       _ACCCHI
                        POP       _ACCCLO
                        ST        Z, _ACCA
                        ADIW      _FRAMEPTR, 3
                        .FRAME  0
                        .ENDBLOCK 990
SoftDDS._L0342:
SoftDDS._L0343:
                        .ENDBLOCK 991
                        .LINE     991
                        .BRANCH   20,SoftDDS._L0328
                        JMP       SoftDDS._L0328
SoftDDS._L0329:
                        .LINE     992
                        .BRANCH   17,SoftDDS.CHORES
                        CALL      SoftDDS.CHORES
                        .ENDBLOCK 993
SoftDDS.CheckSer_X:
                        .LINE     993
                        .BRANCH   19
                        RET
                        .ENDFUNC  993

                        .FUNC     CheckDelay, 003E3h, 00020h
SoftDDS.CheckDelay:
                        SBIW      _FRAMEPTR, 1
                        .BLOCK    997
                        .LINE     998
                        MOVW      _ACCCLO, _FRAMEPTR
                        ST        -Y, _ACCCHI
                        ST        -Y, _ACCCLO
                        .FRAME  2
                        LDI       _ACCA, 000h
                        ST        Z, _ACCA
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        LDD       _ACCA, Y+003h
                        POP       _ACCCHI
                        POP       _ACCCLO
                        ST        -Y, _ACCA
                        .FRAME  3
                        LD        _ACCA, Z
SoftDDS._L0347:
                        LDD       _ACCB, Y+000h
                        CP        _ACCB, _ACCA
                        LDI       _ACCA, 0FFh
                        BRLO      SoftDDS._L0348
                        CLR       _ACCA
SoftDDS._L0348:
                        TST       _ACCA
                        .BRANCH   3,SoftDDS._L0349
                        BREQ      SoftDDS._L0349
                        .BRANCH   20,SoftDDS._L0346
                        JMP       SoftDDS._L0346
SoftDDS._L0349:
                        .BLOCK    999
                        .LINE     999
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        .BRANCH   17,SoftDDS.CHECKSER
                        CALL      SoftDDS.CHECKSER
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     1000
                        LDI       _ACCA, 00001h SHRB 8
                        LDI       _ACCB, 00001h AND 0FFh
                        .FRAME  3
                        CALL      SYSTEM.MDELAY
                        .ENDBLOCK 1001
SoftDDS._L0345:
                        .LINE     1001
                        LDD       _ACCCLO, Y+001h
                        LDD       _ACCCHI, Y+002h
                        LD        _ACCA, Z
                        INC       _ACCA
                        ST        Z, _ACCA
                        TST       _ACCA
                        .BRANCH   3,SoftDDS._L0346
                        BREQ      SoftDDS._L0346
                        .BRANCH   20,SoftDDS._L0347
                        JMP       SoftDDS._L0347
SoftDDS._L0346:
                        ADIW      _FRAMEPTR, 3
                        .FRAME  0
                        .ENDBLOCK 1002
SoftDDS.CheckDelay_X:
                        .LINE     1002
                        .BRANCH   19
                        RET
                        .ENDFUNC  1002

                        .FUNC     initall, 003EEh, 00020h
SoftDDS.initall:
                        .BLOCK    1008
                        .LINE     1009
                        LDI       _ACCA, 01Fh
                        OUT       DDRB, _ACCA
                        .LINE     1010
                        LDI       _ACCA, 017h
                        OUT       PORTB, _ACCA
                        .LINE     1011
                        LDI       _ACCA, 0FCh
                        OUT       DDRC, _ACCA
                        .LINE     1012
                        LDI       _ACCA, 0FFh
                        OUT       PORTC, _ACCA
                        .LINE     1013
                        LDI       _ACCA, 00Ch
                        OUT       DDRD, _ACCA
                        .LINE     1014
                        LDI       _ACCA, 0FCh
                        OUT       PORTD, _ACCA
                        .LINE     1018
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        .BRANCH   17,SoftDDS.PATCHCOPYFROMEE
                        CALL      SoftDDS.PATCHCOPYFROMEE
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     1020
                        LDI       _ACCA, 001h
                        .FRAME  0
                        CALL      SYSTEM.UDELAY
                        .LINE     1021
                        IN        _ACCA, PinD
                        COM       _ACCA
                        LDI       _ACCALO, 005h
                        CALL      SYSTEM.SHR8_R
                        STS       SOFTDDS.SLAVECH, _ACCA
                        .LINE     1022
                        CBI       00032h, 002h
                        .LINE     1025
                        LDI       _ACCA, 000h
                        .FRAME  0
                        CALL       SYSTEM.LCDSETUP_M
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0352
                        BRNE      SoftDDS._L0352
                        .BRANCH   20,SoftDDS._L0350
                        JMP       SoftDDS._L0350
SoftDDS._L0352:
                        .BLOCK    1025
                        .LINE     1026
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  1
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  2
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  3
                        .FRAME  0
                        CALL      SYSTEM.LCDCURSOR_M
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     1027
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  1
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  2
                        LDI       _ACCA, 001h
                        ST        -Y, _ACCA
                        .FRAME  3
                        LDI       _ACCA, 003h
                        ST        -Y, _ACCA
                        .FRAME  4
                        LDI       _ACCA, 007h
                        ST        -Y, _ACCA
                        .FRAME  5
                        LDI       _ACCA, 00Fh
                        ST        -Y, _ACCA
                        .FRAME  6
                        LDI       _ACCA, 007h
                        ST        -Y, _ACCA
                        .FRAME  7
                        LDI       _ACCA, 003h
                        ST        -Y, _ACCA
                        .FRAME  8
                        LDI       _ACCA, 001h
                        ST        -Y, _ACCA
                        .FRAME  9
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  10
                        .FRAME  0
                        CALL      SYSTEM.LCDCHARSET_M
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     1028
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  1
                        LDI       _ACCA, 001h
                        ST        -Y, _ACCA
                        .FRAME  2
                        LDI       _ACCA, 001h
                        ST        -Y, _ACCA
                        .FRAME  3
                        LDI       _ACCA, 003h
                        ST        -Y, _ACCA
                        .FRAME  4
                        LDI       _ACCA, 005h
                        ST        -Y, _ACCA
                        .FRAME  5
                        LDI       _ACCA, 009h
                        ST        -Y, _ACCA
                        .FRAME  6
                        LDI       _ACCA, 005h
                        ST        -Y, _ACCA
                        .FRAME  7
                        LDI       _ACCA, 003h
                        ST        -Y, _ACCA
                        .FRAME  8
                        LDI       _ACCA, 001h
                        ST        -Y, _ACCA
                        .FRAME  9
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  10
                        .FRAME  0
                        CALL      SYSTEM.LCDCHARSET_M
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     1029
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  1
                        LDI       _ACCA, 002h
                        ST        -Y, _ACCA
                        .FRAME  2
                        LDI       _ACCA, 001h
                        ST        -Y, _ACCA
                        .FRAME  3
                        LDI       _ACCA, 002h
                        ST        -Y, _ACCA
                        .FRAME  4
                        LDI       _ACCA, 005h
                        ST        -Y, _ACCA
                        .FRAME  5
                        LDI       _ACCA, 00Ah
                        ST        -Y, _ACCA
                        .FRAME  6
                        LDI       _ACCA, 005h
                        ST        -Y, _ACCA
                        .FRAME  7
                        LDI       _ACCA, 002h
                        ST        -Y, _ACCA
                        .FRAME  8
                        LDI       _ACCA, 001h
                        ST        -Y, _ACCA
                        .FRAME  9
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  10
                        .FRAME  0
                        CALL      SYSTEM.LCDCHARSET_M
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     1031
                        LDI       _ACCA, 0FFh
                        STS       SOFTDDS.LCDPRESENT, _ACCA
                        .LINE     1032
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 1 SHLB _DEVICE
                        OR        Flags, _ACCA
                        LDI       _ACCB, SYSTEM.lcdout_m SHRB 1
                        LDI       _ACCA, SYSTEM.lcdout_m SHRB 9
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  2
                        LDI       _ACCCLO, SoftDDS.Vers3Str AND 0FFh
                        LDI       _ACCCHI, SoftDDS.Vers3Str SHRB 8
                        LPM       _ACCBHI, Z+
                        TST       _ACCBHI
                        BREQ      SoftDDS._L0353
                        CALL      SYSTEM.StrConst2Str
SoftDDS._L0353:
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .FRAME  0
                        .LINE     1033
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  1
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  2
                        LDI       _ACCA, 001h
                        ST        -Y, _ACCA
                        .FRAME  3
                        .FRAME  0
                        CALL      SYSTEM.LCDXY_M
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     1034
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 1 SHLB _DEVICE
                        OR        Flags, _ACCA
                        LDI       _ACCB, SYSTEM.lcdout_m SHRB 1
                        LDI       _ACCA, SYSTEM.lcdout_m SHRB 9
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  2
                        LDI       _ACCCLO, SoftDDS.AdrStr AND 0FFh
                        LDI       _ACCCHI, SoftDDS.AdrStr SHRB 8
                        LPM       _ACCBHI, Z+
                        TST       _ACCBHI
                        BREQ      SoftDDS._L0354
                        CALL      SYSTEM.StrConst2Str
SoftDDS._L0354:
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .FRAME  0
                        .LINE     1035
                        LDS       _ACCA, SoftDDS.SlaveCh
                        SUBI      _ACCA, -030h AND 0FFh
                        .FRAME  0
                        CALL      SYSTEM.LCDOUT_M
                        .ENDBLOCK 1036
SoftDDS._L0350:
SoftDDS._L0351:
                        .LINE     1039
                        LDI       _ACCA, 007D0h SHRB 8
                        LDI       _ACCB, 007D0h AND 0FFh
                        .FRAME  0
                        CALL      SYSTEM.MDELAY
                        .LINE     1040
                        LDS       _ACCA, SoftDDS.SlaveCh
                        CPI       _ACCA, 000h
                        LDI       _ACCA, 0h
                        BREQ      SoftDDS._L0355
                        BRLO      SoftDDS._L0355
                        SER       _ACCA
SoftDDS._L0355:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0358
                        BRNE      SoftDDS._L0358
                        .BRANCH   20,SoftDDS._L0356
                        JMP       SoftDDS._L0356
SoftDDS._L0358:
                        .BLOCK    1040
                        .LINE     1041
                        LDI       _ACCCLO, SoftDDS.i AND 0FFh
                        LDI       _ACCCHI, SoftDDS.i SHRB 8
                        ST        -Y, _ACCCHI
                        ST        -Y, _ACCCLO
                        .FRAME  2
                        LDI       _ACCA, 000h
                        ST        Z, _ACCA
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        LDS       _ACCA, SoftDDS.SlaveCh
                        SUBI      _ACCA, 001h AND 0FFh
                        POP       _ACCCHI
                        POP       _ACCCLO
                        ST        -Y, _ACCA
                        .FRAME  3
                        LD        _ACCA, Z
SoftDDS._L0361:
                        LDD       _ACCB, Y+000h
                        CP        _ACCB, _ACCA
                        LDI       _ACCA, 0FFh
                        BRLO      SoftDDS._L0362
                        CLR       _ACCA
SoftDDS._L0362:
                        TST       _ACCA
                        .BRANCH   3,SoftDDS._L0363
                        BREQ      SoftDDS._L0363
                        .BRANCH   20,SoftDDS._L0360
                        JMP       SoftDDS._L0360
SoftDDS._L0363:
                        .BLOCK    1042
                        .LINE     1042
                        CLR       _ACCA
                        SBIC      032h, 002h
                        SER       _ACCA
                        COM       _ACCA
                        CLT
                        TST       _ACCA
                        BREQ      SoftDDS._L0364
                        SET
SoftDDS._L0364:
                        IN        _ACCA, 00032h
                        BLD       _ACCA, 002h
                        OUT       00032h, _ACCA
                        .LINE     1043
                        LDI       _ACCA, 00096h SHRB 8
                        LDI       _ACCB, 00096h AND 0FFh
                        .FRAME  3
                        CALL      SYSTEM.MDELAY
                        .LINE     1044
                        CLR       _ACCA
                        SBIC      032h, 002h
                        SER       _ACCA
                        COM       _ACCA
                        CLT
                        TST       _ACCA
                        BREQ      SoftDDS._L0365
                        SET
SoftDDS._L0365:
                        IN        _ACCA, 00032h
                        BLD       _ACCA, 002h
                        OUT       00032h, _ACCA
                        .LINE     1045
                        LDI       _ACCA, 00096h SHRB 8
                        LDI       _ACCB, 00096h AND 0FFh
                        .FRAME  3
                        CALL      SYSTEM.MDELAY
                        .ENDBLOCK 1046
SoftDDS._L0359:
                        .LINE     1046
                        LDD       _ACCCLO, Y+001h
                        LDD       _ACCCHI, Y+002h
                        LD        _ACCA, Z
                        INC       _ACCA
                        ST        Z, _ACCA
                        TST       _ACCA
                        .BRANCH   3,SoftDDS._L0360
                        BREQ      SoftDDS._L0360
                        .BRANCH   20,SoftDDS._L0361
                        JMP       SoftDDS._L0361
SoftDDS._L0360:
                        ADIW      _FRAMEPTR, 3
                        .FRAME  0
                        .ENDBLOCK 1047
SoftDDS._L0356:
SoftDDS._L0357:
                        .LINE     1048
                        SBI       00032h, 002h
                        .LINE     1050
                        LDI       _ACCA, 000h
                        STS       SOFTDDS.STATUS, _ACCA
                        .LINE     1051
                        LDI       _ACCA, 1 SHLB IntFlag
                        OR        Flags, _ACCA
                        SEI
                        .LINE     1053
                        LDI       _ACCA, 001h
                        STS       SOFTDDS.BURSTCOUNT, _ACCA
                        .LINE     1054
                        LDI       _ACCA, 001h
                        STS       SoftDDS.BurstTimer, _ACCA
                        .LINE     1055
SoftDDS._L0366:
                        CALL       SYSTEM.SERSTAT
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0368
                        BRNE      SoftDDS._L0368
                        .BRANCH   20,SoftDDS._L0367
                        JMP       SoftDDS._L0367
SoftDDS._L0368:
                        .BLOCK    1055
                        .LINE     1056
                        CALL       SYSTEM.SERINP
                        MOV       SOFTDDS.I, _ACCA
                        .ENDBLOCK 1057
                        .LINE     1057
                        .BRANCH   20,SoftDDS._L0366
                        JMP       SoftDDS._L0366
SoftDDS._L0367:
                        .LINE     1059
                        CALL      SYSTEM.INCRCOUNT4START
                        .LINE     1060
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  1
                        LDI       _ACCB, 000000000h AND 0FFh
                        LDI       _ACCA, 000000000h SHRB 8
                        LDI       _ACCALO, 000000000h SHRB 16
                        LDI       _ACCAHI, 000000000h SHRB 24
                        ST        -Y, _ACCAHI
                        ST        -Y, _ACCALO
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  5
                        .FRAME  0
                        CALL      SYSTEM.SETINCRVAL4
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     1061
                        LDI       _ACCA, 000h
                        .FRAME  0
                        CALL       SYSTEM.GETINCRVAL4
                        STS       SOFTDDS.INCRVALUE, _ACCB
                        STS       SOFTDDS.INCRVALUE+1, _ACCA
                        STS       SOFTDDS.INCRVALUE+2, _ACCALO
                        STS       SOFTDDS.INCRVALUE+3, _ACCAHI
                        .LINE     1062
                        LDS       _ACCB, SoftDDS.IncrValue
                        LDS       _ACCA, SoftDDS.IncrValue+1
                        LDS       _ACCALO, SoftDDS.IncrValue+2
                        LDS       _ACCAHI, SoftDDS.IncrValue+3
                        STS       SOFTDDS.OLDINCRVALUE, _ACCB
                        STS       SOFTDDS.OLDINCRVALUE+1, _ACCA
                        STS       SOFTDDS.OLDINCRVALUE+2, _ACCALO
                        STS       SOFTDDS.OLDINCRVALUE+3, _ACCAHI
                        .LINE     1063
                        LDI       _ACCA, 00000h SHRB 8
                        LDI       _ACCB, 00000h AND 0FFh
                        STS       SOFTDDS.INCRDIFF, _ACCB
                        STS       SOFTDDS.INCRDIFF+1, _ACCA
                        .LINE     1064
                        LDI       _ACCA, 000h
                        STS       SOFTDDS.INCRFINE, _ACCA
                        .LINE     1065
                        LDI       _ACCA, 011h
                        STS       SOFTDDS.TERZNUM, _ACCA
                        .LINE     1067
                        LDI       _ACCA, 001h
                        STS       SOFTDDS.MODIFY, _ACCA
                        .LINE     1068
                        LDS       _ACCB, SoftDDS.Level
                        LDS       _ACCA, SoftDDS.Level+1
                        LDS       _ACCALO, SoftDDS.Level+2
                        LDS       _ACCAHI, SoftDDS.Level+3
                        LDI       _ACCDLO, 080h
                        EOR       _ACCAHI, _ACCDLO
                        CPI       _ACCAHI, 080h
                        BRNE      SoftDDS._L0369
                        CPI       _ACCALO, 000h
                        BRNE      SoftDDS._L0369
                        CPI       _ACCA, 003h
                        BRNE      SoftDDS._L0369
                        CPI       _ACCB, 0E8h
SoftDDS._L0369:
                        LDI       _ACCA, 0h
                        BREQ      SoftDDS._L0370
                        BRLO      SoftDDS._L0370
                        SER       _ACCA
SoftDDS._L0370:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0373
                        BRNE      SoftDDS._L0373
                        .BRANCH   20,SoftDDS._L0371
                        JMP       SoftDDS._L0371
SoftDDS._L0373:
                        .BLOCK    1069
                        .LINE     1069
                        LDI       _ACCA, 0FFh
                        STS       SOFTDDS.LEVELRANGE, _ACCA
                        .ENDBLOCK 1070
SoftDDS._L0371:
SoftDDS._L0372:
                        .LINE     1071
                        LDI       _ACCA, 0FFh
                        STS       SOFTDDS.FIRSTTURN, _ACCA
                        .LINE     1072
                        .BRANCH   17,SoftDDS.WRITECHPREFIX
                        CALL      SoftDDS.WRITECHPREFIX
                        .LINE     1073
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 1 SHLB _DEVICE
                        OR        Flags, _ACCA
                        LDI       _ACCB, SYSTEM.serout SHRB 1
                        LDI       _ACCA, SYSTEM.serout SHRB 9
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  2
                        LDI       _ACCCLO, SoftDDS.Vers1Str AND 0FFh
                        LDI       _ACCCHI, SoftDDS.Vers1Str SHRB 8
                        LPM       _ACCBHI, Z+
                        TST       _ACCBHI
                        BREQ      SoftDDS._L0374
                        CALL      SYSTEM.StrConst2Str
SoftDDS._L0374:
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .FRAME  0
                        .LINE     1074
                        .BRANCH   17,SoftDDS.SERCRLF
                        CALL      SoftDDS.SERCRLF
                        .LINE     1075
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        .BRANCH   17,SoftDDS.SETLEVELDDS
                        CALL      SoftDDS.SETLEVELDDS
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .ENDBLOCK 1076
SoftDDS.initall_X:
                        .LINE     1076
                        .BRANCH   19
                        RET
                        .ENDFUNC  1076



                        ; ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
                        ; Program body
                        ; ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

                        .FUNC     $_Main, 00438h, 00020h
                        .ENTRYMAIN $
SoftDDS.$_Main:

                        .BLOCK    1080
                        .LINE     1081
                        .BRANCH   17,SoftDDS.INITALL
                        CALL      SoftDDS.INITALL
SoftDDS._L0375:
                        .BLOCK    1083
                        .LINE     1084
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        .BRANCH   17,SoftDDS.CHECKSER
                        CALL      SoftDDS.CHECKSER
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     1085
                        CLR       _ACCA
                        MOV       _ACCB, _SYSTFLAGS
                        ANDI      _ACCB, 001h
                        BRNE      SoftDDS._L0377
                        COM       _ACCA
SoftDDS._L0377:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0380
                        BRNE      SoftDDS._L0380
                        .BRANCH   20,SoftDDS._L0378
                        JMP       SoftDDS._L0378
SoftDDS._L0380:
                        .BLOCK    1085
                        .LINE     1086
                        SBI       00032h, 002h
                        .ENDBLOCK 1087
SoftDDS._L0378:
SoftDDS._L0379:
                        .LINE     1089
                        LDS       _ACCA, SoftDDS.LCDpresent
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0383
                        BRNE      SoftDDS._L0383
                        .BRANCH   20,SoftDDS._L0381
                        JMP       SoftDDS._L0381
SoftDDS._L0383:
                        .BLOCK    1089
                        .LINE     1090
                        LDI       _ACCA, 000h
                        .FRAME  0
                        CALL       SYSTEM.GETINCRVAL4
                        STS       SOFTDDS.INCRVALUE, _ACCB
                        STS       SOFTDDS.INCRVALUE+1, _ACCA
                        STS       SOFTDDS.INCRVALUE+2, _ACCALO
                        STS       SOFTDDS.INCRVALUE+3, _ACCAHI
                        .LINE     1092
                        LDS       _ACCB, SoftDDS.IncrValue
                        LDS       _ACCA, SoftDDS.IncrValue+1
                        LDS       _ACCALO, SoftDDS.IncrValue+2
                        LDS       _ACCAHI, SoftDDS.IncrValue+3
                        PUSH      _ACCB
                        PUSH      _ACCA
                        PUSH      _ACCALO
                        PUSH      _ACCAHI
                        LDS       _ACCB, SoftDDS.OldIncrValue
                        LDS       _ACCA, SoftDDS.OldIncrValue+1
                        LDS       _ACCALO, SoftDDS.OldIncrValue+2
                        LDS       _ACCAHI, SoftDDS.OldIncrValue+3
                        MOVW      _ACCBLO, _ACCB
                        MOVW      _ACCCLO, _ACCALO
                        POP       _ACCAHI
                        POP       _ACCALO
                        POP       _ACCA
                        POP       _ACCB
                        LDI       _ACCDLO, 080h
                        EOR       _ACCCHI, _ACCDLO
                        EOR       _ACCAHI, _ACCDLO
                        CP        _ACCAHI, _ACCCHI
                        BRNE      SoftDDS._L0384
                        CP        _ACCALO, _ACCCLO
                        BRNE      SoftDDS._L0384
                        CP        _ACCA, _ACCBHI
                        BRNE      SoftDDS._L0384
                        CP        _ACCB, _ACCBLO
SoftDDS._L0384:
                        LDI       _ACCA, 0h
                        BREQ      SoftDDS._L0385
                        SER       _ACCA
SoftDDS._L0385:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0388
                        BRNE      SoftDDS._L0388
                        .BRANCH   20,SoftDDS._L0386
                        JMP       SoftDDS._L0386
SoftDDS._L0388:
                        .BLOCK    1092
                        .LINE     1093
                        LDI       _ACCA, 001F4h SHRB 8
                        LDI       _ACCB, 001F4h AND 0FFh
                        LDI       _ACCCLO, SoftDDS.ActivityTimer AND 0FFh
                        LDI       _ACCCHI, SoftDDS.ActivityTimer SHRB 8
                        LDI       _ACCBHI, 001h
                        CALL      SYSTEM.SetSysTimer
                        .LINE     1094
                        CBI       00032h, 002h
                        .LINE     1095
                        LDS       _ACCB, SoftDDS.IncrDiff
                        LDS       _ACCA, SoftDDS.IncrDiff+1
                        PUSH      _ACCB
                        PUSH      _ACCA
                        LDS       _ACCB, SoftDDS.IncrValue
                        LDS       _ACCA, SoftDDS.IncrValue+1
                        LDS       _ACCALO, SoftDDS.IncrValue+2
                        LDS       _ACCAHI, SoftDDS.IncrValue+3
                        PUSH      _ACCB
                        PUSH      _ACCA
                        PUSH      _ACCALO
                        PUSH      _ACCAHI
                        LDS       _ACCB, SoftDDS.OldIncrValue
                        LDS       _ACCA, SoftDDS.OldIncrValue+1
                        LDS       _ACCALO, SoftDDS.OldIncrValue+2
                        LDS       _ACCAHI, SoftDDS.OldIncrValue+3
                        SUBI      _ACCB, 01h
                        SBCI      _ACCA, 00h
                        SBCI      _ACCALO, 00h
                        SBCI      _ACCAHI, 00h
                        COM       _ACCALO
                        COM       _ACCAHI
                        COM       _ACCA
                        COM       _ACCB
                        POP       _ACCCHI
                        POP       _ACCCLO
                        POP       _ACCBHI
                        POP       _ACCBLO
                        ADD       _ACCB, _ACCBLO
                        ADC       _ACCA, _ACCBHI
                        ADC       _ACCALO, _ACCCLO
                        ADC       _ACCAHI, _ACCCHI
                        POP       _ACCAHI
                        POP       _ACCALO
                        ADD       _ACCB, _ACCALO
                        ADC       _ACCA, _ACCAHI
                        STS       SOFTDDS.INCRDIFF, _ACCB
                        STS       SOFTDDS.INCRDIFF+1, _ACCA
                        .LINE     1096
                        LDS       _ACCB, SoftDDS.IncrValue
                        LDS       _ACCA, SoftDDS.IncrValue+1
                        LDS       _ACCALO, SoftDDS.IncrValue+2
                        LDS       _ACCAHI, SoftDDS.IncrValue+3
                        STS       SOFTDDS.OLDINCRVALUE, _ACCB
                        STS       SOFTDDS.OLDINCRVALUE+1, _ACCA
                        STS       SOFTDDS.OLDINCRVALUE+2, _ACCALO
                        STS       SOFTDDS.OLDINCRVALUE+3, _ACCAHI
                        .LINE     1097
                        LDI       _ACCA, 0C8h
                        STS       SoftDDS.IncrTimer, _ACCA
                        .LINE     1099
                        LDS       _ACCB, SoftDDS.IncrDiff
                        LDS       _ACCA, SoftDDS.IncrDiff+1
                        TST       _ACCA
                        BRPL      SoftDDS._L0389
                        NEG       _ACCB
                        BRNE      SoftDDS._L0390
                        DEC       _ACCA
SoftDDS._L0390:
                        COM       _ACCA
SoftDDS._L0389:
                        LDI       _ACCBLO, 080h
                        EOR       _ACCA, _ACCBLO
                        CPI       _ACCA, 080h
                        BRNE      SoftDDS._L0391
                        CPI       _ACCB, 002h
SoftDDS._L0391:
                        LDI       _ACCA, 0
                        BRLO      SoftDDS._L0392
                        LDI       _ACCA, 0FFh
SoftDDS._L0392:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0395
                        BRNE      SoftDDS._L0395
                        .BRANCH   20,SoftDDS._L0393
                        JMP       SoftDDS._L0393
SoftDDS._L0395:
                        .BLOCK    1100
                        .LINE     1100
                        LDS       _ACCB, SoftDDS.IncrDiff
                        LDS       _ACCA, SoftDDS.IncrDiff+1
                        TST       _ACCA
                        BRPL      SoftDDS._L0396
                        NEG       _ACCB
                        BRNE      SoftDDS._L0397
                        DEC       _ACCA
SoftDDS._L0397:
                        COM       _ACCA
SoftDDS._L0396:
                        LDI       _ACCBLO, 080h
                        EOR       _ACCA, _ACCBLO
                        CPI       _ACCA, 080h
                        BRNE      SoftDDS._L0398
                        CPI       _ACCB, 003h
SoftDDS._L0398:
                        LDI       _ACCA, 0h
                        BREQ      SoftDDS._L0399
                        BRLO      SoftDDS._L0399
                        SER       _ACCA
SoftDDS._L0399:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0402
                        BRNE      SoftDDS._L0402
                        .BRANCH   20,SoftDDS._L0400
                        JMP       SoftDDS._L0400
SoftDDS._L0402:
                        .BLOCK    1101
                        .LINE     1101
                        LDS       _ACCB, SoftDDS.IncrDiff
                        LDS       _ACCA, SoftDDS.IncrDiff+1
                        LDI       _ACCBLO, 00019h AND 0FFh
                        LDI       _ACCBHI, 00019h SHRB 8
                        SET
                        BLD       Flags, _SIGN
                        CALL      SYSTEM.MUL16
                        STS       SOFTDDS.INCRACCINT10, _ACCB
                        STS       SOFTDDS.INCRACCINT10+1, _ACCA
                        .LINE     1102
                        LDS       _ACCB, SoftDDS.IncrDiff
                        LDS       _ACCA, SoftDDS.IncrDiff+1
                        PUSH      _ACCB
                        PUSH      _ACCA
                        POP       _ACCAHI
                        POP       _ACCALO
                        ADD       _ACCB, _ACCALO
                        ADC       _ACCA, _ACCAHI
                        STS       SOFTDDS.INCRDIFF, _ACCB
                        STS       SOFTDDS.INCRDIFF+1, _ACCA
                        .ENDBLOCK 1103
                        .BRANCH   20,SoftDDS._L0401
                        JMP       SoftDDS._L0401
SoftDDS._L0400:
                        .BLOCK    1103
                        .LINE     1104
                        LDS       _ACCB, SoftDDS.IncrDiff
                        LDS       _ACCA, SoftDDS.IncrDiff+1
                        LDI       _ACCBLO, 00005h AND 0FFh
                        LDI       _ACCBHI, 00005h SHRB 8
                        SET
                        BLD       Flags, _SIGN
                        CALL      SYSTEM.MUL16
                        STS       SOFTDDS.INCRACCINT10, _ACCB
                        STS       SOFTDDS.INCRACCINT10+1, _ACCA
                        .LINE     1105
                        LDS       _ACCB, SoftDDS.IncrDiff
                        LDS       _ACCA, SoftDDS.IncrDiff+1
                        TST       _ACCA
                        BRPL      SoftDDS._L0403
                        SUBI      _ACCB, -00001h AND 0FFh
                        SBCI      _ACCA, -00001h SHRB 8
SoftDDS._L0403:
                        ASR       _ACCA
                        ROR       _ACCB
                        STS       SOFTDDS.INCRDIFF, _ACCB
                        STS       SOFTDDS.INCRDIFF+1, _ACCA
                        .ENDBLOCK 1106
SoftDDS._L0401:
                        .LINE     1107
                        LDS       _ACCB, SoftDDS.IncrDiff
                        LDS       _ACCA, SoftDDS.IncrDiff+1
                        SBRS      _ACCA, 7
                        RJMP      SoftDDS._L0404
                        LDI       _ACCAHI, 0FFh
                        LDI       _ACCALO, 0FFh
                        RJMP      SoftDDS._L0405
SoftDDS._L0404:
                        CLR       _ACCAHI
                        CLR       _ACCALO
SoftDDS._L0405:
                        SET
                        BLD       Flags, _SIGN
                        CLT
                        BLD       Flags, _ERRFLAG
                        CALL      SYSTEM.LIntToFloat
                        STS       SOFTDDS.INCRACCFLOAT, _ACCB
                        STS       SOFTDDS.INCRACCFLOAT+1, _ACCA
                        STS       SOFTDDS.INCRACCFLOAT+2, _ACCALO
                        STS       SOFTDDS.INCRACCFLOAT+3, _ACCAHI
                        .LINE     1108
                        LDI       _ACCA, 003E8h SHRB 8
                        LDI       _ACCB, 003E8h AND 0FFh
                        LDI       _ACCCLO, SoftDDS.DisplayTimer AND 0FFh
                        LDI       _ACCCHI, SoftDDS.DisplayTimer SHRB 8
                        LDI       _ACCBHI, 002h
                        CALL      SYSTEM.SetSysTimer
                        .LINE     1109
                        LDS       _ACCA, SoftDDS.Modify
                        .LINE     1110
                        CPI       _ACCA, 1
                        .BRANCH   3,SoftDDS._L0409
                        BREQ      SoftDDS._L0409
                        .BRANCH   20,SoftDDS._L0408
                        JMP       SoftDDS._L0408
SoftDDS._L0409:
SoftDDS._L0407:
                        .BLOCK    1111
                        .LINE     1111
                        LDS       _ACCA, SoftDDS.IncrFine
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0412
                        BRNE      SoftDDS._L0412
                        .BRANCH   20,SoftDDS._L0410
                        JMP       SoftDDS._L0410
SoftDDS._L0412:
                        .BLOCK    1111
                        .LINE     1112
                        LDS       _ACCA, SoftDDS.FirstTurn
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0415
                        BRNE      SoftDDS._L0415
                        .BRANCH   20,SoftDDS._L0413
                        JMP       SoftDDS._L0413
SoftDDS._L0415:
                        .BLOCK    1112
                        .LINE     1113
                        LDS       _ACCB, SoftDDS.Frequenz
                        LDS       _ACCA, SoftDDS.Frequenz+1
                        LDS       _ACCALO, SoftDDS.Frequenz+2
                        LDS       _ACCAHI, SoftDDS.Frequenz+3
                        MOVW      _ACCDLO, _ACCB
                        MOVW      _ACCELO, _ACCALO
                        LDI       _ACCBLO, 00000000Ah AND 0FFh
                        LDI       _ACCBHI, 00000000Ah SHRB 8
                        LDI       _ACCCLO, 00000000Ah SHRB 16
                        LDI       _ACCCHI, 00000000Ah SHRB 24
                        SET
                        BLD       Flags, _SIGN
                        CALL      SYSTEM.DIV32_R
                        STS       SOFTDDS.FREQUENZ, _ACCB
                        STS       SOFTDDS.FREQUENZ+1, _ACCA
                        STS       SOFTDDS.FREQUENZ+2, _ACCALO
                        STS       SOFTDDS.FREQUENZ+3, _ACCAHI
                        .LINE     1114
                        LDS       _ACCB, SoftDDS.Frequenz
                        LDS       _ACCA, SoftDDS.Frequenz+1
                        LDS       _ACCALO, SoftDDS.Frequenz+2
                        LDS       _ACCAHI, SoftDDS.Frequenz+3
                        LDI       _ACCDLO, 00000000Ah AND 0FFh
                        LDI       _ACCDHI, 00000000Ah SHRB 8
                        LDI       _ACCELO, 00000000Ah SHRB 16
                        LDI       _ACCEHI, 00000000Ah SHRB 24
                        SET
                        BLD       Flags, _SIGN
                        CALL      SYSTEM.MUL32_R
                        STS       SOFTDDS.FREQUENZ, _ACCB
                        STS       SOFTDDS.FREQUENZ+1, _ACCA
                        STS       SOFTDDS.FREQUENZ+2, _ACCALO
                        STS       SOFTDDS.FREQUENZ+3, _ACCAHI
                        .LINE     1115
                        LDI       _ACCA, 000h
                        STS       SOFTDDS.FIRSTTURN, _ACCA
                        .ENDBLOCK 1116
SoftDDS._L0413:
SoftDDS._L0414:
                        .LINE     1117
                        LDS       _ACCB, SoftDDS.Frequenz
                        LDS       _ACCA, SoftDDS.Frequenz+1
                        LDS       _ACCALO, SoftDDS.Frequenz+2
                        LDS       _ACCAHI, SoftDDS.Frequenz+3
                        PUSH      _ACCB
                        PUSH      _ACCA
                        PUSH      _ACCALO
                        PUSH      _ACCAHI
                        LDS       _ACCB, SoftDDS.IncrAccInt10
                        LDS       _ACCA, SoftDDS.IncrAccInt10+1
                        SBRS      _ACCA, 7
                        RJMP      SoftDDS._L0416
                        LDI       _ACCAHI, 0FFh
                        LDI       _ACCALO, 0FFh
                        RJMP      SoftDDS._L0417
SoftDDS._L0416:
                        CLR       _ACCAHI
                        CLR       _ACCALO
SoftDDS._L0417:
                        POP       _ACCCHI
                        POP       _ACCCLO
                        POP       _ACCBHI
                        POP       _ACCBLO
                        ADD       _ACCB, _ACCBLO
                        ADC       _ACCA, _ACCBHI
                        ADC       _ACCALO, _ACCCLO
                        ADC       _ACCAHI, _ACCCHI
                        STS       SOFTDDS.FREQUENZ, _ACCB
                        STS       SOFTDDS.FREQUENZ+1, _ACCA
                        STS       SOFTDDS.FREQUENZ+2, _ACCALO
                        STS       SOFTDDS.FREQUENZ+3, _ACCAHI
                        .ENDBLOCK 1118
                        .BRANCH   20,SoftDDS._L0411
                        JMP       SoftDDS._L0411
SoftDDS._L0410:
                        .BLOCK    1118
                        .LINE     1119
                        LDS       _ACCA, SoftDDS.TerzNum
                        PUSH      _ACCA
                        LDS       _ACCB, SoftDDS.IncrDiff
                        LDS       _ACCA, SoftDDS.IncrDiff+1
                        MOV       _ACCA, _ACCB
                        POP       _ACCB
                        ADD       _ACCA, _ACCB
                        STS       SOFTDDS.TERZNUM, _ACCA
                        .LINE     1120
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        .BRANCH   17,SoftDDS.CHECKLIMITS
                        CALL       SoftDDS.CHECKLIMITS
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     1121
                        LDS       _ACCA, SoftDDS.TerzNum
                        LDI       _ACCCLO, SoftDDS.TerzArray AND 0FFh
                        LDI       _ACCCHI, SoftDDS.TerzArray SHRB 8
                        ANDI      _ACCA, 31
                        CLR       _ACCB
                        LSL       _ACCA
                        ROL       _ACCB
                        LSL       _ACCA
                        ROL       _ACCB
                        ADD       _ACCCLO, _ACCA
                        ADC       _ACCCHI, _ACCB
                        CALL      SYSTEM._ReadEEp32
                        STS       SOFTDDS.FREQUENZ, _ACCB
                        STS       SOFTDDS.FREQUENZ+1, _ACCA
                        STS       SOFTDDS.FREQUENZ+2, _ACCALO
                        STS       SOFTDDS.FREQUENZ+3, _ACCAHI
                        .ENDBLOCK 1122
SoftDDS._L0411:
                        .LINE     1123
                        LDI       _ACCA, 000h
                        STS       SOFTDDS.SUBCH, _ACCA
                        .LINE     1124
                        .BRANCH   17,SoftDDS.PARSEGETPARAM
                        CALL      SoftDDS.PARSEGETPARAM
                        .ENDBLOCK 1125
                        .BRANCH   20,SoftDDS._L0406
                        JMP       SoftDDS._L0406
SoftDDS._L0408:
                        .LINE     1126
                        CPI       _ACCA, 2
                        .BRANCH   3,SoftDDS._L0420
                        BREQ      SoftDDS._L0420
                        .BRANCH   20,SoftDDS._L0419
                        JMP       SoftDDS._L0419
SoftDDS._L0420:
SoftDDS._L0418:
                        .BLOCK    1127
                        .LINE     1127
                        LDS       _ACCA, SoftDDS.IncrFine
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0423
                        BRNE      SoftDDS._L0423
                        .BRANCH   20,SoftDDS._L0421
                        JMP       SoftDDS._L0421
SoftDDS._L0423:
                        .BLOCK    1127
                        .LINE     1128
                        LDS       _ACCA, SoftDDS.FirstTurn
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0426
                        BRNE      SoftDDS._L0426
                        .BRANCH   20,SoftDDS._L0424
                        JMP       SoftDDS._L0424
SoftDDS._L0426:
                        .BLOCK    1128
                        .LINE     1129
                        LDS       _ACCB, SoftDDS.Level
                        LDS       _ACCA, SoftDDS.Level+1
                        LDS       _ACCALO, SoftDDS.Level+2
                        LDS       _ACCAHI, SoftDDS.Level+3
                        MOVW      _ACCDLO, _ACCB
                        MOVW      _ACCELO, _ACCALO
                        LDI       _ACCBLO, 00000000Ah AND 0FFh
                        LDI       _ACCBHI, 00000000Ah SHRB 8
                        LDI       _ACCCLO, 00000000Ah SHRB 16
                        LDI       _ACCCHI, 00000000Ah SHRB 24
                        SET
                        BLD       Flags, _SIGN
                        CALL      SYSTEM.DIV32_R
                        STS       SOFTDDS.LEVEL, _ACCB
                        STS       SOFTDDS.LEVEL+1, _ACCA
                        STS       SOFTDDS.LEVEL+2, _ACCALO
                        STS       SOFTDDS.LEVEL+3, _ACCAHI
                        .LINE     1130
                        LDS       _ACCB, SoftDDS.Level
                        LDS       _ACCA, SoftDDS.Level+1
                        LDS       _ACCALO, SoftDDS.Level+2
                        LDS       _ACCAHI, SoftDDS.Level+3
                        LDI       _ACCDLO, 00000000Ah AND 0FFh
                        LDI       _ACCDHI, 00000000Ah SHRB 8
                        LDI       _ACCELO, 00000000Ah SHRB 16
                        LDI       _ACCEHI, 00000000Ah SHRB 24
                        SET
                        BLD       Flags, _SIGN
                        CALL      SYSTEM.MUL32_R
                        STS       SOFTDDS.LEVEL, _ACCB
                        STS       SOFTDDS.LEVEL+1, _ACCA
                        STS       SOFTDDS.LEVEL+2, _ACCALO
                        STS       SOFTDDS.LEVEL+3, _ACCAHI
                        .LINE     1131
                        LDI       _ACCA, 000h
                        STS       SOFTDDS.FIRSTTURN, _ACCA
                        .ENDBLOCK 1132
SoftDDS._L0424:
SoftDDS._L0425:
                        .LINE     1133
                        LDS       _ACCB, SoftDDS.Level
                        LDS       _ACCA, SoftDDS.Level+1
                        LDS       _ACCALO, SoftDDS.Level+2
                        LDS       _ACCAHI, SoftDDS.Level+3
                        PUSH      _ACCB
                        PUSH      _ACCA
                        PUSH      _ACCALO
                        PUSH      _ACCAHI
                        LDS       _ACCB, SoftDDS.IncrAccInt10
                        LDS       _ACCA, SoftDDS.IncrAccInt10+1
                        SBRS      _ACCA, 7
                        RJMP      SoftDDS._L0427
                        LDI       _ACCAHI, 0FFh
                        LDI       _ACCALO, 0FFh
                        RJMP      SoftDDS._L0428
SoftDDS._L0427:
                        CLR       _ACCAHI
                        CLR       _ACCALO
SoftDDS._L0428:
                        POP       _ACCCHI
                        POP       _ACCCLO
                        POP       _ACCBHI
                        POP       _ACCBLO
                        ADD       _ACCB, _ACCBLO
                        ADC       _ACCA, _ACCBHI
                        ADC       _ACCALO, _ACCCLO
                        ADC       _ACCAHI, _ACCCHI
                        STS       SOFTDDS.LEVEL, _ACCB
                        STS       SOFTDDS.LEVEL+1, _ACCA
                        STS       SOFTDDS.LEVEL+2, _ACCALO
                        STS       SOFTDDS.LEVEL+3, _ACCAHI
                        .LINE     1134
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        .BRANCH   17,SoftDDS.CHECKLIMITS
                        CALL       SoftDDS.CHECKLIMITS
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     1135
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDS       _ACCB, SoftDDS.Level
                        LDS       _ACCA, SoftDDS.Level+1
                        LDS       _ACCALO, SoftDDS.Level+2
                        LDS       _ACCAHI, SoftDDS.Level+3
                        ST        -Y, _ACCAHI
                        ST        -Y, _ACCALO
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  4
                        .FRAME  0
                        .BRANCH   17,SoftDDS.LEVEL2DB
                        CALL       SoftDDS.LEVEL2DB
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        STS       SOFTDDS.DB, _ACCB
                        STS       SOFTDDS.DB+1, _ACCA
                        STS       SOFTDDS.DB+2, _ACCALO
                        STS       SOFTDDS.DB+3, _ACCAHI
                        .ENDBLOCK 1136
                        .BRANCH   20,SoftDDS._L0422
                        JMP       SoftDDS._L0422
SoftDDS._L0421:
                        .BLOCK    1136
                        .LINE     1137
                        LDS       _ACCA, SoftDDS.FirstTurn
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0431
                        BRNE      SoftDDS._L0431
                        .BRANCH   20,SoftDDS._L0429
                        JMP       SoftDDS._L0429
SoftDDS._L0431:
                        .BLOCK    1137
                        .LINE     1138
                        LDS       _ACCB, SoftDDS.db
                        LDS       _ACCA, SoftDDS.db+1
                        LDS       _ACCALO, SoftDDS.db+2
                        LDS       _ACCAHI, SoftDDS.db+3
                        CLT
                        BLD       Flags, _ERRFLAG
                        CALL      SYSTEM.IntFloat
                        STS       SOFTDDS.DB, _ACCB
                        STS       SOFTDDS.DB+1, _ACCA
                        STS       SOFTDDS.DB+2, _ACCALO
                        STS       SOFTDDS.DB+3, _ACCAHI
                        .LINE     1139
                        LDI       _ACCA, 000h
                        STS       SOFTDDS.FIRSTTURN, _ACCA
                        .ENDBLOCK 1140
SoftDDS._L0429:
SoftDDS._L0430:
                        .LINE     1141
                        LDS       _ACCB, SoftDDS.dB
                        LDS       _ACCA, SoftDDS.dB+1
                        LDS       _ACCALO, SoftDDS.dB+2
                        LDS       _ACCAHI, SoftDDS.dB+3
                        PUSH      _ACCB
                        PUSH      _ACCA
                        PUSH      _ACCALO
                        PUSH      _ACCAHI
                        LDS       _ACCB, SoftDDS.IncrAccFloat
                        LDS       _ACCA, SoftDDS.IncrAccFloat+1
                        LDS       _ACCALO, SoftDDS.IncrAccFloat+2
                        LDS       _ACCAHI, SoftDDS.IncrAccFloat+3
                        CLT
                        BLD       Flags, _ERRFLAG
                        CALL      SYSTEM.AddFloat
                        STS       SOFTDDS.DB, _ACCB
                        STS       SOFTDDS.DB+1, _ACCA
                        STS       SOFTDDS.DB+2, _ACCALO
                        STS       SOFTDDS.DB+3, _ACCAHI
                        .LINE     1142
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDS       _ACCB, SoftDDS.db
                        LDS       _ACCA, SoftDDS.db+1
                        LDS       _ACCALO, SoftDDS.db+2
                        LDS       _ACCAHI, SoftDDS.db+3
                        ST        -Y, _ACCAHI
                        ST        -Y, _ACCALO
                        ST        -Y, _ACCA
                        ST        -Y, _ACCB
                        .FRAME  4
                        .FRAME  0
                        .BRANCH   17,SoftDDS.DB2LEVEL
                        CALL       SoftDDS.DB2LEVEL
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        STS       SOFTDDS.LEVEL, _ACCB
                        STS       SOFTDDS.LEVEL+1, _ACCA
                        STS       SOFTDDS.LEVEL+2, _ACCALO
                        STS       SOFTDDS.LEVEL+3, _ACCAHI
                        .ENDBLOCK 1143
SoftDDS._L0422:
                        .LINE     1144
                        LDI       _ACCA, 001h
                        STS       SOFTDDS.SUBCH, _ACCA
                        .LINE     1145
                        .BRANCH   17,SoftDDS.PARSEGETPARAM
                        CALL      SoftDDS.PARSEGETPARAM
                        .ENDBLOCK 1146
                        .BRANCH   20,SoftDDS._L0406
                        JMP       SoftDDS._L0406
SoftDDS._L0419:
                        .LINE     1147
                        CPI       _ACCA, 0
                        .BRANCH   3,SoftDDS._L0434
                        BREQ      SoftDDS._L0434
                        .BRANCH   20,SoftDDS._L0433
                        JMP       SoftDDS._L0433
SoftDDS._L0434:
SoftDDS._L0432:
                        .BLOCK    1148
                        .LINE     1148
                        LDS       _ACCA, SoftDDS.Wave
                        PUSH      _ACCA
                        LDS       _ACCB, SoftDDS.IncrDiff
                        LDS       _ACCA, SoftDDS.IncrDiff+1
                        MOV       _ACCA, _ACCB
                        POP       _ACCB
                        ADD       _ACCA, _ACCB
                        STS       SOFTDDS.WAVE, _ACCA
                        .LINE     1149
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        .BRANCH   17,SoftDDS.CHECKLIMITS
                        CALL       SoftDDS.CHECKLIMITS
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     1150
                        LDI       _ACCA, 003h
                        STS       SOFTDDS.SUBCH, _ACCA
                        .LINE     1151
                        .BRANCH   17,SoftDDS.PARSEGETPARAM
                        CALL      SoftDDS.PARSEGETPARAM
                        .ENDBLOCK 1152
                        .BRANCH   20,SoftDDS._L0406
                        JMP       SoftDDS._L0406
SoftDDS._L0433:
                        .LINE     1153
                        CPI       _ACCA, 3
                        .BRANCH   3,SoftDDS._L0437
                        BREQ      SoftDDS._L0437
                        .BRANCH   20,SoftDDS._L0436
                        JMP       SoftDDS._L0436
SoftDDS._L0437:
SoftDDS._L0435:
                        .BLOCK    1154
                        .LINE     1154
                        LDS       _ACCA, SoftDDS.BurstMode
                        PUSH      _ACCA
                        LDS       _ACCB, SoftDDS.IncrDiff
                        LDS       _ACCA, SoftDDS.IncrDiff+1
                        MOV       _ACCA, _ACCB
                        POP       _ACCB
                        ADD       _ACCA, _ACCB
                        STS       SOFTDDS.BURSTMODE, _ACCA
                        .LINE     1155
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        .BRANCH   17,SoftDDS.CHECKLIMITS
                        CALL       SoftDDS.CHECKLIMITS
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     1156
                        LDI       _ACCA, 004h
                        STS       SOFTDDS.SUBCH, _ACCA
                        .LINE     1157
                        .BRANCH   17,SoftDDS.PARSEGETPARAM
                        CALL      SoftDDS.PARSEGETPARAM
                        .ENDBLOCK 1158
                        .BRANCH   20,SoftDDS._L0406
                        JMP       SoftDDS._L0406
SoftDDS._L0436:
                        .LINE     1159
                        CPI       _ACCA, 5
                        .BRANCH   3,SoftDDS._L0440
                        BREQ      SoftDDS._L0440
                        .BRANCH   20,SoftDDS._L0439
                        JMP       SoftDDS._L0439
SoftDDS._L0440:
SoftDDS._L0438:
                        .BLOCK    1160
                        .LINE     1160
                        LDS       _ACCA, SoftDDS.IncrFine
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0443
                        BRNE      SoftDDS._L0443
                        .BRANCH   20,SoftDDS._L0441
                        JMP       SoftDDS._L0441
SoftDDS._L0443:
                        .BLOCK    1160
                        .LINE     1161
                        LDS       _ACCB, SoftDDS.Offset
                        LDS       _ACCA, SoftDDS.Offset+1
                        PUSH      _ACCB
                        PUSH      _ACCA
                        LDS       _ACCB, SoftDDS.IncrDiff
                        LDS       _ACCA, SoftDDS.IncrDiff+1
                        LDI       _ACCBLO, 00005h AND 0FFh
                        LDI       _ACCBHI, 00005h SHRB 8
                        SET
                        BLD       Flags, _SIGN
                        CALL      SYSTEM.MUL16
                        POP       _ACCAHI
                        POP       _ACCALO
                        ADD       _ACCB, _ACCALO
                        ADC       _ACCA, _ACCAHI
                        STS       SOFTDDS.OFFSET, _ACCB
                        STS       SOFTDDS.OFFSET+1, _ACCA
                        .ENDBLOCK 1162
                        .BRANCH   20,SoftDDS._L0442
                        JMP       SoftDDS._L0442
SoftDDS._L0441:
                        .BLOCK    1162
                        .LINE     1163
                        LDS       _ACCA, SoftDDS.FirstTurn
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0446
                        BRNE      SoftDDS._L0446
                        .BRANCH   20,SoftDDS._L0444
                        JMP       SoftDDS._L0444
SoftDDS._L0446:
                        .BLOCK    1163
                        .LINE     1164
                        LDS       _ACCB, SoftDDS.Offset
                        LDS       _ACCA, SoftDDS.Offset+1
                        MOVW      _ACCBLO, _ACCB
                        LDI       _ACCALO, 00064h AND 0FFh
                        LDI       _ACCAHI, 00064h SHRB 8
                        SET
                        BLD       Flags, _SIGN
                        CALL      SYSTEM.DIV16_R
                        STS       SOFTDDS.OFFSET, _ACCB
                        STS       SOFTDDS.OFFSET+1, _ACCA
                        .LINE     1165
                        LDS       _ACCB, SoftDDS.Offset
                        LDS       _ACCA, SoftDDS.Offset+1
                        LDI       _ACCBLO, 00064h AND 0FFh
                        LDI       _ACCBHI, 00064h SHRB 8
                        SET
                        BLD       Flags, _SIGN
                        CALL      SYSTEM.MUL16
                        STS       SOFTDDS.OFFSET, _ACCB
                        STS       SOFTDDS.OFFSET+1, _ACCA
                        .LINE     1166
                        LDI       _ACCA, 000h
                        STS       SOFTDDS.FIRSTTURN, _ACCA
                        .ENDBLOCK 1167
SoftDDS._L0444:
SoftDDS._L0445:
                        .LINE     1168
                        LDS       _ACCB, SoftDDS.Offset
                        LDS       _ACCA, SoftDDS.Offset+1
                        PUSH      _ACCB
                        PUSH      _ACCA
                        LDS       _ACCB, SoftDDS.IncrAccInt10
                        LDS       _ACCA, SoftDDS.IncrAccInt10+1
                        LDI       _ACCBLO, 0000Ah AND 0FFh
                        LDI       _ACCBHI, 0000Ah SHRB 8
                        SET
                        BLD       Flags, _SIGN
                        CALL      SYSTEM.MUL16
                        POP       _ACCAHI
                        POP       _ACCALO
                        ADD       _ACCB, _ACCALO
                        ADC       _ACCA, _ACCAHI
                        STS       SOFTDDS.OFFSET, _ACCB
                        STS       SOFTDDS.OFFSET+1, _ACCA
                        .ENDBLOCK 1169
SoftDDS._L0442:
                        .LINE     1170
                        LDI       _ACCA, 00Ah
                        STS       SOFTDDS.SUBCH, _ACCA
                        .LINE     1171
                        .BRANCH   17,SoftDDS.PARSEGETPARAM
                        CALL      SoftDDS.PARSEGETPARAM
                        .ENDBLOCK 1172
                        .BRANCH   20,SoftDDS._L0406
                        JMP       SoftDDS._L0406
SoftDDS._L0439:
SoftDDS._L0406:
                        .LINE     1174
                        LDI       _ACCA, 00000h SHRB 8
                        LDI       _ACCB, 00000h AND 0FFh
                        STS       SOFTDDS.INCRDIFF, _ACCB
                        STS       SOFTDDS.INCRDIFF+1, _ACCA
                        .LINE     1175
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        .BRANCH   17,SoftDDS.CHECKLIMITS
                        CALL       SoftDDS.CHECKLIMITS
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     1176
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        .BRANCH   17,SoftDDS.SOLLWERTEONLCD
                        CALL      SoftDDS.SOLLWERTEONLCD
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     1177
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        .BRANCH   17,SoftDDS.SETLEVELDDS
                        CALL      SoftDDS.SETLEVELDDS
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .ENDBLOCK 1178
SoftDDS._L0393:
SoftDDS._L0394:
                        .ENDBLOCK 1179
SoftDDS._L0386:
SoftDDS._L0387:
                        .LINE     1180
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 00Eh
                        ST        -Y, _ACCA
                        .FRAME  1
                        .FRAME  0
                        .BRANCH   17,SoftDDS.CHECKDELAY
                        CALL      SoftDDS.CHECKDELAY
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     1181
                        LDI       _ACCA, 000h
                        .FRAME  0
                        CALL       SYSTEM.LCDPORTINP_M
                        ORI       _ACCA, 0C7h
                        STS       SOFTDDS.BUTTONTEMP, _ACCA
                        .LINE     1182
                        LDS       _ACCA, SoftDDS.ButtonTemp
                        CPI       _ACCA, 0FFh
                        LDI       _ACCA, 0h
                        BREQ      SoftDDS._L0447
                        SER       _ACCA
SoftDDS._L0447:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0450
                        BRNE      SoftDDS._L0450
                        .BRANCH   20,SoftDDS._L0448
                        JMP       SoftDDS._L0448
SoftDDS._L0450:
                        .BLOCK    1182
                        .LINE     1183
                        LDS       _ACCB, 000FEh
                        CLR       _ACCA
                        SBRC      _ACCB, 003h
                        SER       _ACCA
                        COM       _ACCA
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0453
                        BRNE      SoftDDS._L0453
                        .BRANCH   20,SoftDDS._L0451
                        JMP       SoftDDS._L0451
SoftDDS._L0453:
                        .BLOCK    1183
                        .LINE     1184
                        LDS       _ACCA, SoftDDS.IncrFine
                        COM       _ACCA
                        STS       SOFTDDS.INCRFINE, _ACCA
                        .ENDBLOCK 1185
SoftDDS._L0451:
SoftDDS._L0452:
                        .LINE     1186
                        LDS       _ACCB, 000FEh
                        CLR       _ACCA
                        SBRC      _ACCB, 005h
                        SER       _ACCA
                        COM       _ACCA
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0456
                        BRNE      SoftDDS._L0456
                        .BRANCH   20,SoftDDS._L0454
                        JMP       SoftDDS._L0454
SoftDDS._L0456:
                        .BLOCK    1186
                        .LINE     1187
                        LDS       _ACCA, SoftDDS.Modify
                        INC       _ACCA
                        CPI       _ACCA, 6
                        BRCS      SoftDDS._L0457
                        CLR       _ACCA
SoftDDS._L0457:
                        STS       SoftDDS.Modify, _ACCA
                        .ENDBLOCK 1188
SoftDDS._L0454:
SoftDDS._L0455:
                        .LINE     1189
                        LDS       _ACCB, 000FEh
                        CLR       _ACCA
                        SBRC      _ACCB, 004h
                        SER       _ACCA
                        COM       _ACCA
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0460
                        BRNE      SoftDDS._L0460
                        .BRANCH   20,SoftDDS._L0458
                        JMP       SoftDDS._L0458
SoftDDS._L0460:
                        .BLOCK    1189
                        .LINE     1190
                        LDS       _ACCA, SoftDDS.Modify
                        DEC       _ACCA
                        BRPL      SoftDDS._L0461
                        LDI       _ACCA, 5
SoftDDS._L0461:
                        STS       SoftDDS.Modify, _ACCA
                        .ENDBLOCK 1191
SoftDDS._L0458:
SoftDDS._L0459:
                        .LINE     1192
                        LDI       _ACCA, 003E8h SHRB 8
                        LDI       _ACCB, 003E8h AND 0FFh
                        LDI       _ACCCLO, SoftDDS.DisplayTimer AND 0FFh
                        LDI       _ACCCHI, SoftDDS.DisplayTimer SHRB 8
                        LDI       _ACCBHI, 002h
                        CALL      SYSTEM.SetSysTimer
                        .LINE     1193
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        .BRANCH   17,SoftDDS.SOLLWERTEONLCD
                        CALL      SoftDDS.SOLLWERTEONLCD
                        POP       _FPTRHI
                        POP       _FRAMEPTR
SoftDDS._L0462:
                        .BLOCK    1194
                        .LINE     1195
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 014h
                        ST        -Y, _ACCA
                        .FRAME  1
                        .FRAME  0
                        .BRANCH   17,SoftDDS.CHECKDELAY
                        CALL      SoftDDS.CHECKDELAY
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .LINE     1196
                        LDI       _ACCA, 000h
                        .FRAME  0
                        CALL       SYSTEM.LCDPORTINP_M
                        ORI       _ACCA, 0C7h
                        STS       SOFTDDS.BUTTONTEMP, _ACCA
                        .ENDBLOCK 1197
                        .LINE     1197
SoftDDS._L0463:
                        LDS       _ACCA, SoftDDS.ButtonTemp
                        CPI       _ACCA, 0FFh
                        LDI       _ACCA, 0h
                        BRNE      SoftDDS._L0465
                        SER       _ACCA
SoftDDS._L0465:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0466
                        BRNE      SoftDDS._L0466
                        .BRANCH   20,SoftDDS._L0462
                        JMP       SoftDDS._L0462
SoftDDS._L0466:
SoftDDS._L0464:
                        .LINE     1198
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        .BRANCH   17,SoftDDS.SETLEVELDDS
                        CALL      SoftDDS.SETLEVELDDS
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .ENDBLOCK 1199
SoftDDS._L0448:
SoftDDS._L0449:
                        .ENDBLOCK 1200
SoftDDS._L0381:
SoftDDS._L0382:
                        .LINE     1201
                        SER       _ACCA
                        LDS       _ACCB, SoftDDS.IncrTimer
                        TST       _ACCB
                        BREQ      SoftDDS._L0467
                        COM       _ACCA
SoftDDS._L0467:
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0470
                        BRNE      SoftDDS._L0470
                        .BRANCH   20,SoftDDS._L0468
                        JMP       SoftDDS._L0468
SoftDDS._L0470:
                        .BLOCK    1201
                        .LINE     1202
                        LDI       _ACCA, 0C8h
                        STS       SoftDDS.IncrTimer, _ACCA
                        .LINE     1203
                        LDS       _ACCA, SoftDDS.FirstTurn
                        COM       _ACCA
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0473
                        BRNE      SoftDDS._L0473
                        .BRANCH   20,SoftDDS._L0471
                        JMP       SoftDDS._L0471
SoftDDS._L0473:
                        .BLOCK    1203
                        .LINE     1204
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCA, 000h
                        ST        -Y, _ACCA
                        .FRAME  1
                        LDS       _ACCA, SoftDDS.Status
                        SUBI      _ACCA, -040h AND 0FFh
                        ST        -Y, _ACCA
                        .FRAME  2
                        .FRAME  0
                        .BRANCH   17,SoftDDS.SERPROMPT
                        CALL      SoftDDS.SERPROMPT
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .ENDBLOCK 1205
SoftDDS._L0471:
SoftDDS._L0472:
                        .LINE     1206
                        LDI       _ACCA, 0FFh
                        STS       SOFTDDS.FIRSTTURN, _ACCA
                        .ENDBLOCK 1207
SoftDDS._L0468:
SoftDDS._L0469:
                        .LINE     1210
                        CLR       _ACCA
                        MOV       _ACCB, _SYSTFLAGS
                        ANDI      _ACCB, 002h
                        BRNE      SoftDDS._L0474
                        COM       _ACCA
SoftDDS._L0474:
                        PUSH      _ACCA
                        LDS       _ACCA, SoftDDS.LCDpresent
                        POP       _ACCB
                        AND       _ACCA, _ACCB
                        TST       _ACCA
                        .BRANCH   4,SoftDDS._L0477
                        BRNE      SoftDDS._L0477
                        .BRANCH   20,SoftDDS._L0475
                        JMP       SoftDDS._L0475
SoftDDS._L0477:
                        .BLOCK    1210
                        .LINE     1211
                        LDI       _ACCA, 000FAh SHRB 8
                        LDI       _ACCB, 000FAh AND 0FFh
                        LDI       _ACCCLO, SoftDDS.DisplayTimer AND 0FFh
                        LDI       _ACCCHI, SoftDDS.DisplayTimer SHRB 8
                        LDI       _ACCBHI, 002h
                        CALL      SYSTEM.SetSysTimer
                        .LINE     1213
                        LDI       _ACCA, 000h
                        STS       SOFTDDS.INCRFINE, _ACCA
                        .LINE     1214
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        .BRANCH   17,SoftDDS.SOLLWERTEONLCD
                        CALL      SoftDDS.SOLLWERTEONLCD
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        .ENDBLOCK 1216
SoftDDS._L0475:
SoftDDS._L0476:
                        .ENDBLOCK 1217
                        .LINE     1217
                        .BRANCH   20,SoftDDS._L0375
                        JMP       SoftDDS._L0375
SoftDDS._L0376:
                        .ENDBLOCK 1218

SoftDDS.$_MAINEX:
                        .LINE     1218
                        NOP
                        .LINE     1218
                        .BRANCH   20,SoftDDS.$_MAINEX
                        RJMP      SoftDDS.$_MAINEX


                        .ENDFUNC  1218

SYSTEM.$Main_stk        .EQU    001C9h          ; var iData  Process stack area
SYSTEM.$Main_stk_e      .EQU    00248h          ; var iData  Process stack area
SYSTEM.$Main_Frame      .EQU    00249h          ; var iData  Process stack area
SYSTEM.$Main_Frame_e    .EQU    00348h          ; var iData  Process stack area

                        ; ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
                        ; Initialisation and Library Routines
                        ; ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

                        .ENTRY
SYSTEM.RESET:
                        CLI
                        ; >> Stack Init [main process only] <<
                        LDI       _ACCA, 002h
                        LDI       _ACCB, 048h
                        OUT       sph, _ACCA
                        OUT       spl, _ACCB


                        ; >> Memory Init <<
                        CLR       _ACCA
                        LDI       _ACCCLO, 16
                        LDI       _ACCCHI, 0
                        LDI       _ACCBLO, 0
                        LDI       _ACCBHI, 0
                        ADIW      _ACCCLO, 1
SYSTEM._L0478:
                        SBIW      _ACCCLO, 001h
                        BREQ      SYSTEM._L0480
SYSTEM._L0479:
                        ST        X+, _ACCA
                        RJMP      SYSTEM._L0478
SYSTEM._L0480:
                        LDI       _ACCBLO, 00060h AND 0FFh
                        LDI       _ACCBHI, 00060h SHRB 8
                        LDI       _ACCCLO, 00800h AND 0FFh
                        LDI       _ACCCHI, 00800h SHRB 8
                        ADIW      _ACCCLO, 1
SYSTEM._L0481:
                        SBIW      _ACCCLO, 001h
                        BREQ      SYSTEM._L0483
SYSTEM._L0482:
                        ST        X+, _ACCA
                        RJMP      SYSTEM._L0481
SYSTEM._L0483:
                        LDI       _FRAMEPTR, 00348h AND 0FFh
                        LDI       _FPTRHI, 00348h SHRB 8

                        CLI
                        LDI       _ACCA, 0FEH ROLB IntFlag
                        AND       Flags, _ACCA

                        ; ============ init structured constants ============
                        ; >> Hardware Init <<

                        ; >> SysTick init: 1msec <<
                        ; >> real SysTick (exact): 1.000 msec <<
                        LDI       _ACCA, 006h
                        STS       SysTickTime, _ACCA
                        OUT       tcnt0, _ACCA
                        LDI       _ACCA, 3
                        OUT       tccr0, _ACCA
                        LDI       _ACCA, 001h
                        OUT       timsk, _ACCA

                        ; >> ADC Init <<
                        LDI       _ACCA, 002h
                        OUT       admux, _ACCA
                        LDI       _ACCA ,0C4h
                        OUT       adcsr, _ACCA

                        ; >> SERPORT Init <<
                        ; >> Baudrate 38400Baud <<
                        
                        ; percent Baudrate error : >> 0.160% <<
                        LDI       _ACCA, 018h
                        OUT       ucr1, _ACCA
                        LDI       _ACCA, 019h
                        OUT       ubrr1, _ACCA
                        LDI       _ACCA, 000h
                        OUT       ubrrh, _ACCA
                        LDI       _ACCA, 0
                        STS       _RXINP, _ACCA
                        STS       _RXOUTP, _ACCA
                        STS       _RXCOUNT, _ACCA
                        SBI       ucr1, 7
                        LDI       _ACCA, 0
                        STS       _TXINP, _ACCA
                        STS       _TXOUTP, _ACCA
                        STS       _TXCOUNT, _ACCA
                        LDI       _ACCA, 086h
                        OUT       ucsrc, _ACCA
                        IN        _ACCA, UDR1

                        ; >> IncrPort4 Init <<
                        LDI       _ACCA, 0
                        STS       TCCR1A, _ACCA
                        LDI       _ACCA, 009h
                        STS       TCCR1B, _ACCA
                        LDI       _ACCA, 00FA0h SHRB 8
                        LDI       _ACCB, 00FA0h AND 0FFh
                        STS       OCR1AH, _ACCA
                        STS       OCR1AL, _ACCB

                        ; >> TWIPORT Init <<
                        LDI       _ACCA, 00Ch
                        OUT       TWBR, _ACCA
                        LDI       _ACCA, 0FFh
                        STS       TWI_DevLock, _ACCA

                        CLR       Flags
                        CLR       Flags2

                        ; ============ Start User Main Program ============

                        .DEB      MAINENTRY
                        JMP       SoftDDS.$_Main

                        ; ============ Interrupt Service ============

SYSTEM.$INTERRUPT_TIMER0:
                        .DEB      SYSTICKENTRY
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        PUSH      _ACCB
                        PUSH      _ACCA
                        IN        _ACCA, SREG
                        PUSH      _ACCA
                        LDS       _ACCA, SysTickTime
                        IN        _ACCB, tcnt0
                        ADD       _ACCA, _ACCB
                        OUT       tcnt0, _ACCA
                        LDI       _ACCA, 0FEH ROLB IntFlag
                        AND       Flags, _ACCA
                        IN        _ACCB, adcl
                        IN        _ACCA, adch
                        PUSH      _ACCBLO
                        PUSH      _ACCBHI
                        IN        _ACCCHI, admux
                        ANDI      _ACCCHI, 7
                        LDI       _ACCCLO, 002h
                        CP        _ACCCLO, _ACCCHI
                        BRNE      SYSTEM._L0484
                        LDS       _ACCBLO, _ADCBUFF
                        LDS       _ACCBHI, _ADCBUFF+1
                        ADD       _ACCB, _ACCBLO;
                        ADC       _ACCA, _ACCBHI;
                        LSR       _ACCA
                        ROR       _ACCB
                        STS       _ADCBUFF, _ACCB
                        STS       _ADCBUFF+1, _ACCA
                        LDI       _ACCCLO, 003h
                        RJMP      SYSTEM._L0485
SYSTEM._L0484:
                        LDS       _ACCBLO, _ADCBUFF+2
                        LDS       _ACCBHI, _ADCBUFF+3
                        ADD       _ACCB, _ACCBLO;
                        ADC       _ACCA, _ACCBHI;
                        LSR       _ACCA
                        ROR       _ACCB
                        STS       _ADCBUFF+2, _ACCB
                        STS       _ADCBUFF+3, _ACCA
SYSTEM._L0485:
                        LDS       _ACCA, _ADCBUFF+4
                        ANDI      _ACCA, 1
                        BRNE      SYSTEM._L0486
                        IN        _ACCCHI, admux
                        CBR       _ACCCHI, 7
                        OR        _ACCCLO, _ACCCHI
                        OUT       admux, _ACCCLO
SYSTEM._L0486:
                        POP       _ACCBHI
                        POP       _ACCBLO
                        ;
                        LDS       _ACCB, _TWI_TO
                        TST       _ACCB
                        BREQ      SYSTEM._L0487
                        DEC       _ACCB
                        STS       _TWI_TO, _ACCB
SYSTEM._L0487:
                        LDS       _ACCA, SoftDDS.BurstTimer
                        TST       _ACCA
                        BREQ      SYSTEM._L0488
                        SUBI      _ACCA, 1
                        STS       SoftDDS.BurstTimer, _ACCA
SYSTEM._L0488:
                        LDS       _ACCCLO, SoftDDS.ActivityTimer
                        LDS       _ACCCHI, SoftDDS.ActivityTimer+1
                        TST       _ACCCHI
                        BRNE      SYSTEM._L0489
                        TST       _ACCCLO
                        BREQ      SYSTEM._L0490
SYSTEM._L0489:
                        SBIW      _ACCCLO, 1
                        STS       SoftDDS.ActivityTimer, _ACCCLO
                        STS       SoftDDS.ActivityTimer+1, _ACCCHI
                        RJMP      SYSTEM._L0491
SYSTEM._L0490:
                        MOV       _ACCA, _SYSTFLAGS
                        ANDI      _ACCA, 0FEh
                        MOV       _SYSTFLAGS, _ACCA
SYSTEM._L0491:
                        LDS       _ACCCLO, SoftDDS.DisplayTimer
                        LDS       _ACCCHI, SoftDDS.DisplayTimer+1
                        TST       _ACCCHI
                        BRNE      SYSTEM._L0492
                        TST       _ACCCLO
                        BREQ      SYSTEM._L0493
SYSTEM._L0492:
                        SBIW      _ACCCLO, 1
                        STS       SoftDDS.DisplayTimer, _ACCCLO
                        STS       SoftDDS.DisplayTimer+1, _ACCCHI
                        RJMP      SYSTEM._L0494
SYSTEM._L0493:
                        MOV       _ACCA, _SYSTFLAGS
                        ANDI      _ACCA, 0FDh
                        MOV       _SYSTFLAGS, _ACCA
SYSTEM._L0494:
                        LDS       _ACCA, SoftDDS.IncrTimer
                        TST       _ACCA
                        BREQ      SYSTEM._L0495
                        SUBI      _ACCA, 1
                        STS       SoftDDS.IncrTimer, _ACCA
SYSTEM._L0495:
                        LDI       _ACCA, 1 SHLB IntFlag
                        OR        Flags, _ACCA
                        SBI       adcsr, 6
                        ;
                        POP       _ACCA
                        OUT       SREG, _ACCA
                        POP       _ACCA
                        POP       _ACCB
                        POP       _ACCCHI
                        POP       _ACCCLO
                        .DEB      SYSTICKEXIT
                        RETI

SYSTEM.$INTERRUPT_TXEMPTY:
SYSTEM.$INTERRUPT_UDRE:
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        PUSH      _ACCB
                        PUSH      _ACCA
                        IN        _ACCA, SREG
                        PUSH      _ACCA
                        LDS       _ACCA, _TXCOUNT
                        TST       _ACCA
                        BRNE      SYSTEM._L0496
SYSTEM._L0500:
                        CBI       ucr1, 5
                        RJMP      SYSTEM._L0498
SYSTEM._L0496:
                        LDS       _ACCB, _TXOUTP
                        CLR       _ACCA
                        LDI       _ACCCLO, _TXBUFF AND 0FFh
                        LDI       _ACCCHI, _TXBUFF SHRB 8
                        ADD       _ACCCLO, _ACCB
                        ADC       _ACCCHI, _ACCA
                        LD        _ACCA, Z
                        OUT       UDR1, _ACCA
                        LDS       _ACCA, _TXCOUNT
                        DEC       _ACCA
                        STS       _TXCOUNT, _ACCA
                        BRNE      SYSTEM._L0499
                        CBI       ucr1, 5
SYSTEM._L0499:
                        INC       _ACCB
                        CPI       _ACCB, 64
                        BRNE      SYSTEM._L0497
                        CLR       _ACCB
SYSTEM._L0497:
                        STS       _TXOUTP, _ACCB
SYSTEM._L0498:
                        POP       _ACCA
                        OUT       SREG, _ACCA
                        POP       _ACCA
                        POP       _ACCB
                        POP       _ACCCHI
                        POP       _ACCCLO
                        RETI

SYSTEM.$INTERRUPT_RXRDY:
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        PUSH      _ACCB
                        PUSH      _ACCA
                        IN        _ACCA, SREG
                        PUSH      _ACCA
SYSTEM._L0506:
                        LDS       _ACCA, _RXCOUNT
                        CPI       _ACCA, 64
                        BRNE      SYSTEM._L0501
                        IN        _ACCB, UDR1
                        RJMP      SYSTEM._L0503
SYSTEM._L0501:
                        IN        _ACCA, UDR1
                        PUSH      _ACCA
                        CLR       _ACCA
                        LDS       _ACCB, _RXINP
                        LDI       _ACCCLO, _RXBUFF AND 0FFh
                        LDI       _ACCCHI, _RXBUFF SHRB 8
                        ADD       _ACCCLO, _ACCB
                        ADC       _ACCCHI, _ACCA
                        POP       _ACCA
                        ST        Z, _ACCA
                        LDS       _ACCA, _RXCOUNT
                        INC       _ACCA
                        STS       _RXCOUNT, _ACCA
                        INC       _ACCB
                        CPI       _ACCB, 64
                        BRNE      SYSTEM._L0502
                        CLR       _ACCB
SYSTEM._L0502:
                        STS       _RXINP, _ACCB
                        SBIC      usr1, 7
                        RJMP      SYSTEM._L0506
SYSTEM._L0503:
SYSTEM._L0508:
                        POP       _ACCA
                        OUT       SREG, _ACCA
                        POP       _ACCA
                        POP       _ACCB
                        POP       _ACCCHI
                        POP       _ACCCLO
                        RETI

SYSTEM.$INTERRUPT_TIMER1COMPA:
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        PUSH      _ACCB
                        PUSH      _ACCA
                        IN        _ACCA, SREG
                        PUSH      _ACCA
                        RJMP      SYSTEM._L0513

SYSTEM._L0509:
                        MOV       _ACCB, _ACCA
                        LSR       _ACCA
                        LSR       _ACCA
                        ANDI      _ACCB, 3
                        BRNE      SYSTEM._L0510
                        ADIW      _ACCCLO, 4
                        RET
SYSTEM._L0510:
                        CPI       _ACCB, 1
                        BREQ      SYSTEM._L0511
                        LDD       _ACCALO, Z+0
                        LDD       _ACCAHI, Z+1
                        LDD       _ACCDLO, Z+2
                        LDD       _ACCDHI, Z+3
                        SUBI      _ACCALO, 0FFh
                        SBCI      _ACCAHI, 0FFh
                        SBCI      _ACCDLO, 0FFh
                        SBCI      _ACCDHI, 0FFh
                        RJMP      SYSTEM._L0512
SYSTEM._L0511:
                        LDD       _ACCALO, Z+0
                        LDD       _ACCAHI, Z+1
                        LDD       _ACCDLO, Z+2
                        LDD       _ACCDHI, Z+3
                        SUBI      _ACCALO, 1
                        SBCI      _ACCAHI, 0
                        SBCI      _ACCDLO, 0
                        SBCI      _ACCDHI, 0
SYSTEM._L0512:
                        ST        Z+, _ACCALO
                        ST        Z+, _ACCAHI
                        ST        Z+, _ACCDLO
                        ST        Z+, _ACCDHI
                        RET

SYSTEM._L0513:
                        PUSH      _ACCALO
                        PUSH      _ACCAHI
                        PUSH      _ACCDLO
                        PUSH      _ACCDHI
                        IN        _ACCA, PINA
                        .DEB      Incr4Int
                        ANDI      _ACCA, 03h;
                        LDI       _ACCCLO, _INCRSTATE4 AND 0FFh
                        LDI       _ACCCHI, _INCRSTATE4 SHRB 8
                        LDD       _ACCB, Z+0
                        STD       Z+0, _ACCA
                        MOV       _ACCALO, _ACCB;
                        EOR       _ACCALO, _ACCA;
                        BREQ      SYSTEM._L0514
                        MOV       _ACCAHI, _ACCALO;
                        ANDI      _ACCALO, 055h;
                        ANDI      _ACCAHI, 0AAh;
                        MOV       _ACCDLO, _ACCALO;
                        EOR       _ACCDLO, _ACCAHI;
                        AND       _ACCALO, _ACCDLO
                        AND       _ACCAHI, _ACCDLO
                        MOV       _ACCCLO, _ACCB;
                        ANDI      _ACCCLO, 055h;
                        MOV       _ACCDLO, _ACCB;
                        ANDI      _ACCDLO, 0AAh;
                        LSR       _ACCDLO;
                        EOR       _ACCCLO, _ACCDLO;
                        COM       _ACCCLO;
                        MOV       _ACCCHI, _ACCA;
                        ANDI      _ACCCHI, 055h;
                        MOV       _ACCDLO, _ACCA;
                        ANDI      _ACCDLO, 0AAh;
                        LSR       _ACCDLO;
                        EOR       _ACCCHI, _ACCDLO;
                        COM       _ACCCHI;
                        MOV       _ACCA, _ACCALO;
                        AND       _ACCA, _ACCCLO;
                        MOV       _ACCB, _ACCCHI;
                        LSL       _ACCB;
                        AND       _ACCB, _ACCAHI;
                        LSR       _ACCB;
                        OR        _ACCA, _ACCB;
                        AND       _ACCALO, _ACCCHI;
                        LSL       _ACCALO;
                        LSL       _ACCCLO;
                        AND       _ACCAHI, _ACCCLO;
                        OR        _ACCALO, _ACCAHI;
                        OR        _ACCA, _ACCALO;
                        LDI       _ACCCLO, _INCRCOUNT4_0 AND 0FFh
                        LDI       _ACCCHI, _INCRCOUNT4_0 SHRB 8
                        RCALL     SYSTEM._L0509
SYSTEM._L0514:
                        POP       _ACCDHI
                        POP       _ACCDLO
                        POP       _ACCAHI
                        POP       _ACCALO
                        POP       _ACCA
                        OUT       SREG, _ACCA
                        POP       _ACCA
                        POP       _ACCB
                        POP       _ACCCHI
                        POP       _ACCCLO
                        RETI


                        ; ============ Library ============

SYSTEM._LCDM_ini:
                        LDS       _ACCDLO, _LCDM_PORT
                        ORI       _ACCDLO, 20h
                        LDI       _ACCBLO, 00002h AND 0FFh
                        LDI       _ACCBHI, 00002h SHRB 8
                        LDI       _ACCAHI, 002h
                        LDI       _ACCCLO, _ACCELO AND 0FFh
                        LDI       _ACCCHI, _ACCELO SHRB 8
                        LDI       _ACCELO, 00000h AND 0FFh
                        LDI       _ACCEHI, 00000h SHRB 8
                        CLT
                        BLD       Flags, _I2C2BYTE
                        LDI       _ACCDHI, 000h
                        CALL      SYSTEM.TWIout
                        LDS       _ACCDLO, _LCDM_PORT
                        ORI       _ACCDLO, 20h
                        LDI       _ACCBLO, 00002h AND 0FFh
                        LDI       _ACCBHI, 00002h SHRB 8
                        LDI       _ACCAHI, 004h
                        LDI       _ACCCLO, _ACCELO AND 0FFh
                        LDI       _ACCCHI, _ACCELO SHRB 8
                        LDI       _ACCELO, 00000h AND 0FFh
                        LDI       _ACCEHI, 00000h SHRB 8
                        LDI       _ACCDHI, 000h
                        CALL      SYSTEM.TWIout
                        LDS       _ACCDLO, _LCDM_PORT
                        ORI       _ACCDLO, 20h
                        LDI       _ACCBLO, 00002h AND 0FFh
                        LDI       _ACCBHI, 00002h SHRB 8
                        LDI       _ACCAHI, 006h
                        LDI       _ACCCLO, _ACCELO AND 0FFh
                        LDI       _ACCCHI, _ACCELO SHRB 8
                        LDI       _ACCELO, 0F800h AND 0FFh
                        LDI       _ACCEHI, 0F800h SHRB 8
                        LDI       _ACCDHI, 000h
                        CALL      SYSTEM.TWIout
                        RET

SYSTEM._LCDM_CLOSE:
                        LDS       _ACCDLO, _LCDM_PORT
                        ORI       _ACCDLO, 20h
                        LDI       _ACCBLO, 00001h AND 0FFh
                        LDI       _ACCBHI, 00001h SHRB 8
                        LDI       _ACCAHI, 003h
                        LDI       _ACCCLO, _ACCELO AND 0FFh
                        LDI       _ACCCHI, _ACCELO SHRB 8
                        CLT
                        BLD       Flags, _I2C2BYTE
                        LDI       _ACCDHI, 000h
                        CALL      SYSTEM.TWIout
                        LDS       _ACCDLO, _LCDM_PORT
                        ORI       _ACCDLO, 20h
                        LDI       _ACCBLO, 00001h AND 0FFh
                        LDI       _ACCBHI, 00001h SHRB 8
                        LDI       _ACCAHI, 003h
                        LDI       _ACCCLO, _ACCELO AND 0FFh
                        LDI       _ACCCHI, _ACCELO SHRB 8
                        LDI       _ACCELO, 000h
                        LDI       _ACCDHI, 000h
                        CALL      SYSTEM.TWIout
                        RET

SYSTEM._LCDM_START_RW:
                        PUSH      _ACCELO
                        MOV       _ACCALO, _ACCA
                        LDI       _ACCELO, 000h
                        RCALL     SYSTEM._LCDM_CLOSE
                        POP       _ACCELO
                        PUSH      _ACCELO
                        ANDI      _ACCELO, 2
                        BREQ       SYSTEM._L0515
                        LDS       _ACCDLO, _LCDM_PORT
                        ORI       _ACCDLO, 20h
                        LDI       _ACCBLO, 00001h AND 0FFh
                        LDI       _ACCBHI, 00001h SHRB 8
                        LDI       _ACCAHI, 006h
                        LDI       _ACCCLO, _ACCELO AND 0FFh
                        LDI       _ACCCHI, _ACCELO SHRB 8
                        LDI       _ACCELO, 0FFh
                        LDI       _ACCDHI, 000h
                        CALL      SYSTEM.TWIout
                        RJMP      SYSTEM._L0516
SYSTEM._L0515:
                        LDS       _ACCDLO, _LCDM_PORT
                        ORI       _ACCDLO, 20h
                        LDI       _ACCBLO, 00001h AND 0FFh
                        LDI       _ACCBHI, 00001h SHRB 8
                        LDI       _ACCAHI, 006h
                        LDI       _ACCCLO, _ACCELO AND 0FFh
                        LDI       _ACCCHI, _ACCELO SHRB 8
                        LDI       _ACCELO, 000h
                        LDI       _ACCDHI, 000h
                        CALL      SYSTEM.TWIout
                        LDS       _ACCDLO, _LCDM_PORT
                        ORI       _ACCDLO, 20h
                        LDI       _ACCBLO, 00001h AND 0FFh
                        LDI       _ACCBHI, 00001h SHRB 8
                        LDI       _ACCAHI, 006h
                        LDI       _ACCCLO, _ACCELO AND 0FFh
                        LDI       _ACCCHI, _ACCELO SHRB 8
                        MOV       _ACCELO, _ACCALO
                        LDI       _ACCDHI, 000h
                        CALL      SYSTEM.TWIout
SYSTEM._L0516:
                        LDS       _ACCDLO, _LCDM_PORT
                        ORI       _ACCDLO, 20h
                        LDI       _ACCBLO, 00001h AND 0FFh
                        LDI       _ACCBHI, 00001h SHRB 8
                        LDI       _ACCAHI, 003h
                        LDI       _ACCCLO, _ACCELO AND 0FFh
                        LDI       _ACCCHI, _ACCELO SHRB 8
                        POP       _ACCELO
                        PUSH      _ACCELO
                        LDI       _ACCDHI, 000h
                        CALL      SYSTEM.TWIout
                        LDS       _ACCDLO, _LCDM_PORT
                        ORI       _ACCDLO, 20h
                        LDI       _ACCBLO, 00001h AND 0FFh
                        LDI       _ACCBHI, 00001h SHRB 8
                        LDI       _ACCAHI, 003h
                        LDI       _ACCCLO, _ACCELO AND 0FFh
                        LDI       _ACCCHI, _ACCELO SHRB 8
                        POP       _ACCELO
                        PUSH      _ACCELO
                        ORI       _ACCELO, 1
                        LDI       _ACCDHI, 000h
                        CALL      SYSTEM.TWIout
                        POP       _ACCELO
                        ANDI      _ACCELO, 2
                        BREQ       SYSTEM._L0517
                        LDS       _ACCDLO, _LCDM_PORT
                        ORI       _ACCDLO, 20h
                        LDI       _ACCBLO, 00000h AND 0FFh
                        LDI       _ACCBHI, 00000h SHRB 8
                        LDI       _ACCAHI, 000h
                        LDI       _ACCDHI, 000h
                        CALL      SYSTEM.TWIout
SYSTEM._L0517:
                        RET

SYSTEM._LCDM_Busy_Rd:
                        LDI       _ACCELO, 002h
                        RCALL     SYSTEM._LCDM_START_RW
                        LDS       _ACCDLO, _LCDM_PORT
                        ORI       _ACCDLO, 20h
                        LDI       _ACCBLO, 00001h AND 0FFh
                        LDI       _ACCBHI, 00001h SHRB 8
                        LDI       _ACCCLO, _ACCELO AND 0FFh
                        LDI       _ACCCHI, _ACCELO SHRB 8
                        CALL      SYSTEM.TWIinp
                        PUSH      _ACCELO
                        LDI       _ACCELO, 002h
                        RCALL     SYSTEM._LCDM_CLOSE
                        POP       _ACCA
                        .DEB      LCDBUSY_RD
                        RET

SYSTEM._LCDWAIT_M:
                        LDI       _ACCCLO, 00280h AND 0FFh
                        LDI       _ACCCHI, 00280h SHRB 8
SYSTEM._L0518:
                        RCALL     SYSTEM._LCDM_Busy_Rd
                        TST       _ACCA
                        BRPL       SYSTEM._L0519
                        SBIW      _ACCCLO, 1
                        BRNE      SYSTEM._L0518
                        CLR       _ACCB
                        CLR       _ACCA
                        RET
SYSTEM._L0519:
                        MOV       _ACCB, _ACCA
                        SER       _ACCA
                        RET

SYSTEM._LCDM_Ctrl_Wr:
                        PUSH      _ACCA
                        RCALL     SYSTEM._LCDWAIT_M
                        TST       _ACCA
                        BRNE      SYSTEM._L0520
                        POP       _ACCB
                        RET
SYSTEM._L0520:
                        POP       _ACCA
SYSTEM._LCDM_Ctrl_Wr_NW:
                        .DEB      LCDCTRL_WR
                        LDI       _ACCELO, 000h
                        RCALL     SYSTEM._LCDM_START_RW
                        LDI       _ACCELO, 000h
                        RCALL     SYSTEM._LCDM_CLOSE
                        SER       _ACCA
                        RET

SYSTEM._LCDM_Data_Wr:
                        .DEB      LCDOUT_M
                        LDI       _ACCELO, 004h
                        RCALL     SYSTEM._LCDM_START_RW
                        LDI       _ACCELO, 004h
                        RCALL     SYSTEM._LCDM_CLOSE
                        SER       _ACCA
                        RET

SYSTEM._LCDM_Data_Rd:
                        LDI       _ACCELO, 006h
                        RCALL     SYSTEM._LCDM_START_RW
                        LDS       _ACCDLO, _LCDM_PORT
                        ORI       _ACCDLO, 20h
                        LDI       _ACCBLO, 00001h AND 0FFh
                        LDI       _ACCBHI, 00001h SHRB 8
                        LDI       _ACCCLO, _ACCELO AND 0FFh
                        LDI       _ACCCHI, _ACCELO SHRB 8
                        CALL      SYSTEM.TWIinp
                        PUSH      _ACCELO
                        LDI       _ACCELO, 006h
                        RCALL     SYSTEM._LCDM_CLOSE
                        POP       _ACCA
                        .DEB      LCDINP_M
                        RET

SYSTEM.LCDSETUP_M:
                        STS       _LCDM_PORT, _ACCA
                        ORI       _ACCA, 20h
                        CALL      SYSTEM.TWIstat
                        .DEB      I2CSTAT_M
                        TST       _ACCA
                        BRNE       SYSTEM._L0521
                        RET
SYSTEM._L0521:
                        RCALL     SYSTEM._LCDM_ini
                        LDI       _ACCB, 16
                        CLR       _ACCA
                        CALL      SYSTEM.MDELAY
                        LDI       _ACCA, 30h
                        RCALL     SYSTEM._LCDM_Ctrl_Wr_NW
                        LDI       _ACCB, 5
                        CLR       _ACCA
                        CALL      SYSTEM.MDELAY
                        LDI       _ACCA, 30h
                        RCALL     SYSTEM._LCDM_Ctrl_Wr_NW
                        LDI       _ACCB, 1
                        CLR       _ACCA
                        CALL      SYSTEM.MDELAY
                        LDI       _ACCA, 30h
                        RCALL     SYSTEM._LCDM_Ctrl_Wr_NW
                        LDI       _ACCB, 1
                        CLR       _ACCA
                        CALL      SYSTEM.MDELAY
                        LDI       _ACCA, 38h
                        RCALL     SYSTEM._LCDM_Ctrl_Wr
                        LDI       _ACCA, 08h
                        RCALL     SYSTEM._LCDM_Ctrl_Wr
                        LDI       _ACCA, 1
                        RCALL     SYSTEM._LCDM_Ctrl_Wr
                        LDI       _ACCA, 6
                        RCALL     SYSTEM._LCDM_Ctrl_Wr_NW
                        RET

SYSTEM.LCDOUT_M:
                        RJMP      SYSTEM._LCDM_Data_Wr

SYSTEM.LCDCTRL_M:
                        LDD       _ACCA, Y+001h
                        STS       _LCDM_PORT, _ACCA
                        LDD       _ACCA, Y+000h
                        RJMP      SYSTEM._LCDM_Ctrl_Wr

SYSTEM.LCDINP_M:
                        STS       _LCDM_PORT, _ACCA
                        RJMP      SYSTEM._LCDM_Data_Rd

SYSTEM.LCDSTAT_M:
                        STS       _LCDM_PORT, _ACCA
                        RJMP      SYSTEM._LCDM_Busy_Rd

SYSTEM.LCDsetPort_M:
                        STS       _LCDM_PORT, _ACCA
                        RET

SYSTEM.LCDgetPort_M:
                        LDS       _ACCA, _LCDM_PORT
                        RET

SYSTEM.LCDON_M:
                        LDD       _ACCA, Y+000h
                        STS       _LCDM_PORT, _ACCA
                        LDI       _ACCA, 0FFh
                        LDI       _ACCB, 0FFh
                        RJMP      SYSTEM._L0522
SYSTEM.LCDCURSOR_M:
                        LDD       _ACCA, Y+002h
                        STS       _LCDM_PORT, _ACCA
                        LDD       _ACCA, Y+000h
                        LDD       _ACCB, Y+001h
SYSTEM._L0522:
                        TST       _ACCA
                        BRNE       SYSTEM._L0523
                        LDI       _ACCA, 0Ch
                        RJMP      SYSTEM._L0524

SYSTEM._L0523:
                        LDI       _ACCA, 0Dh
SYSTEM._L0524:
                        TST       _ACCB
                        BREQ       SYSTEM._L0525
                        ORI       _ACCA, 2
SYSTEM._L0525:
                        RJMP      SYSTEM._LCDM_Ctrl_Wr

SYSTEM.LCDXY_M:
                        LDD       _ACCA, Y+002h
                        STS       _LCDM_PORT, _ACCA
                        LDD       _ACCA, Y+000h
                        LDD       _ACCB, Y+001h
                        CPI       _ACCA, 0
                        BRNE       SYSTEM._L0526
                        LDI       _ACCA, 080h
                        RJMP      SYSTEM._L0530

SYSTEM._L0526:
                        CPI       _ACCA, 1
                        BRNE       SYSTEM._L0527
                        LDI       _ACCA, 0C0h
                        RJMP      SYSTEM._L0530

SYSTEM._L0527:
                        CPI       _ACCA, 2
                        BRNE       SYSTEM._L0528
                        LDI       _ACCA, 088h
                        RJMP      SYSTEM._L0530

SYSTEM._L0528:
                        CPI       _ACCA, 3
                        BRNE       SYSTEM._L0529
                        LDI       _ACCA, 0C8h
                        RJMP      SYSTEM._L0530

SYSTEM._L0529:
                        LDI       _ACCA, 080h
SYSTEM._L0530:
                        ADD       _ACCA, _ACCB
                        RJMP      SYSTEM._LCDM_Ctrl_Wr_NW

SYSTEM.LCDCLREOL_M:
                        STS       _LCDM_PORT, _ACCA
                        RCALL     SYSTEM._LCDWAIT_M
                        RCALL     SYSTEM._LCDM_Busy_Rd
                        ORI       _ACCA, 80h
                        PUSH      _ACCA
                        ANDI      _ACCA, 07h
                        LDI       _ACCB, 008h
                        SUB       _ACCB, _ACCA
SYSTEM._L0531:
                        PUSH      _ACCB
                        LDI       _ACCA, 20h
                        RCALL     SYSTEM._LCDM_Data_Wr
                        POP       _ACCB
                        DEC       _ACCB
                        BRNE       SYSTEM._L0531
                        POP       _ACCA
                        RJMP      SYSTEM._LCDM_Ctrl_Wr

SYSTEM.LCDCHARSET_M:
                        LDD       _ACCA, Y+009h
                        STS       _LCDM_PORT, _ACCA
                        LDD       _ACCA, Y+008h
                        ANDI      _ACCA, 0Fh
                        LSL       _ACCA
                        LSL       _ACCA
                        LSL       _ACCA
                        ORI       _ACCA, 40h
                        RCALL     SYSTEM._LCDM_Ctrl_Wr
                        LDD       _ACCA, Y+007h
                        RCALL     SYSTEM._LCDM_Data_Wr
                        LDD       _ACCA, Y+006h
                        RCALL     SYSTEM._LCDM_Data_Wr
                        LDD       _ACCA, Y+005h
                        RCALL     SYSTEM._LCDM_Data_Wr
                        LDD       _ACCA, Y+004h
                        RCALL     SYSTEM._LCDM_Data_Wr
                        LDD       _ACCA, Y+003h
                        RCALL     SYSTEM._LCDM_Data_Wr
                        LDD       _ACCA, Y+002h
                        RCALL     SYSTEM._LCDM_Data_Wr
                        LDD       _ACCA, Y+001h
                        RCALL     SYSTEM._LCDM_Data_Wr
                        LDD       _ACCA, Y+000h
                        RCALL     SYSTEM._LCDM_Data_Wr
                        LDI       _ACCA, 80h
                        RJMP      SYSTEM._LCDM_Ctrl_Wr

SYSTEM.LCDportInp_M:
                        MOV       _ACCDLO, _ACCA
                        ORI       _ACCDLO, 20h
                        PUSH      _ACCDLO
                        LDI       _ACCBLO, 00000h AND 0FFh
                        LDI       _ACCBHI, 00000h SHRB 8
                        LDI       _ACCAHI, 001h
                        LDI       _ACCDHI, 000h
                        CALL      SYSTEM.TWIout
                        POP       _ACCDLO
                        LDI       _ACCBLO, 00001h AND 0FFh
                        LDI       _ACCBHI, 00001h SHRB 8
                        LDI       _ACCCLO, _ACCELO AND 0FFh
                        LDI       _ACCCHI, _ACCELO SHRB 8
                        CALL      SYSTEM.TWIinp
                        MOV       _ACCA, _ACCELO
                        ANDI      _ACCA, 0F8h
                        RET

SYSTEM.TWISTARTB:
                        LDI       _ACCA, 0
                        STS       TWI_DevLock, _ACCA
                        IN        _ACCA, TWSR
                        ANDI      _ACCA, 0FCh
                        CPI       _ACCA, 000h
                        BRNE      SYSTEM._L0543
                        LDI       _ACCA, 090h
                        OUT       TWCR, _ACCA
SYSTEM._L0543:
                        LDI       _ACCA, 0A4h
                        OUT       TWCR, _ACCA
                        LDI       _ACCA, 100
                        STS       _TWI_TO, _ACCA
SYSTEM._L0541:
                        IN        _ACCA, TWCR
                        ANDI      _ACCA, 080h
                        BRNE      SYSTEM._L0544
                        LDS       _ACCA, _TWI_TO
                        TST       _ACCA
                        BRNE      SYSTEM._L0541
                        OUT       TWCR, _ACCA
                        RJMP      SYSTEM.TWI_ERROR
SYSTEM._L0544:
                        IN        _ACCA, TWSR
                        ANDI      _ACCA, 0FCh
                        CPI       _ACCA, 008h
                        BRNE      SYSTEM._L0548
                        RJMP      SYSTEM.TWI_ERROR
SYSTEM._L0548:
                        RJMP      SYSTEM.TWI_OK

SYSTEM.TWISTOPB:
SYSTEM._L0549:
                        IN        _ACCA, TWSR
                        ANDI      _ACCA, 0FCh
                        CPI       _ACCA, 0F8h
                        BREQ      SYSTEM._L0549
                        CPI       _ACCA, 000h
                        BRNE      SYSTEM._L0550
                        LDI       _ACCA, 090h
                        OUT       TWCR, _ACCA
                        NOP
SYSTEM._L0550:
                        LDI       _ACCB, 094h
                        OUT       TWCR, _ACCB
                        SER       _ACCA
                        STS       TWI_DevLock, _ACCA
                        RET

SYSTEM.TWISENDBYTE:
                        OUT       TWDR, _ACCDLO
                        LDI       _ACCA, 084h
                        OUT       TWCR, _ACCA
                        LDI       _ACCA, 100
                        STS       _TWI_TO, _ACCA
SYSTEM._L0552:
                        IN        _ACCA, TWCR
                        ANDI      _ACCA, 080h
                        BRNE      SYSTEM._L0553
                        LDS       _ACCA, _TWI_TO
                        TST       _ACCA
                        BRNE      SYSTEM._L0552
                        RJMP      SYSTEM.TWI_ERROR
SYSTEM._L0553:
                        IN        _ACCA, TWSR
                        ANDI      _ACCA, 0FCh
                        CPI       _ACCA, 028h
                        BREQ      SYSTEM.TWI_OK
                        CPI       _ACCA, 018h
                        BREQ      SYSTEM.TWI_OK
                        CPI       _ACCA, 040h
                        BREQ      SYSTEM.TWI_OK
                        RJMP      SYSTEM.TWI_ERROR

SYSTEM.TWIRECVBYTE:
                        LDI       _ACCA, 0C4h
                        OUT       TWCR, _ACCA
                        SBIW      _ACCBLO, 1
                        BRMI      SYSTEM.TWISTOPB
                        BRNE      SYSTEM._L0554
                        LDI       _ACCA, 084h
SYSTEM._L0554:
                        OUT       TWCR, _ACCA
SYSTEM._L0555:
                        IN        _ACCA, TWCR
                        SBRS      _ACCA, 7
                        RJMP      SYSTEM._L0555
                        IN        _ACCA, TWSR
                        ANDI      _ACCA, 0FCh
                        CPI       _ACCA, 058h
                        BREQ      SYSTEM._L0557
                        CPI       _ACCA, 050h
                        BRNE      SYSTEM.TWI_ERROR
SYSTEM._L0557:
                        IN        _ACCA, TWDR
                        ST        Z+, _ACCA
                        RJMP      SYSTEM.TWIRECVBYTE
SYSTEM.TWI_OK:
                        LDI       _ACCA, true
                        RET
SYSTEM.TWI_ERROR:
                        IN        _ACCA, TWSR
                        ANDI      _ACCA, 0FCh
                        CPI       _ACCA, 000h
                        BRNE      SYSTEM._L0556
                        LDI       _ACCA, 090h
                        OUT       TWCR, _ACCA
SYSTEM._L0556:
                        LDI       _ACCA, false
                        RET

SYSTEM.TWISTAT:
                        MOV       _ACCDLO, _ACCA
                        RCALL     SYSTEM.TWISTARTB
                        CLC
                        ROL       _ACCDLO
                        RCALL     SYSTEM.TWISENDBYTE
                        MOV       _ACCBHI, _ACCA
                        RCALL     SYSTEM.TWISTOPB
                        MOV       _ACCA, _ACCBHI
                        RET

SYSTEM.TWIINP:
                        RCALL     SYSTEM.TWISTARTB
                        SEC
                        ROL       _ACCDLO
                        RCALL     SYSTEM.TWISENDBYTE
                        TST       _ACCA
                        BREQ      SYSTEM._L0559
                        RCALL     SYSTEM.TWIRECVBYTE
                        TST       _ACCA
                        BREQ      SYSTEM._L0559
                        RJMP      SYSTEM.TWI_OK
SYSTEM._L0559:
                        RCALL     SYSTEM.TWI_ERROR
                        SER       _ACCB
                        STS       TWI_DevLock, _ACCB
                        RET

SYSTEM.TWIOUT:
                        RCALL     SYSTEM.TWISTARTB
                        CLC
                        ROL       _ACCDLO
                        RCALL     SYSTEM.TWISENDBYTE
                        TST       _ACCA
                        BREQ      SYSTEM._L0565
SYSTEM._L0560:
                        MOV       _ACCDLO, _ACCAHI
                        RCALL     SYSTEM.TWISENDBYTE
                        TST       _ACCA
                        BREQ      SYSTEM._L0565
                        BST       Flags, _I2C2BYTE
                        BRTC      SYSTEM._L0564
                        MOV       _ACCDLO, _ACCALO
SYSTEM._L0562:
                        RCALL     SYSTEM.TWISENDBYTE
                        TST       _ACCA
                        BREQ      SYSTEM._L0565
SYSTEM._L0564:
                        TST       _ACCBLO
                        BRNE       SYSTEM._L0569
                        TST       _ACCBHI
                        BREQ       SYSTEM._L0563
SYSTEM._L0569:
                        TST       _ACCDHI
                        BRNE      SYSTEM._L0566
                        LD        _ACCDLO, Z+
                        RJMP      SYSTEM._L0568
SYSTEM._L0566:
                        CPI       _ACCDHI, 1
                        BRNE      SYSTEM._L0567
                        LPM       _ACCDLO, Z+
                        RJMP      SYSTEM._L0568
SYSTEM._L0567:
                        CALL      SYSTEM.ReadEEp8D
                        ADIW      _ACCCLO, 01h
SYSTEM._L0568:
                        SBIW      _ACCBLO, 1
                        RJMP      SYSTEM._L0562
SYSTEM._L0563:
                        RCALL     SYSTEM.TWISTOPB
                        RJMP      SYSTEM.TWI_OK
SYSTEM._L0565:
                        RCALL     SYSTEM.TWI_ERROR
                        SER       _ACCB
                        STS       TWI_DevLock, _ACCB
                        CLR       _ACCA
                        RET

SYSTEM.SERINP:
SYSTEM._L0570:
                        LDS       _ACCA, _RXCOUNT
                        TST       _ACCA
                        BREQ      SYSTEM._L0570
                        LDS       _ACCB, _RXOUTP
                        CLR       _ACCA
                        LDI       _ACCCLO, _RXBUFF AND 0FFh
                        LDI       _ACCCHI, _RXBUFF SHRB 8
                        ADD       _ACCCLO, _ACCB
                        ADC       _ACCCHI, _ACCA
                        LD        _ACCA, Z
                        CLI
                        LDS       _ACCCLO, _RXCOUNT
                        DEC       _ACCCLO
                        STS       _RXCOUNT, _ACCCLO
                        SBRC      Flags, IntFlag
                        SEI
                        LDS       _ACCB, _RXOUTP
                        INC       _ACCB
                        CPI       _ACCB, 64
                        BRNE      SYSTEM._L0571
                        CLR       _ACCB
SYSTEM._L0571:
                        STS       _RXOUTP, _ACCB
                        RET

SYSTEM.SERSTAT:
                        CLR       _ACCA
                        LDS       _ACCB, _RXCOUNT
                        TST       _ACCB
                        BREQ      SYSTEM._L0573
                        COM       _ACCA
SYSTEM._L0573:
                        RET

SYSTEM.SEROUT:
SYSTEM._L0574:
                        LDS       _ACCB, _TXCOUNT
                        CPI       _ACCB, 64
                        BREQ      SYSTEM._L0574
                        CLI
                        LDS       _ACCB, _TXINP
                        LDI       _ACCCLO, _TXBUFF AND 0FFh
                        LDI       _ACCCHI, _TXBUFF SHRB 8
                        ADD       _ACCCLO, _ACCB
                        CLR       _ACCB
                        ADC       _ACCCHI, _ACCB
                        ST        Z, _ACCA
                        LDS       _ACCB, _TXCOUNT
                        INC       _ACCB
                        STS       _TXCOUNT, _ACCB
                        LDS       _ACCB, _TXINP
                        INC       _ACCB
                        CPI       _ACCB, 64
                        BRNE      SYSTEM._L0575
                        CLR       _ACCB
SYSTEM._L0575:
                        STS       _TXINP, _ACCB
                        SBI       ucr1, 5
                        SBRC      Flags, IntFlag
                        SEI
                        RET

SYSTEM.IncrCount4start:
                        CLI
                        IN        _ACCA, TIMSK
                        ORI       _ACCA, 010h
                        OUT       TIMSK, _ACCA
                        SBRC      Flags, IntFlag
                        SEI
                        RET

SYSTEM.GetIncrVal4:
                        LDI       _ACCCLO, _INCRCOUNT4_0 AND 0FFh
                        LDI       _ACCCHI, _INCRCOUNT4_0 SHRB 8
                        CPI       _ACCA, 1
                        BRCS      SYSTEM._L0576
                        LDI       _ACCB, 0
                        LDI       _ACCA, 0
                        LDI       _ACCALO, 0
                        LDI       _ACCAHI, 0
                        RET
SYSTEM._L0576:
                        CLR       _ACCB
                        LSL       _ACCA
                        LSL       _ACCA
                        ADD       _ACCCLO, _ACCA
                        ADC       _ACCCHI, _ACCB
                        CLI
                        LD        _ACCB, Z+
                        LD        _ACCA, Z+
                        LD        _ACCALO, Z+
                        LD        _ACCAHI, Z+
                        SBRC      Flags, IntFlag
                        SEI
                        RET

SYSTEM.SetIncrVal4:
                        LDD       _ACCA, Y+004h
                        CPI       _ACCA, 1
                        BRCS      SYSTEM._L0577
                        RET
SYSTEM._L0577:
                        LDI       _ACCCLO, _INCRCOUNT4_0 AND 0FFh
                        LDI       _ACCCHI, _INCRCOUNT4_0 SHRB 8
                        CLR       _ACCB
                        LSL       _ACCA
                        LSL       _ACCA
                        ADD       _ACCCLO, _ACCA
                        ADC       _ACCCHI, _ACCB
                        LDD       _ACCAHI, Y+003h
                        LDD       _ACCALO, Y+002h
                        LDD       _ACCA, Y+001h
                        LDD       _ACCB, Y+000h
                        CLI
                        ST        Z+, _ACCB
                        ST        Z+, _ACCA
                        ST        Z+, _ACCALO
                        ST        Z+, _ACCAHI
                        SBRC      Flags, IntFlag
                        SEI
                        RET


SYSTEM.MDELAY:
                        .DEB      DEBdelay
                        MOVW      _ACCDLO, _ACCB
                        CLR       _ACCA
                        CP        _ACCDLO, _ACCA
                        CPC       _ACCDHI, _ACCA
                        BREQ      SYSTEM.MDELAY3
SYSTEM.MDELAY1:
                        LDI       _ACCB, 00C7Ah AND 0FFh
                        LDI       _ACCA, 00C7Ah SHRB 8
SYSTEM.MDELAY2:
                        SUBI      _ACCB, 001h
                        SBCI      _ACCA, 000h
                        NOP
                        BRNE      SYSTEM.MDELAY2
                        SUBI      _ACCDLO, 001h
                        SBCI      _ACCDHI, 000h
                        BRNE      SYSTEM.MDELAY1
SYSTEM.MDELAY3:
                        RET

SYSTEM.UDELAY:
                        TST       _ACCA
                        BREQ      SYSTEM.UDELAY3
SYSTEM.UDELAY1:
                        LDI       _ACCB, 00026h AND 0FFh
SYSTEM.UDELAY2:
                        DEC       _ACCB
                        NOP
                        BRNE      SYSTEM.UDELAY2
                        DEC       _ACCA
                        BRNE      SYSTEM.UDELAY1
SYSTEM.UDELAY3:
                        RET

SYSTEM.BlockCopyC:
SYSTEM._L0578:
                        SUBI      _ACCALO, 001h
                        SBCI      _ACCAHI, 000h
                        BRCS      SYSTEM._L0579
                        LD        _ACCA, Z+
                        ST        X+, _ACCA
                        RJMP      SYSTEM._L0578
SYSTEM._L0579:
                        RET

SYSTEM._EEpWaitReady:
                        SBRC      Flags, IntFlag
                        SEI
                        SBIC      eecr, 1
                        RJMP      SYSTEM._EEpWaitReady

                        CLI
                        SBIC      eecr, 1
                        RJMP      SYSTEM._EEpWaitReady

                        RET

SYSTEM.ReadEEp8:
                        RCALL     SYSTEM._EEpWaitReady
                        OUT       eearl, _ACCCLO
                        OUT       eearh, _ACCCHI
                        SBI       eecr, 0
                        NOP
                        IN        _ACCA, eedr
                        SBRC      Flags, IntFlag
                        SEI
                        RET

SYSTEM._ReadEEp16:
                        RCALL     SYSTEM.ReadEEp8
                        MOV       _ACCB, _ACCA
                        ADIW      _ACCCLO, 01h
                        RCALL     SYSTEM.ReadEEp8
                        RET

SYSTEM._ReadEEp32:
                        CALL      SYSTEM.ReadEEp8
                        MOV       _ACCB, _ACCA
                        ADIW      _ACCCLO, 01h
                        RCALL     SYSTEM.ReadEEp8
                        MOV       _ACCBLO, _ACCA
                        ADIW      _ACCCLO, 01h
                        RCALL     SYSTEM.ReadEEp8
                        MOV       _ACCALO, _ACCA
                        ADIW      _ACCCLO, 01h
                        RCALL     SYSTEM.ReadEEp8
                        MOV       _ACCAHI, _ACCA
                        MOV       _ACCA, _ACCBLO
                        RET

SYSTEM.ReadEEp8D:
                        RCALL     SYSTEM._EEpWaitReady
                        OUT       eearl, _ACCCLO
                        OUT       eearh, _ACCCHI
                        SBI       eecr, 0
                        NOP
                        IN        _ACCDLO, eedr
                        SBRC      Flags, IntFlag
                        SEI
                        RET

SYSTEM.StringDelete:
                        MOV       _ACCAHI, _ACCA
                        POP       _ACCCHI
                        POP       _ACCCLO
                        POP       _ACCB
                        POP       _ACCBHI
                        POP       _ACCBLO
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        TST       _ACCB
                        BREQ      SYSTEM._L0582
                        MOVW      _ACCCLO, _ACCBLO
                        TST       _ACCEHI
                        BRNE      SYSTEM._L0587
                        LD        _ACCA, Z
                        RJMP      SYSTEM._L0588
SYSTEM._L0587:
                        CALL      SYSTEM.ReadEEp8
SYSTEM._L0588:
                        TST       _ACCA
                        BREQ      SYSTEM._L0582
                        TST       _ACCAHI
                        BREQ      SYSTEM._L0582
                        CP        _ACCA, _ACCB
                        BRCS      SYSTEM._L0582
                        CLR       _ACCALO
                        ADD       _ACCCLO, _ACCB
                        ADC       _ACCCHI, _ACCALO
                        MOV       _ACCALO, _ACCAHI
                        ADD       _ACCALO, _ACCB
                        MOV       _ACCDLO, _ACCALO
                        SUB       _ACCALO, _ACCA
                        BRCS      SYSTEM._L0580
                        BREQ      SYSTEM._L0580
                        SUB       _ACCB, _ACCALO
                        TST       _ACCEHI
                        BRNE      SYSTEM._L0583
                        ST        X, _ACCB
SYSTEM._L0582:
                        RET
SYSTEM._L0583:
SYSTEM._L0580:
                        SUB       _ACCA, _ACCAHI
                        TST       _ACCEHI
                        BRNE      SYSTEM._L0584
                        ST        X, _ACCA
                        RJMP      SYSTEM._L0585
SYSTEM._L0584:
SYSTEM._L0585:
                        CLR       _ACCAHI
                        ADD       _ACCBLO, _ACCDLO
                        ADC       _ACCBHI, _ACCAHI
                        NEG       _ACCALO
                        INC       _ACCALO
                        TST       _ACCEHI
                        BREQ      SYSTEM._L0581
SYSTEM._L0586:
SYSTEM._L0581:
                        LD        _ACCA, X+
                        ST        Z+, _ACCA
                        DEC       _ACCALO
                        BRNE     SYSTEM._L0581
                        RET

SYSTEM.StringAppend:
                        POP       _ACCAHI
                        POP       _ACCALO
                        POP       _ACCB
                        POP       _ACCBHI
                        POP       _ACCBLO
                        POP       _ACCCHI
                        POP       _ACCCLO
                        PUSH      _ACCALO
                        PUSH      _ACCAHI
                        MOV       _ACCFLO, _ACCFHI
                        ANDI      _ACCFLO, 10h
                        BREQ      SYSTEM._L0589
SYSTEM._L0589:
                        LD        _ACCA, X
                        INC       _ACCA
                        RJMP      SYSTEM._StrIns

SYSTEM.StringInsert:
                        POP       _ACCAHI
                        POP       _ACCALO
                        POP       _ACCB
                        POP       _ACCBHI
                        POP       _ACCBLO
                        POP       _ACCCHI
                        POP       _ACCCLO
                        PUSH      _ACCALO
                        PUSH      _ACCAHI
SYSTEM._StrIns:
                        MOV       _ACCFLO, _ACCFHI
                        ANDI      _ACCFLO, 3
                        TST       _ACCFLO
                        BREQ      SYSTEM._L0590
                        LSR       _ACCFLO
                        BRNE      SYSTEM._L0592
                        PUSH      _ACCA
                        CALL      SYSTEM.ReadEEp8
                        MOV       _ACCAHI, _ACCA
                        POP       _ACCA
                        ADIW      _ACCCLO, 01h
                        RJMP      SYSTEM._L0591
SYSTEM._L0592:
                        LPM       _ACCAHI, Z+
                        RJMP      SYSTEM._L0591
SYSTEM._L0590:
                        LD        _ACCAHI, Z+
SYSTEM._L0591:
                        TST       _ACCAHI
                        BREQ      SYSTEM._L0599
                        MOV       _ACCFLO, _ACCFHI
                        ANDI      _ACCFLO, 10h
                        BREQ      SYSTEM._L0594
SYSTEM._L0594:
                        LD        _ACCALO, X
SYSTEM._L0596:
                        CP        _ACCB, _ACCA
                        BRCC      SYSTEM._L0598
SYSTEM._L0599:
                        RET
SYSTEM._L0598:
                        MOV       _ACCDLO, _ACCB
                        SUB       _ACCDLO, _ACCA
                        MOV       _ACCDHI, _ACCDLO
                        SUB       _ACCDLO, _ACCAHI
                        BRCS      SYSTEM._L0604
                        CP        _ACCALO, _ACCA
                        BRCC      SYSTEM._L0601
                        MOV       _ACCELO, _ACCAHI
                        ADD       _ACCELO, _ACCALO
                        CP        _ACCB, _ACCELO
                        BRCS      SYSTEM._L0600
                        MOV       _ACCB, _ACCELO
SYSTEM._L0600:
                        RJMP      SYSTEM._L0604
SYSTEM._L0601:
                        PUSH      _ACCBLO
                        PUSH      _ACCBHI
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        MOV       _ACCDHI, _ACCALO
                        SUB       _ACCDHI, _ACCA
                        CP        _ACCDHI, _ACCDLO
                        BRCC      SYSTEM._L0602
                        MOV       _ACCDLO, _ACCDHI
SYSTEM._L0602:
                        CLR       _ACCDHI
                        ADD       _ACCBLO, _ACCA
                        ADC       _ACCBHI, _ACCDHI
                        ADD       _ACCBLO, _ACCDLO
                        ADC       _ACCBHI, _ACCDHI
                        ADIW      _ACCBLO, 1
                        MOVW      _ACCCLO, _ACCBLO
                        ADD       _ACCCLO, _ACCAHI
                        ADC       _ACCCHI, _ACCDHI
                        MOV       _ACCDHI, _ACCDLO
                        INC       _ACCDHI
                        MOV       _ACCFLO, _ACCFHI
                        ANDI      _ACCFLO, 10h
                        BREQ      SYSTEM._L0603
SYSTEM._L0603:
                        LD        _ACCGLO, -X
                        ST        -Z, _ACCGLO
                        DEC       _ACCDHI
                        BRNE     SYSTEM._L0603
SYSTEM._L0597:
                        POP       _ACCCHI
                        POP       _ACCCLO
                        POP       _ACCBHI
                        POP       _ACCBLO
                        MOV       _ACCB, _ACCA
                        ADD       _ACCB, _ACCAHI
                        ADD       _ACCB, _ACCDLO
                        BRNE     SYSTEM._L0608
SYSTEM._L0604:
                        ADD       _ACCAHI, _ACCDLO
                        INC       _ACCAHI
SYSTEM._L0608:
                        MOV       _ACCFLO, _ACCFHI
                        ANDI      _ACCFLO, 10h
                        BREQ      SYSTEM._L0611
SYSTEM._L0611:
                        ST        X, _ACCB
SYSTEM._L0610:
                        CLR       _ACCALO
                        ADD       _ACCBLO, _ACCA
                        ADC       _ACCBHI, _ACCALO
SYSTEM._L0609:
                        MOV       _ACCFLO, _ACCFHI
                        ANDI      _ACCFLO, 3
                        TST       _ACCFLO
                        BREQ      SYSTEM._L0612
                        LSR       _ACCFLO
                        BRNE      SYSTEM._L0614
                        CALL      SYSTEM.ReadEEp8
                        MOV       _ACCGLO, _ACCA
                        ADIW      _ACCCLO, 01h
                        RJMP      SYSTEM._L0613
SYSTEM._L0614:
                        LPM       _ACCGLO, Z+
                        RJMP      SYSTEM._L0613
SYSTEM._L0612:
                        LD        _ACCGLO, Z+
SYSTEM._L0613:
                        MOV       _ACCFLO, _ACCFHI
                        ANDI      _ACCFLO, 10h
                        BREQ      SYSTEM._L0615
SYSTEM._L0615:
                        ST        X+, _ACCGLO
SYSTEM._L0616:
                        DEC       _ACCAHI
                        BRNE     SYSTEM._L0609
SYSTEM._L0607:
                        RET

SYSTEM.Str2Int:
                        CLR       _ACCAHI
                        CLR       _ACCALO
                        CLR       _ACCBHI
                        CLR       _ACCBLO
                        BST       Flags, _EEPROM
                        BRTC      SYSTEM._L0621
                        CALL      SYSTEM.ReadEEp8
                        ADIW      _ACCCLO, 01h
                        RJMP     SYSTEM._L0622
SYSTEM._L0621:
                        LD        _ACCA, Z+
SYSTEM._L0622:
                        TST       _ACCA
                        BRNE      SYSTEM._L0618
SYSTEM._L0617:
                        CLR       _ACCA
                        CLR       _ACCB
                        RET

SYSTEM._L0618:
                        MOV       _ACCDHI, _ACCA
                        TST       _ACCB
                        BREQ      SYSTEM._L0623
                        INC       _ACCDHI
                        RJMP      SYSTEM.Hex2Int
SYSTEM._L0623:
                        BST       Flags, _EEPROM
                        BRTC      SYSTEM._L0624
                        CALL      SYSTEM.ReadEEp8
                        ADIW      _ACCCLO, 01h
                        RJMP     SYSTEM._L0625
SYSTEM._L0624:
                        LD        _ACCA, Z+
SYSTEM._L0625:
                        CLT
                        BLD       Flags, _NEGATIVE
                        CPI       _ACCA, 02Dh
                        BRNE      SYSTEM._L0619
                        DEC       _ACCDHI
                        BREQ      SYSTEM._L0617
                        SET
                        BLD       Flags, _NEGATIVE
                        BST       Flags, _EEPROM
                        BRTC      SYSTEM._L0626
                        CALL      SYSTEM.ReadEEp8
                        ADIW      _ACCCLO, 01h
                        RJMP     SYSTEM._L0627
SYSTEM._L0626:
                        LD        _ACCA, Z+
SYSTEM._L0627:
                        RJMP      SYSTEM.Dec2Int
SYSTEM._L0619:
                        CPI       _ACCA, 02Bh
                        BRNE      SYSTEM._L0620
                        DEC       _ACCDHI
                        BREQ      SYSTEM._L0617
                        CLT
                        BLD       Flags, _NEGATIVE
                        BST       Flags, _EEPROM
                        BRTC      SYSTEM._L0628
                        CALL      SYSTEM.ReadEEp8
                        ADIW      _ACCCLO, 01h
                        RJMP     SYSTEM._L0629
SYSTEM._L0628:
                        LD        _ACCA, Z+
SYSTEM._L0629:
                        RJMP      SYSTEM.Dec2Int
SYSTEM._L0620:
                        CPI       _ACCA, 024h
                        BRNE      SYSTEM.Dec2Int
                        RJMP      SYSTEM.Hex2Int
SYSTEM.Dec2Int:
                        MOV       _ACCB, _ACCDHI
                        DEC       _ACCB
                        BRMI      SYSTEM._L0617
                        CLR       _ACCDHI
                        CLR       _ACCEHI
                        CLR       _ACCFHI
                        CLR       _ACCFLO
                        PUSH      _ACCB
                        RJMP      SYSTEM.Dec2Int1
SYSTEM._L0630:
                        PUSH      _ACCB
                        BST       Flags, _EEPROM
                        BRTC      SYSTEM._L0633
                        CALL      SYSTEM.ReadEEp8
                        ADIW      _ACCCLO, 01h
                        RJMP     SYSTEM._L0634
SYSTEM._L0633:
                        LD        _ACCA, Z+
SYSTEM._L0634:
SYSTEM.Dec2Int1:
                        CPI       _ACCA, 030h
                        BRCS      SYSTEM.Str2Ierr1
                        CPI       _ACCA, 03Ah
                        BRCC      SYSTEM.Str2Ierr1
                        SUBI      _ACCA, 030h
                        MOV       _ACCDLO, _ACCA
                        MOVW      _ACCB, _ACCBLO
                        LSL       _ACCB
                        ROL       _ACCA
                        ROL       _ACCEHI
                        ROL       _ACCFHI
                        LSL       _ACCB
                        ROL       _ACCA
                        ROL       _ACCEHI
                        ROL       _ACCFHI
                        ADD       _ACCB, _ACCBLO
                        ADC       _ACCA, _ACCBHI
                        ADC       _ACCEHI, _ACCFLO
                        ADC       _ACCFHI, _ACCFLO
                        ADD       _ACCEHI, _ACCALO
                        ADC       _ACCFHI, _ACCAHI
                        LSL       _ACCB
                        ROL       _ACCA
                        ROL       _ACCEHI
                        ROL       _ACCFHI
                        ADD       _ACCB, _ACCDLO
                        ADC       _ACCA, _ACCDHI
                        ADC       _ACCEHI, _ACCFLO
                        ADC       _ACCFHI, _ACCFLO
                        MOVW      _ACCBLO, _ACCB
                        MOV       _ACCALO, _ACCEHI
                        MOV       _ACCAHI, _ACCFHI
                        POP       _ACCB
                        DEC       _ACCB
                        BRMI      SYSTEM.Str2Iex
                        RJMP      SYSTEM._L0630
SYSTEM.Str2Ierr1:
                        POP       _ACCB
SYSTEM.Str2Ierr:
                        SET
                        BLD       Flags, _ERRFLAG
                        CLR       _ACCA
                        CLR       _ACCB
                        CLR       _ACCAHI
                        CLR       _ACCALO
                        RET

SYSTEM.Str2Iex:
                        MOVW      _ACCB, _ACCBLO
                        BST       Flags, _NEGATIVE
                        BRTC      SYSTEM._L0635
                        SUBI      _ACCB, 01h
                        SBCI      _ACCA, 00h
                        SBCI      _ACCALO, 00h
                        SBCI      _ACCAHI, 00h
                        COM       _ACCALO
                        COM       _ACCAHI
                        COM       _ACCA
                        COM       _ACCB
SYSTEM._L0635:
                        RET

SYSTEM.Hex2Int:
                        CLT
                        BLD       Flags, _NEGATIVE
                        DEC       _ACCDHI
                        BREQ      SYSTEM._L0635
                        CPI       _ACCDHI, 009h
                        BRSH      SYSTEM.Str2Ierr
SYSTEM._L0636:
                        BST       Flags, _EEPROM
                        BRTC      SYSTEM._L0640
                        CALL      SYSTEM.ReadEEp8
                        ADIW      _ACCCLO, 01h
                        RJMP     SYSTEM._L0641
SYSTEM._L0640:
                        LD        _ACCA, Z+
SYSTEM._L0641:
                        CPI       _ACCA, 061h
                        BRLO      SYSTEM._L0637
                        SUBI      _ACCA, 020h
SYSTEM._L0637:
                        CPI       _ACCA, 030h
                        BRLO      SYSTEM.Str2Ierr
                        CPI       _ACCA, 03Ah
                        BRLO      SYSTEM._L0638
                        CPI       _ACCA, 041h
                        BRLO      SYSTEM.Str2Ierr
                        CPI       _ACCA, 047h
                        BRSH      SYSTEM.Str2Ierr
                        SUBI      _ACCA, -9 AND 0FFh
SYSTEM._L0638:
                        ANDI      _ACCA, 00Fh
                        LDI       _ACCB, 4
SYSTEM._L0639:
                        LSL       _ACCBLO
                        ROL       _ACCBHI
                        ROL       _ACCALO
                        ROL       _ACCAHI
                        DEC       _ACCB
                        BRNE      SYSTEM._L0639
                        OR        _ACCBLO, _ACCA
                        DEC       _ACCDHI
                        BRNE      SYSTEM._L0636
                        RJMP      SYSTEM.Str2Iex
SYSTEM.PosChInVarStr:
                        CLR       _ACCA
                        LD        _ACCBHI, Z
                        TST       _ACCBHI
                        BREQ      SYSTEM._L0643
                        TST       _ACCELO
                        BRNE      SYSTEM._L0642
                        INC       _ACCELO
SYSTEM._L0642:
                        CP        _ACCBHI, _ACCELO
                        BRCS      SYSTEM._L0643
                        ADD       _ACCCLO, _ACCELO
                        ADC       _ACCCHI, _ACCA
                        DEC       _ACCELO
                        SUB       _ACCBHI, _ACCELO
                        MOV       _ACCA, _ACCELO
SYSTEM._L0644:
                        INC       _ACCA
                        LD        _ACCBLO, Z+
                        CP        _ACCB, _ACCBLO
                        BREQ      SYSTEM._L0643
                        DEC       _ACCBHI
                        BRNE      SYSTEM._L0644
                        CLR       _ACCA
SYSTEM._L0643:
                        RET


SYSTEM.UpperCaseStr:
                        LD        _ACCA, Z+
                        TST       _ACCA
                        BREQ      SYSTEM._L0646
                        MOV       _ACCBHI, _ACCA
SYSTEM._L0645:
                        LD        _ACCA, Z+
                        CPI       _ACCA, 061h
                        BRCS      SYSTEM._L0647
                        CPI       _ACCA, 07Bh
                        BRCC      SYSTEM._L0647
                        ANDI      _ACCA, 0DFh
SYSTEM._L0647:
                        CALL      SYSTEM.Char2Str
                        DEC       _ACCBHI
                        BRNE      SYSTEM._L0645
SYSTEM._L0646:
                        RET


SYSTEM.StrCopyV:
                        TST       _ACCA
                        BREQ      SYSTEM._L0650
                        LD        _ACCBHI, Z
                        TST       _ACCBHI
                        BREQ      SYSTEM._L0650
                        SUB       _ACCBHI, _ACCB
                        BRCS      SYSTEM._L0650
                        INC       _ACCBHI
                        CLR       _ACCBLO
                        ADD       _ACCCLO, _ACCB
                        ADC       _ACCCHI, _ACCBLO
                        CP        _ACCBHI, _ACCA
                        BRCS      SYSTEM._L0649
                        MOV       _ACCBHI, _ACCA
SYSTEM._L0649:
                        LD        _ACCA, Z+
                        CALL      SYSTEM.Char2Str
                        DEC       _ACCBHI
                        BRNE      SYSTEM._L0649
SYSTEM._L0650:
                        RET


SYSTEM.StrConst2Str:
SYSTEM._L0651:
                        LPM      _ACCA, Z+
                        CALL      SYSTEM.Char2Str
                        DEC       _ACCBHI
                        BRNE      SYSTEM._L0651
                        RET


SYSTEM.StrVar2Str:
                        LD        _ACCA, Z+
                        TST       _ACCA
                        BREQ      SYSTEM._L0653
                        MOV       _ACCBHI, _ACCA
SYSTEM._L0652:
                        LD        _ACCA, Z+
                        CALL      SYSTEM.Char2Str
                        DEC       _ACCBHI
                        BRNE      SYSTEM._L0652
SYSTEM._L0653:
                        RET


SYSTEM.Byte2Str:
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        SBIW      _FRAMEPTR, 6
                        LDD       _ACCB, Y+9
                        CLR       _ACCA
                        MOVW      _ACCALO, _ACCB
                        ANDI      _ACCB, 0Fh
                        SWAP      _ACCALO
                        ANDI      _ACCALO, 0Fh
                        MOVW      _ACCELO, _ACCALO
                        LSL       _ACCELO
                        ROL       _ACCEHI
                        LSL       _ACCELO
                        ROL       _ACCEHI
                        MOVW      _ACCDLO, _ACCB
                        SUB       _ACCDLO, _ACCELO
                        SBC       _ACCDHI, _ACCEHI
                        SUBI      _ACCDLO, 20 AND 0FFh
                        SBCI      _ACCDHI, 0
                        STD       Y+0, _ACCDLO
                        STD       Y+1, _ACCDHI
                        MOVW      _ACCDLO, _ACCALO
                        LSL       _ACCDLO
                        ROL       _ACCDHI
                        SUBI      _ACCDLO, 38 AND 0FFh
                        SBCI      _ACCDHI, 0
                        STD       Y+2, _ACCDLO
                        STD       Y+3, _ACCDHI
                        LDI       _ACCDLO, 4
                        STD       Y+4, _ACCDLO
                        STD       Y+5, _ACCA
                        MOVW      _ACCCLO, _FRAMEPTR
                        LDI       _ACCA, 2
                        LDD       R24, Z+0
                        LDD       R25, Z+1
                        LDD       R26, Z+2
                        LDD       R27, Z+3
SYSTEM._cv8_1:
                        TST       R25
                        BRPL      SYSTEM._cv8_2
                        ADIW      R24, 10
                        SBIW      R26, 1
                        RJMP      SYSTEM._cv8_1
SYSTEM._cv8_2:
                        ST        Z+, R24
                        ST        Z+, R25
                        MOVW      R24, R26
                        DEC       _ACCA
                        BREQ      SYSTEM._cv8_X
                        LDD       R26, Z+2
                        LDD       R27, Z+3
                        RJMP      SYSTEM._cv8_1
SYSTEM._cv8_X:
                        ST        Z+, R24
                        ST        Z+, R25
                        LDD       _ACCALO, Y+8
                        LDD       _ACCAHI, Y+7
                        LDD       _ACCDLO, Y+6
                        LDI       _ACCDHI, 3
                        LDI       _ACCFLO, 0
                        MOVW      _ACCCLO, _FRAMEPTR
                        MOVW      _ACCBLO, _FRAMEPTR
                        ADIW      XL, 10
                        RCALL     SYSTEM._B2STR
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        RET


SYSTEM.Long2Str:
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        SBIW      _FRAMEPTR, 28
                        MOVW      _ACCBLO, _FRAMEPTR
                        ADIW      XL, 20
                        MOVW      _ACCCLO, _FRAMEPTR
                        ADIW      ZL, 31
                        CLR       _ACCFLO
                        BST       Flags, _SIGN
                        BRTC      SYSTEM._cv32_0
                        LDD       _ACCAHI, Z+3
                        TST       _ACCAHI
                        BRPL      SYSTEM._cv32_0
                        LDI       _ACCFLO, 2Dh
                        LDD       _ACCALO, Z+2
                        LDD       _ACCA, Z+1
                        LDD       _ACCB, Z+0
                        SUBI      _ACCB, 01h
                        SBCI      _ACCA, 00h
                        SBCI      _ACCALO, 00h
                        SBCI      _ACCAHI, 00h
                        COM       _ACCB
                        COM       _ACCA
                        COM       _ACCALO
                        COM       _ACCAHI
                        STD       Z+0, _ACCB
                        STD       Z+1, _ACCA
                        STD       Z+2, _ACCALO
                        STD       Z+3, _ACCAHI
SYSTEM._cv32_0:
                        LDI       _ACCALO, 4
                        PUSH      _ACCFLO
SYSTEM._cv32_LP:
                        LDD       _ACCB, Z+000h
                        ANDI      _ACCB, 0fh
                        ST        X+, _ACCB
                        LD        _ACCB, Z+
                        SWAP      _ACCB
                        ANDI      _ACCB, 0fh
                        ST        X+, _ACCB
                        DEC       _ACCALO
                        BRNE      SYSTEM._cv32_LP
                        LDI       _ACCBHI, 0
                        MOVW      _ACCCLO, _FRAMEPTR
                        ADIW      ZL, 20
                        LDD       _ACCELO, Z+1
                        LDI       _ACCEHI, 0
                        LDD       _ACCDLO, Z+2
                        ADD       _ACCELO, _ACCDLO
                        ADC       _ACCEHI, _ACCBHI
                        LDD       _ACCDLO, Z+3
                        ADD       _ACCELO, _ACCDLO
                        ADC       _ACCEHI, _ACCBHI
                        LDD       _ACCDLO, Z+4
                        ADD       _ACCELO, _ACCDLO
                        ADC       _ACCEHI, _ACCBHI
                        LDD       _ACCDLO, Z+5
                        ADD       _ACCELO, _ACCDLO
                        ADC       _ACCEHI, _ACCBHI
                        LDD       _ACCDLO, Z+6
                        ADD       _ACCELO, _ACCDLO
                        ADC       _ACCEHI, _ACCBHI
                        LDD       _ACCDLO, Z+7
                        ADD       _ACCELO, _ACCDLO
                        ADC       _ACCEHI, _ACCBHI
                        LSL       _ACCELO
                        ROL       _ACCEHI
                        LSL       _ACCELO
                        ROL       _ACCEHI
                        LDD       _ACCDLO, Z+0
                        CLR       _ACCDHI
                        SUB       _ACCDLO, _ACCELO
                        SBC       _ACCDHI, _ACCEHI
                        SUBI      _ACCDLO, 20 AND 0FFh
                        SBCI      _ACCDHI, 0
                        STD       Y+0, _ACCDLO
                        STD       Y+1, _ACCDHI
                        LDD       _ACCELO, Z+1
                        CLR       _ACCEHI
                        LDD       _ACCDLO, Z+6
                        ADD       _ACCELO, _ACCDLO
                        ADC       _ACCEHI, _ACCBHI
                        LSL       _ACCELO
                        ROL       _ACCEHI
                        LDD       _ACCALO, Z+2
                        LDD       _ACCB, Z+7
                        CLR       _ACCA
                        ADD       _ACCB, _ACCALO
                        ADC       _ACCA, _ACCBHI
                        RCALL     SYSTEM._MUL6
                        ADD       _ACCELO, _ACCB
                        ADC       _ACCEHI, _ACCA
                        LDD       _ACCDLO, Z+4
                        CLR       _ACCDHI
                        LSL       _ACCDLO
                        ROL       _ACCDHI
                        LSL       _ACCDLO
                        ROL       _ACCDHI
                        ADD       _ACCELO, _ACCDLO
                        ADC       _ACCEHI, _ACCDHI
                        LDD       _ACCB, Z+5
                        CLR       _ACCA
                        RCALL     SYSTEM._MUL8
                        ADD       _ACCELO, _ACCB
                        ADC       _ACCEHI, _ACCA
                        SUBI      _ACCELO, 428 AND 0FFh
                        SBCI      _ACCEHI, 428 SHRB 8
                        STD       Y+2, _ACCELO
                        STD       Y+3, _ACCEHI
                        LDD       _ACCELO, Z+2
                        CLR       _ACCEHI
                        LDD       _ACCDLO, Z+6
                        ADD       _ACCELO, _ACCDLO
                        ADC       _ACCEHI, _ACCBHI
                        LSL       _ACCELO
                        ROL       _ACCEHI
                        LDD       _ACCDLO, Z+3
                        ADD       _ACCELO, _ACCDLO
                        ADC       _ACCEHI, _ACCBHI
                        LDD       _ACCB, Z+4
                        CLR       _ACCA
                        LDD       _ACCDLO, Z+5
                        ADD       _ACCB, _ACCDLO
                        ADC       _ACCA, _ACCBHI
                        RCALL     SYSTEM._MUL5
                        ADD       _ACCELO, _ACCB
                        ADC       _ACCEHI, _ACCA
                        LDD       _ACCDLO, Z+7
                        CLR       _ACCDHI
                        LSL       _ACCDLO
                        ROL       _ACCDHI
                        LSL       _ACCDLO
                        ROL       _ACCDHI
                        ADD       _ACCELO, _ACCDLO
                        ADC       _ACCEHI, _ACCDHI
                        SUBI      _ACCELO, 287 AND 0FFh
                        SBCI      _ACCEHI, 287 SHRB 8
                        STD       Y+4, _ACCELO
                        STD       Y+5, _ACCEHI
                        LDD       _ACCELO, Z+3
                        CLR       _ACCEHI
                        LSL       _ACCELO
                        ROL       _ACCEHI
                        LSL       _ACCELO
                        ROL       _ACCEHI
                        LDD       _ACCB, Z+4
                        CLR       _ACCA
                        LDD       _ACCDLO, Z+7
                        ADD       _ACCB, _ACCDLO
                        ADC       _ACCA, _ACCBHI
                        RCALL     SYSTEM._MUL5
                        ADD       _ACCELO, _ACCB
                        ADC       _ACCEHI, _ACCA
                        LDD       _ACCB, Z+5
                        CLR       _ACCA
                        RCALL     SYSTEM._MUL8
                        ADD       _ACCELO, _ACCB
                        ADC       _ACCEHI, _ACCA
                        LDD       _ACCB, Z+6
                        CLR       _ACCA
                        RCALL     SYSTEM._MUL7
                        ADD       _ACCELO, _ACCB
                        ADC       _ACCEHI, _ACCA
                        SUBI      _ACCELO, 437 AND 0FFh
                        SBCI      _ACCEHI, 437 SHRB 8
                        STD       Y+6, _ACCELO
                        STD       Y+7, _ACCEHI
                        LDD       _ACCELO, Z+5
                        CLR       _ACCEHI
                        LSL       _ACCELO
                        ROL       _ACCEHI
                        LSL       _ACCELO
                        ROL       _ACCEHI
                        LDD       _ACCB, Z+4
                        CLR       _ACCA
                        RCALL     SYSTEM._MUL6
                        ADD       _ACCELO, _ACCB
                        ADC       _ACCEHI, _ACCA
                        LDD       _ACCB, Z+6
                        CLR       _ACCA
                        RCALL     SYSTEM._MUL7
                        ADD       _ACCELO, _ACCB
                        ADC       _ACCEHI, _ACCA
                        LDD       _ACCB, Z+7
                        CLR       _ACCA
                        RCALL     SYSTEM._MUL3
                        ADD       _ACCELO, _ACCB
                        ADC       _ACCEHI, _ACCA
                        SUBI      _ACCELO, 303 AND 0FFh
                        SBCI      _ACCEHI, 303 SHRB 8
                        STD       Y+8, _ACCELO
                        STD       Y+9, _ACCEHI
                        LDD       _ACCELO, Z+7
                        CLR       _ACCEHI
                        LSL       _ACCELO
                        ROL       _ACCEHI
                        LSL       _ACCELO
                        ROL       _ACCEHI
                        LDD       _ACCB, Z+6
                        CLR       _ACCA
                        RCALL     SYSTEM._MUL7
                        ADD       _ACCELO, _ACCB
                        ADC       _ACCEHI, _ACCA
                        SUBI      _ACCELO, 165 AND 0FFh
                        SBCI      _ACCEHI, 165 SHRB 8
                        STD       Y+10, _ACCELO
                        STD       Y+11, _ACCEHI
                        LDD       _ACCELO, Z+5
                        CLR       _ACCEHI
                        LDD       _ACCB, Z+6
                        CLR       _ACCA
                        RCALL     SYSTEM._MUL6
                        ADD       _ACCELO, _ACCB
                        ADC       _ACCEHI, _ACCA
                        LDD       _ACCB, Z+7
                        CLR       _ACCA
                        RCALL     SYSTEM._MUL8
                        ADD       _ACCELO, _ACCB
                        ADC       _ACCEHI, _ACCA
                        SUBI      _ACCELO, 230 AND 0FFh
                        SBCI      _ACCEHI, 230 SHRB 8
                        STD       Y+12, _ACCELO
                        STD       Y+13, _ACCEHI
                        LDD       _ACCELO, Z+6
                        CLR       _ACCEHI
                        LDD       _ACCB, Z+7
                        CLR       _ACCA
                        RCALL     SYSTEM._MUL6
                        ADD       _ACCELO, _ACCB
                        ADC       _ACCEHI, _ACCA
                        SUBI      _ACCELO, 105 AND 0FFh
                        SBCI      _ACCEHI, 105 SHRB 8
                        STD       Y+14, _ACCELO
                        STD       Y+15, _ACCEHI
                        LDD       _ACCELO, Z+7
                        CLR       _ACCEHI
                        LSL       _ACCELO
                        ROL       _ACCEHI
                        SUBI      _ACCELO, 37 AND 0FFh
                        SBCI      _ACCEHI, 37 SHRB 8
                        STD       Y+16, _ACCELO
                        STD       Y+17, _ACCEHI
                        LDI       _ACCELO, 5
                        LDI       _ACCEHI, 0
                        STD       Y+18, _ACCELO
                        STD       Y+19, _ACCEHI
                        MOVW      _ACCCLO, _FRAMEPTR
                        LDI       _ACCA, 9
                        LDD       R24, Z+0
                        LDD       R25, Z+1
                        LDD       R26, Z+2
                        LDD       R27, Z+3
SYSTEM._cv32_1:
                        TST       R25
                        BRPL      SYSTEM._cv32_2
                        ADIW      R24, 10
                        SBIW      R26, 1
                        RJMP      SYSTEM._cv32_1
SYSTEM._cv32_2:
                        ST        Z+, R24
                        ST        Z+, R25
                        MOVW      R24, R26
                        DEC       _ACCA
                        BREQ      SYSTEM._cv32_X
                        LDD       R26, Z+2
                        LDD       R27, Z+3
                        RJMP      SYSTEM._cv32_1
SYSTEM._cv32_X:
                        ST        Z+, R24
                        ST        Z+, R25
                        POP       _ACCFLO
                        LDD       _ACCALO, Y+30
                        LDD       _ACCAHI, Y+29
                        LDD       _ACCDLO, Y+28
                        LDI       _ACCDHI, 10
                        MOVW      _ACCCLO, _FRAMEPTR
                        MOVW      _ACCBLO, _FRAMEPTR
                        ADIW      XL, 35
                        RCALL     SYSTEM._B2STR
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        RET

SYSTEM._B2STR:
                        PUSH      _ACCBLO
                        PUSH      _ACCBHI
                        LD        _ACCA, X+
                        LD        _ACCB, X+
                        LD        _ACCELO, X+
                        ST        -Y, _ACCELO
                        ST        -Y, _ACCB
                        ST        -Y, _ACCA
                        TST       _ACCFLO
                        BREQ       SYSTEM._B2STR_NM
                        TST       _ACCALO
                        BREQ       SYSTEM._B2STR_NM
                        DEC       _ACCALO
SYSTEM._B2STR_NM:
                        MOV       _ACCELO, _ACCDHI
                        MOV       _ACCEHI, _ACCDHI
                        LSL       _ACCEHI
                        DEC       _ACCEHI
                        MOVW      _ACCBLO, _ACCCLO
                        CLR       _ACCB
                        ADD       XL, _ACCEHI
                        ADC       XH, _ACCB
SYSTEM._B2STR_0:
                        LD        _ACCA, -X
                        TST       _ACCA
                        BRNE       SYSTEM._B2STR_1
                        SBIW      XL, 1
                        DEC       _ACCELO
                        BRNE       SYSTEM._B2STR_0
SYSTEM._B2STR_1:
                        TST       _ACCELO
                        BRNE       SYSTEM._B2STR_2
                        ADIW      XL, 1
                        INC       _ACCELO
SYSTEM._B2STR_2:
                        ADIW      XL, 2
                        TST       _ACCAHI
                        BRNE       SYSTEM._B2STR_PNT
                        TST       _ACCALO
                        BREQ       SYSTEM._B2STR_3
                        RJMP       SYSTEM._B2STR_FILL
SYSTEM._B2STR_3:
                        RJMP       SYSTEM._B2STR_WR
SYSTEM._B2STR_PNT:
                        TST       _ACCALO
                        BREQ       SYSTEM._B2STR_PNTE0
                        DEC       _ACCALO
SYSTEM._B2STR_PNTE0:
                        CLR       _ACCB
                        MOVW      _ACCBLO, _ACCCLO
                        CP        _ACCAHI, _ACCDHI
                        BRCC       SYSTEM._B2STR_PNTGT
                        MOV       _ACCEHI, _ACCAHI
                        LSL       _ACCEHI
                        ADD       XL, _ACCEHI
                        ADC       XH, _ACCB
                        LDI       _ACCA, 2Eh
                        ST        -X, _ACCA
                        CP        _ACCAHI, _ACCELO
                        BRCS       SYSTEM._B2STR_PNTE1
                        MOV       _ACCELO, _ACCAHI
                        INC       _ACCELO
SYSTEM._B2STR_PNTE1:
                        MOV       _ACCEHI, _ACCELO
                        LSL       _ACCEHI
                        MOVW      _ACCBLO, _ACCCLO
                        ADD       XL, _ACCEHI
                        ADC       XH, _ACCB
                        RJMP       SYSTEM._B2STR_FILL
SYSTEM._B2STR_PNTGT:
                        ADD       XL, _ACCEHI
                        ADC       XH, _ACCB
                        ADIW      XL, 1
                        MOV       _ACCEHI, _ACCAHI
                        ADDI      _ACCEHI, 2
                        CP        _ACCALO, _ACCEHI
                        BRCS       SYSTEM._B2STR_PNTG0
                        MOV       _ACCB, _ACCALO
                        SUB       _ACCB, _ACCEHI
                        INC       _ACCB
                        RJMP       SYSTEM._B2STR_PNTG1
SYSTEM._B2STR_PNTG0:
                        CLR       _ACCB
SYSTEM._B2STR_PNTG1:
                        MOV       _ACCALO, _ACCB
SYSTEM._B2STR_PNTG2:
                        TST       _ACCB
                        BREQ       SYSTEM._B2STR_PNTG3
                        MOV       _ACCA, _ACCDLO
                        CALL      SYSTEM.Char2Str
                        DEC       _ACCB
                        RJMP       SYSTEM._B2STR_PNTG2
SYSTEM._B2STR_PNTG3:
                        MOV       _ACCEHI, _ACCAHI
                        SUB       _ACCEHI, _ACCDHI
                        MOV       _ACCELO, _ACCDHI
                        ADD       _ACCALO, _ACCEHI
                        TST       _ACCFLO
                        BREQ       SYSTEM._B2STR_PNTG4
                        MOV       _ACCA, _ACCFLO
                        CALL      SYSTEM.Char2Str
                        CLR       _ACCFLO
                        INC       _ACCALO
SYSTEM._B2STR_PNTG4:
                        ADDI      _ACCALO, 2
                        LDI       _ACCA, 30h
                        CALL      SYSTEM.Char2Str
                        LDI       _ACCA, 2Eh
                        CALL      SYSTEM.Char2Str
                        LDI       _ACCA, 30h
SYSTEM._B2STR_PNTG5:
                        TST       _ACCEHI
                        BREQ       SYSTEM._B2STR_WR
                        CALL      SYSTEM.Char2Str
                        DEC       _ACCEHI
                        RJMP       SYSTEM._B2STR_PNTG5
SYSTEM._B2STR_FILL:
                        CP        _ACCELO, _ACCALO
                        BRCS       SYSTEM._B2STR_F0
                        CLR       _ACCALO
                        RJMP       SYSTEM._B2STR_WR
SYSTEM._B2STR_F0:
                        SUB       _ACCALO, _ACCELO
                        MOV       _ACCB, _ACCALO
SYSTEM._B2STR_F1:
                        MOV       _ACCA, _ACCDLO
                        CALL      SYSTEM.Char2Str
                        DEC       _ACCB
                        BRNE       SYSTEM._B2STR_F1
SYSTEM._B2STR_WR:
                        TST       _ACCFLO
                        BREQ       SYSTEM._B2STR_WR0
                        MOV       _ACCA, _ACCFLO
                        CALL      SYSTEM.Char2Str
SYSTEM._B2STR_WR0:
                        LD        _ACCA, -X
                        TST       _ACCA
                        BREQ       SYSTEM._B2STR_WR1
                        CALL      SYSTEM.Char2Str
SYSTEM._B2STR_WR1:
                        LD        _ACCA, -X
                        ORI       _ACCA, 30h
                        CALL      SYSTEM.Char2Str
                        DEC       _ACCELO
                        BRNE       SYSTEM._B2STR_WR0
                        POP       _ACCBHI
                        POP       _ACCBLO
                        LDD        _ACCA, Y+0
                        ST         X+, _ACCA
                        LDD        _ACCA, Y+1
                        ST         X+, _ACCA
                        LDD        _ACCA, Y+2
                        ST         X+, _ACCA
                        RET

SYSTEM._MUL3:
                        MOVW      _ACCALO, _ACCB
                        LSL       _ACCB
                        ROL       _ACCA
                        ADD       _ACCB, _ACCALO
                        ADC       _ACCA, _ACCAHI
                        RET

SYSTEM._MUL5:
                        MOVW      _ACCALO, _ACCB
                        LSL       _ACCB
                        ROL       _ACCA
                        LSL       _ACCB
                        ROL       _ACCA
                        ADD       _ACCB, _ACCALO
                        ADC       _ACCA, _ACCAHI
                        RET

SYSTEM._MUL6:
                        LSL       _ACCB
                        ROL       _ACCA
                        MOVW      _ACCALO, _ACCB
                        LSL       _ACCB
                        ROL       _ACCA
                        ADD       _ACCB, _ACCALO
                        ADC       _ACCA, _ACCAHI
                        RET

SYSTEM._MUL7:
                        MOVW      _ACCALO, _ACCB
                        MOVW      _ACCDLO, _ACCB
                        LSL       _ACCB
                        ROL       _ACCA
                        LSL       _ACCB
                        ROL       _ACCA
                        LSL       _ACCALO
                        ROL       _ACCAHI
                        ADD       _ACCB, _ACCALO
                        ADC       _ACCA, _ACCAHI
                        ADD       _ACCB, _ACCDLO
                        ADC       _ACCA, _ACCDHI
                        RET

SYSTEM._MUL8:
                        LSL       _ACCB
                        ROL       _ACCA
                        LSL       _ACCB
                        ROL       _ACCA
                        LSL       _ACCB
                        ROL       _ACCA
                        RET


SYSTEM.Int2Str:
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        SBIW      _FRAMEPTR, 10
                        LDD       XL, Y+13
                        LDD       XH, Y+14
                        CLR       _ACCFLO
                        BST       Flags, _SIGN
                        BRTC      SYSTEM._cv16_0
                        TST       XH
                        BRPL      SYSTEM._cv16_0
                        LDI       _ACCFLO, 2Dh
                        SUBI      XL, 01h
                        SBCI      XH, 00h
                        COM       XL
                        COM       XH
SYSTEM._cv16_0:
                        PUSH      _ACCFLO
                        mov       r24, XH
                        swap      r24
                        andi      r24, 0Fh
                        subi      r24, -0F0h and 0FFh
                        mov       r19, r24
                        add       r19, r24
                        subi      r24, -0E2h and 0ffh
                        mov       r18, r24
                        subi      r24, -32h and 0ffh
                        mov       r16, r24
                        mov       r24, XH
                        andi      r24, 0Fh
                        add       r18, r24
                        add       r18, r24
                        add       r16, r24
                        subi      r24, -0E9h and $ff
                        mov       r17, r24
                        add       r17, r24
                        add       r17, r24
                        mov       r24, XL
                        swap      r24
                        andi      r24, 0Fh
                        add       r17, r24
                        add       r16, r24
                        rol       r17
                        rol       r16
                        com       r16
                        clc
                        rol       r16
                        mov       r24, XL
                        andi      r24, 0Fh
                        add       r16, r24
                        rol       r19
                        ldi       r24, 07h
                        mov       r20, r24
                        ldi       r24, 0Ah
SYSTEM._cv16_1:
                        add       r16,r24
                        dec       r17
                        brcc      SYSTEM._cv16_1
SYSTEM._cv16_2:
                        add       r17, r24
                        dec       r18
                        brcc      SYSTEM._cv16_2
SYSTEM._cv16_3:
                        add       r18, r24
                        dec       r19
                        brcc      SYSTEM._cv16_3
SYSTEM._cv16_4:
                        add       r19, r24
                        dec       r20
                        brcc      SYSTEM._cv16_4
SYSTEM._cv16_5:
                        MOVW      _ACCBLO, _FRAMEPTR
                        clr       ZH
                        ldi       ZL, 16
                        ldi       r25, 5
                        ldi       r23, 0
SYSTEM._cv16_6:
                        ld        r24, Z+
                        st        X+, r24
                        st        X+, r23
                        dec       r25
                        brne      SYSTEM._cv16_6
                        LDD       _ACCALO, Y+12
                        LDD       _ACCAHI, Y+11
                        LDD       _ACCDLO, Y+10
                        LDI       _ACCDHI, 5
                        POP       _ACCFLO
                        MOVW      _ACCCLO, _FRAMEPTR
                        MOVW      _ACCBLO, _FRAMEPTR
                        ADIW      XL, 15
                        RCALL     SYSTEM._B2STR
                        POP       _FPTRHI
                        POP       _FRAMEPTR
                        RET


SYSTEM.StringComp:
                        LD        _ACCB, X+
                        SBRC      FLAGS, _STRCONST
                        RJMP      SYSTEM._L0654
                        LD        _ACCGLO, Z+
                        RJMP      SYSTEM._L0655
SYSTEM._L0654:
                        LPM       _ACCGLO, Z+
SYSTEM._L0655:
                        CP        _ACCB, _ACCGLO
                        BREQ      SYSTEM._L0656
                        CLZ
                        RET
SYSTEM._L0656:
                        TST       _ACCB
                        BRNE      SYSTEM._L0657
                        SEZ
                        RET
SYSTEM._L0657:
                        DEC       _ACCB
                        LD        _ACCA, X+
                        SBRC      FLAGS, _STRCONST
                        RJMP      SYSTEM._L0658
                        LD        _ACCGLO, Z+
                        RJMP      SYSTEM._L0659
SYSTEM._L0658:
                        LPM       _ACCGLO, Z+
SYSTEM._L0659:
                        CP        _ACCA, _ACCGLO
                        BREQ      SYSTEM._L0656
                        CLZ
                        RET


SYSTEM.Char2Str:
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        BST       Flags, _DEVICE
                        BRTS      SYSTEM._L0663
                        PUSH      _ACCA
                        LDD       _ACCCLO, Y+001h
                        LDD       _ACCCHI, Y+002h
                        LDD       _ACCA, Y+000h
                        TST       _ACCA
                        BRNE      SYSTEM._L0660
                        POP       _ACCA
                        SET
                        BLD       Flags, _ERRFLAG
                        POP       _ACCCHI
                        POP       _ACCCLO
                        RET
SYSTEM._L0660:
                        DEC       _ACCA
                        STD       Y+000h, _ACCA
                        POP       _ACCA
                        ST        Z+, _ACCA
                        STD       Y+002h, _ACCCHI
                        STD       Y+001h, _ACCCLO
                        POP       _ACCCHI
                        POP       _ACCCLO
                        RET
SYSTEM._L0663:
                        LDD       _ACCCLO, Y+000h
                        LDD       _ACCCHI, Y+001h
                        PUSH      _ACCA
                        PUSH      _ACCB
                        PUSH      _ACCALO
                        PUSH      _ACCAHI
                        PUSH      _ACCBLO
                        PUSH      _ACCBHI
                        PUSH      _ACCELO
                        PUSH      _ACCEHI
                        PUSH      _ACCDLO
                        PUSH      _ACCDHI
                        PUSH      _ACCFLO
                        PUSH      _ACCFHI
                        ICALL
                        POP       _ACCFHI
                        POP       _ACCFLO
                        POP       _ACCDHI
                        POP       _ACCDLO
                        POP       _ACCEHI
                        POP       _ACCELO
                        POP       _ACCBHI
                        POP       _ACCBLO
                        POP       _ACCAHI
                        POP       _ACCALO
                        POP       _ACCB
                        POP       _ACCA
                        POP       _ACCCHI
                        POP       _ACCCLO
                        RET

SYSTEM.FTRUNCX:
                        PUSH      _ACCELO
                        PUSH      _ACCEHI
                        MOV       _ACCEHI, _ACCAHI
                        MOV       _ACCELO, _ACCALO
                        ROL       _ACCELO
                        ROL       _ACCEHI
                        SUBI      _ACCEHI, 127
                        BRCC      SYSTEM._L0664
                        POP       _ACCEHI
                        POP       _ACCELO
                        CLR       _ACCA
                        CLR       _ACCB
                        CLR       _ACCAHI
                        CLR       _ACCALO
                        RET
SYSTEM._L0664:
                        ORI       _ACCALO, 080h
                        MOV       _ACCELO, _ACCAHI
                        CLR       _ACCAHI
                        CPI       _ACCEHI, 24
                        BRSH      SYSTEM._L0666
                        SUBI      _ACCEHI, 23
                        NEG       _ACCEHI
SYSTEM._L0665:
                        BREQ      SYSTEM._L0668
                        LSR       _ACCAHI
                        ROR       _ACCALO
                        ROR       _ACCA
                        ROR       _ACCB
                        DEC       _ACCEHI
                        RJMP      SYSTEM._L0665
SYSTEM._L0666:
                        SUBI      _ACCEHI, 23
SYSTEM._L0667:
                        BREQ      SYSTEM._L0668
                        LSL       _ACCB
                        ROL       _ACCA
                        ROL       _ACCALO
                        ROL       _ACCAHI
                        DEC       _ACCEHI
                        RJMP      SYSTEM._L0667
SYSTEM._L0668:
                        SBRS      _ACCELO, 7
                        RJMP      SYSTEM._L0669
                        SUBI      _ACCB, 01h
                        SBCI      _ACCA, 00h
                        SBCI      _ACCALO, 00h
                        SBCI      _ACCAHI, 00h
                        COM       _ACCB
                        COM       _ACCA
                        COM       _ACCAHI
                        COM       _ACCALO
SYSTEM._L0669:
                        POP       _ACCEHI
                        POP       _ACCELO
                        RET

SYSTEM.FENTIERx:
                        CPI       _ACCAHI, 0CFh
                        BRLO      SYSTEM._L0670
                        LDI       _ACCAHI, 080h
                        CLR       _ACCALO
                        CLR       _ACCA
                        CLR       _ACCB
                        RET
SYSTEM._L0670:
                        SBRC      _ACCAHI, 7
                        RJMP      SYSTEM._L0671
                        CPI       _ACCAHI, 04Fh
                        BRLO      SYSTEM._L0671
                        LDI       _ACCAHI, 07Fh
                        LDI       _ACCALO, 0FFh
                        LDI       _ACCA, 0FFh
                        LDI       _ACCB, 0FFh
                        RET
SYSTEM._L0671:
                        SBRS      _ACCAHI, 7
                        RJMP      SYSTEM.FTRUNCX
                        ANDI      _ACCAHI, 07Fh
                        CALL      SYSTEM.FTRUNCX
                        SUBI      _ACCB, 01h
                        SBCI      _ACCA, 00h
                        SBCI      _ACCALO, 00h
                        SBCI      _ACCAHI, 00h
                        COM       _ACCALO
                        COM       _ACCAHI
                        COM       _ACCA
                        COM       _ACCB
                        RET

SYSTEM.FloatToLInt:
                        MOV       _ACCDHI, _ACCAHI
                        MOV       _ACCBHI, _ACCAHI
                        MOV       _ACCBLO, _ACCALO
                        CLR       _ACCAHI
                        ORI       _ACCALO, 080h
                        ANDI      _ACCBHI, 07Fh
                        ANDI      _ACCBLO, 080h
                        ROL       _ACCBLO
                        ROL       _ACCBHI
                        SUBI      _ACCBHI, 07Fh
                        BRPL      SYSTEM._L0673
                        CLR       _ACCAHI
                        CLR       _ACCALO
                        CLR       _ACCA
                        CLR       _ACCB
                        RET
SYSTEM._L0673:
                        CPI       _ACCBHI, 23
                        BRCC      SYSTEM._L0675
                        LDI       _ACCBLO, 23
                        SUB       _ACCBLO, _ACCBHI
                        BREQ      SYSTEM._L0677
SYSTEM._L0674:
                        LSR       _ACCAHI
                        ROR       _ACCALO
                        ROR       _ACCA
                        ROR       _ACCB
                        DEC       _ACCBLO
                        BRNE      SYSTEM._L0674
                        RJMP      SYSTEM._L0677
SYSTEM._L0675:
                        SUBI      _ACCBHI, 23
                        BREQ      SYSTEM._L0677
                        MOV       _ACCBLO, _ACCBHI
SYSTEM._L0676:
                        LSL       _ACCB
                        ROL       _ACCA
                        ROL       _ACCALO
                        ROL       _ACCAHI
                        BRCC      SYSTEM._L0678
                        SET
                        BLD       Flags, _ERRFLAG
SYSTEM._L0678:
                        DEC       _ACCBLO
                        BRNE      SYSTEM._L0676
SYSTEM._L0677:
                        SBRS      _ACCDHI, 7
                        RET
                        SUBI      _ACCB, 01h
                        SBCI      _ACCA, 00h
                        SBCI      _ACCALO, 00h
                        SBCI      _ACCAHI, 00h
                        COM       _ACCALO
                        COM       _ACCAHI
                        COM       _ACCA
                        COM       _ACCB
                        RET


SYSTEM.HighF:
                        MOV       _ACCDLO, _ACCAHI
                        AND       _ACCDLO, _ACCCHI
                        ANDI      _ACCDLO, 080h
                        SBRS      _ACCAHI, 7
                        RJMP      SYSTEM._L0679
                        CBR       _ACCAHI, 080h
                        SBRS      _ACCDLO, 7
                        RJMP      SYSTEM._L0681
SYSTEM._L0679:
                        SBRS      _ACCCHI, 7
                        RJMP      SYSTEM._L0680
                        CBR       _ACCCHI, 080h
                        SBRS      _ACCDLO, 7
                        RJMP      SYSTEM._L0682
SYSTEM._L0680:
                        CP        _ACCAHI, _ACCCHI
                        BRLO      SYSTEM._L0681
                        BRNE      SYSTEM._L0682
                        CP        _ACCALO, _ACCCLO
                        BRLO      SYSTEM._L0681
                        BRNE      SYSTEM._L0682
                        CP        _ACCA, _ACCBHI
                        BRLO      SYSTEM._L0681
                        BRNE      SYSTEM._L0682
                        CP        _ACCB, _ACCBLO
                        BRLO      SYSTEM._L0681
                        BRNE      SYSTEM._L0682
                        RJMP      SYSTEM._L0686
SYSTEM._L0681:
                        SBRC      _ACCDLO, 7
                        RJMP      SYSTEM._L0684
SYSTEM._L0683:
                        BST       Flags, _NEGATIVE
                        BRTS      SYSTEM._L0685
                        MOVW      _ACCB, _ACCBLO
                        MOVW      _ACCALO, _ACCCLO
SYSTEM._L0685:
                        INC       _ACCDHI
                        RJMP      SYSTEM._L0686
SYSTEM._L0682:
                        SBRC      _ACCDLO, 7
                        RJMP      SYSTEM._L0683
SYSTEM._L0684:
                        DEC       _ACCDHI
SYSTEM._L0686:
                        OR        _ACCAHI, _ACCDLO
                        RET

SYSTEM.LIntToFloat:
                        TST       _ACCAHI
                        BRNE      SYSTEM._L0687
                        TST       _ACCALO
                        BRNE      SYSTEM._L0687
                        TST       _ACCA
                        BRNE      SYSTEM._L0687
                        TST       _ACCB
                        BRNE      SYSTEM._L0687
                        RET
SYSTEM._L0687:
                        CLR       _ACCBLO
                        SBRS      Flags, _SIGN
                        RJMP      SYSTEM._L0688
                        MOV       _ACCBLO, _ACCAHI
                        ANDI      _ACCBLO, 080h
                        TST       _ACCAHI
                        BRPL      SYSTEM._L0693
                        SUBI      _ACCB, 01h
                        SBCI      _ACCA, 00h
                        SBCI      _ACCALO, 00h
                        SBCI      _ACCAHI, 00h
                        COM       _ACCALO
                        COM       _ACCAHI
                        COM       _ACCA
                        COM       _ACCB
SYSTEM._L0693:
SYSTEM._L0688:
                        LDI       _ACCBHI, 150
SYSTEM._L0689:
                        TST       _ACCAHI
                        BREQ      SYSTEM._L0690
                        LSR       _ACCAHI
                        ROR       _ACCALO
                        ROR       _ACCA
                        ROR       _ACCB
                        INC       _ACCBHI
                        RJMP      SYSTEM._L0689
SYSTEM._L0690:
                        SBRC      _ACCALO, 7
                        RJMP      SYSTEM._L0691
                        LSL       _ACCB
                        ROL       _ACCA
                        ROL       _ACCALO
                        ROL       _ACCAHI
                        DEC       _ACCBHI
                        RJMP      SYSTEM._L0690
SYSTEM._L0691:
                        ANDI      _ACCALO, 07Fh
                        MOV       _ACCAHI, _ACCBHI
                        LSR       _ACCAHI
                        BRCC      SYSTEM._L0692
                        ORI       _ACCALO, 080h
SYSTEM._L0692:
                        OR        _ACCAHI, _ACCBLO
                        RET

SYSTEM.MulFloat:
                        MOVW      _ACCBLO, _ACCB
                        MOVW      _ACCCLO, _ACCALO
                        POP       _ACCA
                        POP       _ACCB
                        POP       _ACCEHI
                        POP       _ACCELO
                        POP       _ACCDHI
                        POP       _ACCDLO
                        PUSH      _ACCB
                        PUSH      _ACCA
SYSTEM.MulFloat_R:
                        TST       _ACCCHI
                        BREQ      SYSTEM._L0694
                        TST       _ACCEHI
                        BRNE      SYSTEM._L0695
SYSTEM._L0694:
                        CLR       _ACCB
                        CLR       _ACCA
                        CLR       _ACCALO
                        CLR       _ACCAHI
                        RET
SYSTEM._L0695:
                        MOV       _ACCAHI, _ACCCHI
                        EOR       _ACCAHI, _ACCEHI
                        ANDI      _ACCAHI, 080h
                        ROL       _ACCCLO
                        ROL       _ACCCHI
                        SEC
                        ROR       _ACCCLO
                        ROL       _ACCELO
                        ROL       _ACCEHI
                        SEC
                        ROR       _ACCELO
                        CLR       _ACCA
                        ADD       _ACCCHI, _ACCEHI
                        ADC       _ACCA, _ACCA
                        SUBI      _ACCCHI, 07Fh
                        SBCI      _ACCA, 00h
                        TST       _ACCA
                        BRNE      SYSTEM._L0696
                        CPI       _ACCCHI, 0FFh
                        BRLO      SYSTEM._L0697
SYSTEM._L0696:
                        SET
                        BLD       Flags, _ERRFLAG
                        ANDI      _ACCAHI, 080h
                        ORI       _ACCAHI, 07Eh
                        LDI       _ACCALO, 0FFh
                        LDI       _ACCB, 0FFh
                        LDI       _ACCA, 0FFh
                        RET
SYSTEM._L0697:
                        CPI       _ACCCHI, 01h
                        BRSH      SYSTEM._L0698
                        CLR       _ACCAHI
                        CLR       _ACCALO
                        CLR       _ACCB
                        CLR       _ACCA
                        SET
                        BLD       Flags, _ERRFLAG
                        RET
SYSTEM._L0698:
                        PUSH      _ACCAHI
                        PUSH      _ACCCHI
                        CLR       _ACCCHI
                        CLR       _ACCEHI
                        CLR       _ACCFHI
                        CLR       _ACCFLO
                        CLR       _ACCGHI
                        CLR       _ACCGLO
                        LSR       _ACCEHI
                        ROR       _ACCELO
                        ROR       _ACCDHI
                        ROR       _ACCDLO
                        LDI       _ACCA, 32
SYSTEM._L0699:
                        BRCC      SYSTEM._L0700
                        ADD       _ACCFLO, _ACCBLO
                        ADC       _ACCFHI, _ACCBHI
                        ADC       _ACCGLO, _ACCCLO
                        ADC       _ACCGHI, _ACCCHI
SYSTEM._L0700:
                        ROR       _ACCGHI
                        ROR       _ACCGLO
                        ROR       _ACCFHI
                        ROR       _ACCFLO
                        ROR       _ACCEHI
                        ROR       _ACCELO
                        ROR       _ACCDHI
                        ROR       _ACCDLO
                        DEC       _ACCA
                        BRNE      SYSTEM._L0699
                        LDI       _ACCALO, 23
SYSTEM._L0701:
                        LSR       _ACCGHI
                        ROR       _ACCGLO
                        ROR       _ACCFHI
                        ROR       _ACCFLO
                        ROR       _ACCEHI
                        ROR       _ACCELO
                        ROR       _ACCDHI
                        ROR       _ACCDLO
                        DEC       _ACCALO
                        BRNE      SYSTEM._L0701
                        MOV       _ACCB, _ACCDLO
                        MOV       _ACCA, _ACCDHI
                        MOV       _ACCALO, _ACCELO
                        MOV       _ACCAHI, _ACCEHI
                        POP       _ACCBHI
                        POP       _ACCGLO
                        TST       _ACCAHI
                        BREQ      SYSTEM._L0702
                        LSR       _ACCAHI
                        ROR       _ACCALO
                        ROR       _ACCA
                        ROR       _ACCB
                        INC       _ACCBHI
SYSTEM._L0702:
                        MOV       _ACCAHI, _ACCGLO
                        ROL       _ACCALO
                        LSR       _ACCBHI
                        ROR       _ACCALO
                        OR        _ACCAHI, _ACCBHI
                        RET

SYSTEM.DivFloat:
                        MOVW      _ACCBLO, _ACCB
                        MOVW      _ACCCLO, _ACCALO
                        POP       _ACCA
                        POP       _ACCB
                        POP       _ACCEHI
                        POP       _ACCELO
                        POP       _ACCDHI
                        POP       _ACCDLO
                        PUSH      _ACCB
                        PUSH      _ACCA
SYSTEM.DivFloat_R:
                        MOV       _ACCAHI, _ACCCHI
                        EOR       _ACCAHI, _ACCEHI
                        ANDI      _ACCAHI, 080h
                        TST       _ACCCHI
                        BRNE      SYSTEM._L0704
SYSTEM._L0703:
                        SET
                        BLD       Flags, _ERRFLAG
                        ANDI      _ACCAHI, 080h
                        ORI       _ACCAHI, 07Eh
                        LDI       _ACCALO, 0FFh
                        LDI       _ACCA, 0FFh
                        LDI       _ACCB, 0FFh
                        RET
SYSTEM._L0704:
                        ROL       _ACCCLO
                        ROL       _ACCCHI
                        SEC
                        ROR       _ACCCLO
                        ROL       _ACCELO
                        ROL       _ACCEHI
                        SEC
                        ROR       _ACCELO
                        TST       _ACCEHI
                        BRNE      SYSTEM._L0706
                        CLR       _ACCAHI
                        CLR       _ACCALO
                        CLR       _ACCA
                        CLR       _ACCB
                        RET
SYSTEM._L0706:
                        CLR       _ACCA
                        SUB       _ACCEHI, _ACCCHI
                        SBCI      _ACCA, 00h
                        MOV       _ACCCHI, _ACCEHI
                        LDI       _ACCB, 7Eh
                        ADD       _ACCCHI, _ACCB
                        CLR       _ACCB
                        ADC       _ACCA, _ACCB
                        TST      _ACCA
                        BRNE     SYSTEM._L0708
                        CPI       _ACCCHI, 0FFh
                        BRNE      SYSTEM._L0707
SYSTEM._L0708:
                        SET
                        BLD       Flags, _ERRFLAG
                        ANDI      _ACCAHI, 080h
                        ORI       _ACCAHI, 07Eh
                        LDI       _ACCALO, 0FFh
                        LDI       _ACCB, 0FFh
                        LDI       _ACCA, 0FFh
                        RET
SYSTEM._L0707:
                        TST       _ACCCHI
                        BRNE      SYSTEM._L0705
                        SET
                        BLD       Flags, _ERRFLAG
                        CLR       _ACCAHI
                        CLR       _ACCALO
                        CLR       _ACCB
                        CLR       _ACCA
                        RET
SYSTEM._L0705:
                        PUSH      _ACCAHI
                        PUSH      _ACCCHI
                        CLR       _ACCCHI
                        CLR       _ACCFLO
                        CLR       _ACCFHI
                        MOV       _ACCEHI, _ACCELO
                        MOV       _ACCELO, _ACCDHI
                        MOV       _ACCDHI, _ACCDLO
                        CLR       _ACCDLO
                        LDI       _ACCA, 48
                        CLR       _ACCALO
                        CLR       _ACCAHI
                        CLR       _ACCGLO
                        CLR       _ACCGHI
                        CLR       _ACCHLO
                        CLR       _ACCHHI
                        CLC
SYSTEM._L0709:
                        ROL       _ACCFLO
                        ROL       _ACCFHI
                        ROL       _ACCDLO
                        ROL       _ACCDHI
                        ROL       _ACCELO
                        ROL       _ACCEHI
                        ROL       _ACCALO
                        ROL       _ACCAHI
                        ROL       _ACCGLO
                        ROL       _ACCGHI
                        ROL       _ACCHLO
                        ROL       _ACCHHI
                        BRCC      SYSTEM._L0710
                        CLR       _ACCB
                        SUB       _ACCALO, _ACCBLO
                        SBC       _ACCAHI, _ACCBHI
                        SBC       _ACCGLO, _ACCCLO
                        SBC       _ACCGHI, _ACCCHI
                        SBC       _ACCHLO, _ACCB
                        SBC       _ACCHHI, _ACCB
                        SEC
                        RJMP      SYSTEM._L0712
SYSTEM._L0710:
                        CLR       _ACCB
                        CP        _ACCHHI, _ACCB
                        BRLO      SYSTEM._L0712
                        BRNE      SYSTEM._L0711
                        CP        _ACCHLO, _ACCB
                        BRLO      SYSTEM._L0712
                        BRNE      SYSTEM._L0711
                        CP        _ACCGHI, _ACCCHI
                        BRLO      SYSTEM._L0712
                        BRNE      SYSTEM._L0711
                        CP        _ACCGLO, _ACCCLO
                        BRLO      SYSTEM._L0712
                        BRNE      SYSTEM._L0711
                        CP        _ACCAHI, _ACCBHI
                        BRLO      SYSTEM._L0712
                        BRNE      SYSTEM._L0711
                        CP        _ACCALO, _ACCBLO
                        BRLO      SYSTEM._L0712
SYSTEM._L0711:
                        CLR       _ACCB
                        SUB       _ACCALO, _ACCBLO
                        SBC       _ACCAHI, _ACCBHI
                        SBC       _ACCGLO, _ACCCLO
                        SBC       _ACCGHI, _ACCCHI
                        SBC       _ACCHLO, _ACCB
                        SBC       _ACCHHI, _ACCB
SYSTEM._L0712:
                        DEC       _ACCA
                        BRCS      SYSTEM._L0713
                        SEC
                        RJMP      SYSTEM._L0714
SYSTEM._L0713:
                        CLC
SYSTEM._L0714:
                        BRNE      SYSTEM._L0709
                        ROL       _ACCFLO
                        ROL       _ACCFHI
                        ROL       _ACCDLO
                        ROL       _ACCDHI
                        ROL       _ACCELO
                        ROL       _ACCEHI
                        MOV       _ACCB, _ACCFLO
                        MOV       _ACCA, _ACCFHI
                        MOV       _ACCALO, _ACCDLO
                        MOV       _ACCAHI, _ACCDHI
                        POP       _ACCBHI
                        TST       _ACCAHI
                        BREQ      SYSTEM._L0715
                        LSR       _ACCAHI
                        ROR       _ACCALO
                        ROR       _ACCA
                        ROR       _ACCB
                        INC       _ACCBHI
SYSTEM._L0715:
                        POP       _ACCAHI
                        ROL       _ACCALO
                        LSR       _ACCBHI
                        ROR       _ACCALO
                        OR        _ACCAHI, _ACCBHI
                        RET

SYSTEM.SubFloat:
                        MOVW      _ACCBLO, _ACCB
                        MOVW      _ACCCLO, _ACCALO
                        POP       _ACCA
                        POP       _ACCB
                        POP       _ACCEHI
                        POP       _ACCELO
                        POP       _ACCDHI
                        POP       _ACCDLO
                        PUSH      _ACCB
                        PUSH      _ACCA
SYSTEM.SubFloat1:
                        LDI       _ACCA, 80h
                        EOR       _ACCCHI, _ACCA
                        RJMP      SYSTEM.AddFloat1
SYSTEM.AddFloat:
                        MOVW      _ACCBLO, _ACCB
                        MOVW      _ACCCLO, _ACCALO
                        POP       _ACCA
                        POP       _ACCB
                        POP       _ACCEHI
                        POP       _ACCELO
                        POP       _ACCDHI
                        POP       _ACCDLO
                        PUSH      _ACCB
                        PUSH      _ACCA
SYSTEM.AddFloat1:
                        MOV       _ACCA, _ACCCHI
                        ANDI      _ACCA, 07Fh
                        MOV       _ACCB, _ACCEHI
                        ANDI      _ACCB, 07Fh
                        CP        _ACCB, _ACCA
                        BRCS      SYSTEM._L0716
                        BRNE      SYSTEM._L0717
                        CP        _ACCELO, _ACCCLO
                        BRCS      SYSTEM._L0716
                        BRNE      SYSTEM._L0717
                        CP        _ACCDHI, _ACCBHI
                        BRCS      SYSTEM._L0716
                        BRNE      SYSTEM._L0717
                        CP        _ACCDLO, _ACCBLO
                        BRCS      SYSTEM._L0716
SYSTEM._L0717:
                        MOVW      _ACCB, _ACCDLO
                        MOVW      _ACCALO, _ACCELO
                        MOV       _ACCDHI, _ACCBHI
                        MOV       _ACCDLO, _ACCBLO
                        MOV       _ACCEHI, _ACCCHI
                        MOV       _ACCELO, _ACCCLO
                        MOVW      _ACCBLO, _ACCB
                        MOVW      _ACCCLO, _ACCALO
                        RJMP      SYSTEM._L0726
SYSTEM._L0716:
                        MOVW      _ACCB, _ACCBLO
                        MOVW      _ACCALO, _ACCCLO
SYSTEM._L0726:
                        ANDI      _ACCALO, 07Fh
                        ORI       _ACCALO, 080h
                        CLR       _ACCAHI
                        SBRS      _ACCCHI, 7
                        RJMP      SYSTEM._L0718
                        SUBI      _ACCB, 01h
                        SBCI      _ACCA, 00h
                        SBCI      _ACCALO, 00h
                        SBCI      _ACCAHI, 00h
                        COM       _ACCALO
                        COM       _ACCAHI
                        COM       _ACCA
                        COM       _ACCB
SYSTEM._L0718:
                        PUSH      _ACCA
                        MOV       _ACCFHI, _ACCCHI
                        MOV       _ACCFLO, _ACCCLO
                        ROL       _ACCFLO
                        ROL       _ACCFHI
                        MOV       _ACCFLO, _ACCEHI
                        MOV       _ACCGLO, _ACCELO
                        ROL       _ACCGLO
                        ROL       _ACCFLO
                        MOV       _ACCGHI, _ACCDHI
                        MOV       _ACCGLO, _ACCDLO
                        MOV       _ACCHLO, _ACCELO
                        LDI       _ACCA, 080h
                        OR        _ACCHLO, _ACCA
                        CLR       _ACCHHI
                        MOV       _ACCA, _ACCFHI
                        SUB       _ACCA, _ACCFLO
                        TST       _ACCA
SYSTEM._L0719:
                        BREQ      SYSTEM._L0720
                        LSR       _ACCHLO
                        ROR       _ACCGHI
                        ROR       _ACCGLO
                        DEC       _ACCA
                        RJMP      SYSTEM._L0719
SYSTEM._L0720:
                        MOV       _ACCA, _ACCEHI
                        MOV       _ACCDLO, _ACCGLO
                        MOV       _ACCDHI, _ACCGHI
                        MOV       _ACCELO, _ACCHLO
                        MOV       _ACCEHI, _ACCHHI
                        SBRS      _ACCA, 7
                        RJMP      SYSTEM._L0721
                        SUBI      _ACCDLO, 01h
                        SBCI      _ACCDHI, 00h
                        SBCI      _ACCELO, 00h
                        SBCI      _ACCEHI, 00h
                        COM       _ACCDLO
                        COM       _ACCDHI
                        COM       _ACCEHI
                        COM       _ACCELO
SYSTEM._L0721:
                        POP       _ACCA
                        ADD       _ACCB, _ACCDLO
                        ADC       _ACCA, _ACCDHI
                        ADC       _ACCALO, _ACCELO
                        ADC       _ACCAHI, _ACCEHI
                        SBRS      _ACCAHI, 7
                        RJMP      SYSTEM._L0722
                        ORI       _ACCCHI, 080h
                        SUBI      _ACCB, 01h
                        SBCI      _ACCA, 00h
                        SBCI      _ACCALO, 00h
                        SBCI      _ACCAHI, 00h
                        COM       _ACCALO
                        COM       _ACCAHI
                        COM       _ACCA
                        COM       _ACCB
                        RJMP      SYSTEM._L0723
SYSTEM._L0722:
                        ANDI      _ACCCHI, 07Fh
SYSTEM._L0723:
                        MOV       _ACCFLO, _ACCAHI
                        ANDI      _ACCFLO, 07Fh
                        BREQ      SYSTEM._L0724
                        LSR       _ACCAHI
                        ROR       _ACCALO
                        ROR       _ACCA
                        ROR       _ACCB
                        INC       _ACCFHI
                        BRNE      SYSTEM._L0724
                        LDI       _ACCA, 0FFh
                        LDI       _ACCB, 0FFh
                        LDI       _ACCALO, 0FFh
                        LDI       _ACCAHI, 07Fh
                        SBRC      _ACCCHI, 7
                        ORI       _ACCAHI, 080h
                        SET
                        BLD       Flags, _ERRFLAG
                        RET
SYSTEM._L0724:
                        SBRC      _ACCALO, 7
                        RJMP      SYSTEM._L0725
                        TST       _ACCFHI
                        BREQ      SYSTEM._L0725
                        LSL       _ACCB
                        ROL       _ACCA
                        ROL       _ACCALO
                        ROL       _ACCAHI
                        DEC       _ACCFHI
                        RJMP      SYSTEM._L0724
SYSTEM._L0725:
                        MOV       _ACCAHI, _ACCFHI
                        CLR       _ACCFHI
                        LSR       _ACCAHI
                        TST       _ACCAHI
                        BREQ      SYSTEM._L0727
                        ROR       _ACCFHI
                        ANDI      _ACCALO, 07Fh
                        OR        _ACCALO, _ACCFHI
                        SBRC      _ACCCHI, 7
                        ORI       _ACCAHI, 080h
                        RET
SYSTEM._L0727:
                        CLR       _ACCALO
                        CLR       _ACCA
                        CLR       _ACCB
                        RET

SYSTEM.SqrFloat:
                        MOVW      _ACCBLO, _ACCB
                        MOVW      _ACCCLO, _ACCALO
                        MOVW      _ACCDLO, _ACCB
                        MOVW      _ACCELO, _ACCALO
                        JMP       SYSTEM.MulFloat_R

SYSTEM.IntFloat:
                        MOV       _ACCEHI, _ACCAHI
                        MOV       _ACCELO, _ACCALO
                        ROL       _ACCELO
                        ROL       _ACCEHI
                        CPI       _ACCEHI, 127
                        BRSH      SYSTEM._L0728
                        CLR       _ACCA
                        CLR       _ACCB
                        CLR       _ACCAHI
                        CLR       _ACCALO
                        RET
SYSTEM._L0728:
                        CPI       _ACCEHI, 151
                        BRLO      SYSTEM._L0729
                        RET
SYSTEM._L0729:
                        SUBI      _ACCEHI, 150
                        NEG       _ACCEHI
                        LDI       _ACCBHI, 0FFh
                        LDI       _ACCBLO, 0FFh
                        LDI       _ACCCHI, 0FFh
                        LDI       _ACCCLO, 0FFh
SYSTEM._L0730:
                        BREQ      SYSTEM._L0731
                        LSL       _ACCBLO
                        ROL       _ACCBHI
                        ROL       _ACCCLO
                        ROL       _ACCCHI
                        DEC       _ACCEHI
                        RJMP      SYSTEM._L0730
SYSTEM._L0731:
                        AND       _ACCB, _ACCBLO
                        AND       _ACCA, _ACCBHI
                        AND       _ACCALO, _ACCCLO
                        AND       _ACCAHI, _ACCCHI
                        RET

SYSTEM.Str2Float:
                        CLT
                        BLD       Flags, _ERRFLAG
                        CLR       _ACCHHI
                        CLR       _ACCHLO
                        CLR       _ACCA
                        CLR       _ACCB
                        CLR       _ACCAHI
                        CLR       _ACCALO
                        PUSH      _ACCALO
                        RCALL     SYSTEM.Str2FltRdChr
                        MOV       _ACCBLO, _ACCDLO
                        ADIW      _ACCCLO, 1
                        RCALL     SYSTEM.ACSkipSpace
SYSTEM.Str2Flt1:
                        RCALL     SYSTEM.ACNUM
                        BRCS      SYSTEM.Str2Flt4
                        CPI       _ACCDLO, 2Bh
                        BRNE      SYSTEM.Str2Flt2
                        ADIW      _ACCCLO, 1
                        DEC       _ACCBLO
                        RJMP      SYSTEM.Str2Flt1
SYSTEM.Str2Flt2:
                        CPI       _ACCDLO, 2Dh
                        BRNE      SYSTEM.Str2Flt3
                        POP       _ACCDLO
                        COM       _ACCDLO
                        PUSH      _ACCDLO
                        ADIW      _ACCCLO, 1
                        DEC       _ACCBLO
                        RCALL     SYSTEM.ACNUM
                        BRCS      SYSTEM.Str2Flt4
SYSTEM.Str2Flt3:
                        CPI       _ACCDLO, DECIMALSEP
                        BRNE      SYSTEM.Str2Flt5
                        ADIW      _ACCCLO, 1
                        DEC       _ACCBLO
                        RCALL     SYSTEM.ACNUM
                        BRCC      SYSTEM.Str2Flt5
                        RJMP      SYSTEM.Str2Flt11
SYSTEM.Str2Flt5:
                        POP       _ACCDLO
                        CLR       _ACCHHI
                        CLR       _ACCHLO
                        CLR       _ACCA
                        CLR       _ACCB
                        SET
                        BLD       Flags, _ERRFLAG
                        SEC
                        RET

SYSTEM.Str2Flt4:
                        RCALL     SYSTEM.ACNUM
                        BRCC      SYSTEM.Str2Flt10
                        RCALL     SYSTEM.ADDNXT
                        ADIW      _ACCCLO, 1
                        DEC       _ACCBLO
                        TST       _ACCDLO
                        BREQ      SYSTEM.Str2Flt4
SYSTEM.Str2Flt6:
                        INC       _ACCAHI
                        ADIW      _ACCCLO, 1
                        DEC       _ACCBLO
                        RCALL     SYSTEM.ACNUM
                        BRCS      SYSTEM.Str2Flt6
                        CPI       _ACCDLO, DECIMALSEP
                        BRNE      SYSTEM.Str2Flt7
SYSTEM.Str2Flt8:
                        RCALL     SYSTEM.ACNUM
                        BRCC      SYSTEM.Str2Flt7
                        ADIW      _ACCCLO, 1
                        DEC       _ACCBLO
                        RJMP      SYSTEM.Str2Flt8
SYSTEM.Str2Flt7:
                        CPI       _ACCDLO, 45h
                        BREQ      SYSTEM.Str2Flt13
                        CPI       _ACCDLO, 65h
                        BREQ      SYSTEM.Str2Flt13
                        RJMP      SYSTEM.ACFIN
SYSTEM.Str2Flt13:
                        ADIW      _ACCCLO, 1
                        DEC       _ACCBLO
                        RCALL     SYSTEM.ACNUM
                        BRCS      SYSTEM.Str2Flt9
                        CPI       _ACCDLO, 2Dh
                        BREQ      SYSTEM.Str2Flt15
                        CPI       _ACCDLO, 2Bh
                        BREQ      SYSTEM.Str2Flt16
                        RJMP      SYSTEM.Str2Flt5
SYSTEM.Str2Flt15:
                        COM       _ACCHLO
SYSTEM.Str2Flt16:
                        ADIW      _ACCCLO, 1
                        DEC       _ACCBLO
                        RCALL     SYSTEM.ACNUM
                        BRCC      SYSTEM.Str2Flt5
SYSTEM.Str2Flt9:
                        SUBI      _ACCDLO, 30h
                        MOV       _ACCHHI, _ACCDLO
                        ADIW      _ACCCLO, 1
                        DEC       _ACCBLO
                        RCALL     SYSTEM.ACNUM
                        BRCC      SYSTEM.Str2Flt14
                        MOV       _ACCDHI, _ACCHHI
                        LSL       _ACCDHI
                        LSL       _ACCDHI
                        ADD       _ACCDHI, _ACCHHI
                        LSL       _ACCDHI
                        SUBI      _ACCDLO, 30h
                        ADD       _ACCDLO, _ACCDHI
                        MOV       _ACCHHI, _ACCDLO
                        CPI       _ACCDLO, 38
                        BRSH      SYSTEM.Str2Flt5
SYSTEM.Str2Flt14:
                        MOV       _ACCDLO, _ACCHHI
                        TST       _ACCHLO
                        BRPL      SYSTEM.Str2Flt12
                        NEG       _ACCDLO
SYSTEM.Str2Flt12:
                        ADD       _ACCDLO, _ACCAHI
                        MOV       _ACCAHI, _ACCDLO
                        RJMP      SYSTEM.ACFIN
SYSTEM.Str2Flt10:
                        CPI       _ACCDLO, DECIMALSEP
                        BRNE      SYSTEM.Str2Flt7
                        ADIW      _ACCCLO, 1
                        DEC       _ACCBLO
SYSTEM.Str2Flt11:
                        RCALL     SYSTEM.ACNUM
                        BRCC      SYSTEM.Str2Flt7
                        RCALL     SYSTEM.ADDNXT
                        ADIW      _ACCCLO, 1
                        DEC       _ACCBLO
                        TST       _ACCDLO
                        BRNE      SYSTEM.Str2Flt8
                        DEC       _ACCAHI
                        RJMP      SYSTEM.Str2Flt11

SYSTEM.ADDNXT:
                        MOV       _ACCFLO, _ACCALO
                        MOV       _ACCEHI, _ACCA
                        MOV       _ACCELO, _ACCB
                        LSL       _ACCB
                        ROL       _ACCA
                        ROL       _ACCALO
                        BRCS      SYSTEM.ADDNXT1
                        LSL       _ACCB
                        ROL       _ACCA
                        ROL       _ACCALO
                        BRCS      SYSTEM.ADDNXT1
                        ADD       _ACCB, _ACCELO
                        ADC       _ACCA, _ACCEHI
                        ADC       _ACCALO, _ACCFLO
                        BRCS      SYSTEM.ADDNXT1
                        LSL       _ACCB
                        ROL       _ACCA
                        ROL       _ACCALO
                        BRCS      SYSTEM.ADDNXT1
                        RCALL     SYSTEM.Str2FltRdChr
                        SUBI      _ACCDLO, 30h
                        CLR       _ACCDHI
                        ADD       _ACCB, _ACCDLO
                        ADC       _ACCA, _ACCDHI
                        ADC       _ACCALO, _ACCDHI
                        BRCS      SYSTEM.ADDNXT1
                        CLR       _ACCDLO
                        RET

SYSTEM.ADDNXT1:
                        MOV       _ACCALO, _ACCFLO
                        MOV       _ACCA, _ACCEHI
                        MOV       _ACCB, _ACCELO
                        SER       _ACCDLO
                        RET

SYSTEM.ACFIN:
                        POP       _ACCDLO
                        RCALL     SYSTEM.CHCK0
                        BREQ      SYSTEM.ACFIN3
                        MOV       _ACCHHI, _ACCAHI
                        CLR       _ACCAHI
                        CLT
                        BLD       Flags, _ERRFLAG
                        CLT
                        BLD       Flags, _SIGN
                        CALL      SYSTEM.LIntToFloat
                        SBRC      _ACCDLO, 7
                        ORI       _ACCAHI, 80h
                        MOV       _ACCHLO, _ACCHHI
                        TST       _ACCHHI
                        BREQ      SYSTEM.ACFIN3
                        BRPL      SYSTEM.ACFIN1
                        NEG       _ACCHHI
SYSTEM.ACFIN1:
                        TST       _ACCHLO
                        BRMI      SYSTEM.ACFIN2
                        LDI       _ACCBLO, 000h
                        LDI       _ACCBHI, 000h
                        LDI       _ACCCLO, 020h
                        LDI       _ACCCHI, 041h
                        RJMP      SYSTEM.ACFIN4
SYSTEM.ACFIN2:
                        LDI       _ACCBLO, 0CDh
                        LDI       _ACCBHI, 0CCh
                        LDI       _ACCCLO, 0CCh
                        LDI       _ACCCHI, 03Dh
SYSTEM.ACFIN4:
                        MOV       _ACCDLO, _ACCB
                        MOV       _ACCDHI, _ACCA
                        MOV       _ACCELO, _ACCALO
                        MOV       _ACCEHI, _ACCAHI
                        CLT
                        BLD       Flags, _ERRFLAG
                        CALL      SYSTEM.MulFloat_R
                        DEC       _ACCHHI
                        BRNE      SYSTEM.ACFIN1
SYSTEM.ACFIN3:
                        RET

SYSTEM.ACSkipSpace:
                        TST       _ACCBLO
                        BRNE      SYSTEM._L0732
                        RET
SYSTEM._L0732:
                        RCALL     SYSTEM.Str2FltRdChr
                        CPI       _ACCDLO, 020h
                        BRNE      SYSTEM._L0733
                        ADIW      _ACCCLO, 1
                        DEC       _ACCBLO
                        RJMP      SYSTEM.ACSkipSpace
SYSTEM._L0733:
                        RET

SYSTEM.ACNUM:
                        TST       _ACCBLO
                        BRNE      SYSTEM.ACNUM0
                        CLR       _ACCDLO
                        CLC
                        RET
SYSTEM.ACNUM0:
                        RCALL     SYSTEM.Str2FltRdChr
                        CPI       _ACCDLO, 030h
                        BRLO      SYSTEM.ACNUM1
                        CPI       _ACCDLO, 03Ah
                        BRSH      SYSTEM.ACNUM1
                        SEC
                        RET
SYSTEM.ACNUM1:
                        CLC
                        RET

SYSTEM.CHCK0:
                        TST       _ACCAHI
                        BRNE      SYSTEM.CHCK01
                        TST       _ACCALO
                        BRNE      SYSTEM.CHCK01
                        TST       _ACCA
                        BRNE      SYSTEM.CHCK01
                        TST       _ACCB
SYSTEM.CHCK01:
                        RET

SYSTEM.Str2FltRdChr:
                        BST       Flags, _EEPROM
                        BRTC      SYSTEM._L0734
                        CALL      SYSTEM.ReadEEp8D
                        RET
SYSTEM._L0734:
                        LD        _ACCDLO, Z
                        RET
SYSTEM.Float2Str_C:
                        PUSH      _ACCDHI
SYSTEM._L0736:
                        MOVW      _ACCELO, _ACCB
                        MOVW      _ACCFLO, _ACCALO
                        LDI       _ACCBLO, 07Fh
                        LDI       _ACCBHI, 096h
                        LDI       _ACCCLO, 018h
                        LDI       _ACCCHI, 04Bh
                        SET
                        BLD       Flags, _NEGATIVE
                        CLR       _ACCDHI
                        CALL      SYSTEM.HighF
                        MOVW      _ACCB, _ACCELO
                        MOVW      _ACCALO, _ACCFLO
                        TST       _ACCDHI
                        BRMI      SYSTEM._L0738
                        BREQ      SYSTEM._L0738
                        LDI       _ACCBLO, 000h
                        LDI       _ACCBHI, 024h
                        LDI       _ACCCLO, 074h
                        LDI       _ACCCHI, 049h
                        CLR       _ACCDHI
                        CALL      SYSTEM.HighF
                        TST       _ACCDHI
                        BRMI      SYSTEM._L0739
                        BREQ      SYSTEM._L0739
                        POP       _ACCDHI
                        DEC       _ACCDHI
                        PUSH      _ACCDHI
                        LDI       _ACCBLO, 000h
                        LDI       _ACCBHI, 000h
                        LDI       _ACCCLO, 020h
                        LDI       _ACCCHI, 041h
SYSTEM._L0737:
                        MOV       _ACCDLO, _ACCELO
                        MOV       _ACCDHI, _ACCEHI
                        MOV       _ACCELO, _ACCFLO
                        MOV       _ACCEHI, _ACCFHI
                        CLT
                        BLD       Flags, _ERRFLAG
                        CALL      SYSTEM.MulFloat_R
                        RJMP      SYSTEM._L0736
SYSTEM._L0738:
                        POP       _ACCDHI
                        INC       _ACCDHI
                        PUSH      _ACCDHI
                        LDI       _ACCBLO, 0CDh
                        LDI       _ACCBHI, 0CCh
                        LDI       _ACCCLO, 0CCh
                        LDI       _ACCCHI, 03Dh
                        RJMP      SYSTEM._L0737
SYSTEM._L0739:
                        POP       _ACCDHI
                        RET

SYSTEM.Float2Str:
                        POP       _ACCDHI
                        POP       _ACCDLO
                        POP       _ACCCLO
                        POP       _ACCBLO
                        POP       _ACCBHI
                        POP       _ACCAHI
                        POP       _ACCALO
                        POP       _ACCA
                        POP       _ACCB
                        PUSH      _ACCDLO
                        PUSH      _ACCDHI
                        PUSH      _FRAMEPTR
                        PUSH      _FPTRHI
                        LDI       _ACCEHI, 17
                        LDI       _ACCELO, 30h
SYSTEM._L0735:
                        ST        -Y, _ACCELO
                        DEC       _ACCEHI
                        BRNE      SYSTEM._L0735
                        CLR       _ACCGLO
                        STD       Y+0, _ACCGLO
                        STD       Y+14, _ACCBHI
                        STD       Y+15, _ACCBLO
                        STD       Y+16, _ACCCLO
                        CLT
                        BLD       Flags, _ERRFLAG
                        MOV       _ACCEHI, _ACCAHI
                        ANDI      _ACCEHI, 07Fh
                        TST       _ACCEHI
                        BRNE      SYSTEM._L0746
                        LDD       _ACCA, Y+15
                        LDI       _ACCB, DECIMALSEP
                        CPI       _ACCA, 45h
                        BRNE      SYSTEM._L0747
                        LDI       _ACCA, 0FFh
                        STD       Y+15, _ACCA
                        LDI       _ACCA, 30h
                        RCALL     SYSTEM.Float2Str_P
                        LDI       _ACCA, 45h
                        RCALL     SYSTEM.Float2Str_P
                        LDI       _ACCA, 30h
                        RCALL     SYSTEM.Float2Str_P
                        LDI       _ACCALO, 0FFh
                        LDD       _ACCAHI, Y+14
                        RJMP      SYSTEM.Float2Str_F
SYSTEM._L0747:
                        LDI       _ACCA, 30h
                        RCALL     SYSTEM.Float2Str_P
                        LDI       _ACCA, DECIMALSEP
                        RCALL     SYSTEM.Float2Str_P
                        LDI       _ACCA, 30h
                        RCALL     SYSTEM.Float2Str_P
                        RCALL     SYSTEM.Float2Str_R
                        RJMP      SYSTEM.Float2Str_F
SYSTEM._L0746:
                        LDD       _ACCCHI, Y+15
                        CPI       _ACCCHI, 45h
                        BREQ      SYSTEM._L0748
                        CP        _ACCBLO, _ACCBHI
                        BRCS      SYSTEM._L0748
                        MOV       _ACCBHI, _ACCBLO
                        INC       _ACCBHI
                        STD       Y+14, _ACCBHI
SYSTEM._L0748:
                        CLR       _ACCDHI
                        TST       _ACCAHI
                        BRPL      SYSTEM._L0745
                        ANDI      _ACCAHI, 07Fh
                        PUSH      _ACCA
                        LDI       _ACCA, 2Dh
                        RCALL     SYSTEM.Float2Str_P
                        POP       _ACCA
SYSTEM._L0745:
                        RCALL     SYSTEM.Float2Str_C
                        PUSH      _ACCDHI
                        PUSH      _ACCELO
                        PUSH      _ACCEHI
                        PUSH      _ACCFLO
                        PUSH      _ACCFHI
                        LDI       _ACCB, 000h
                        LDI       _ACCA, 000h
                        LDI       _ACCALO, 000h
                        LDI       _ACCAHI, 03Fh
                        LDD       _ACCDLO, Y+15
                        LDD       _ACCBLO, Y+14
                        SUBI      _ACCDHI, -8 AND 0FFh
                        CPI       _ACCDHI, 8
                        BRGE      SYSTEM._L0751
                        CPI       _ACCDHI, -5 AND 0FFh
                        BRLT      SYSTEM._L0751
                        CPI       _ACCDLO, 45h
                        BREQ      SYSTEM._L0751
                        TST       _ACCBLO
                        BRNE      SYSTEM._L0749
                        SUB       _ACCDLO, _ACCDHI
SYSTEM._L0749:
                        MOV       _ACCBLO, _ACCDHI
                        LDI       _ACCDHI, 9
                        SUB       _ACCDHI, _ACCDLO
                        SUB       _ACCDHI, _ACCBLO
                        BRMI      SYSTEM._L0752
                        BRNE      SYSTEM._L0750
                        COM       _ACCDHI
                        STD       Y+15, _ACCDHI
                        RJMP      SYSTEM._L0751
SYSTEM._L0750:
                        DEC       _ACCDHI
                        BREQ      SYSTEM._L0751
                        PUSH      _ACCDHI
                        MOVW      _ACCDLO, _ACCB
                        MOVW      _ACCELO, _ACCALO
                        LDI       _ACCBLO, 000h
                        LDI       _ACCBHI, 000h
                        LDI       _ACCCLO, 020h
                        LDI       _ACCCHI, 041h
                        CLT
                        BLD       Flags, _ERRFLAG
                        CALL      SYSTEM.MulFloat_R
                        POP       _ACCDHI
                        RJMP      SYSTEM._L0750
SYSTEM._L0752:
SYSTEM._L0751:
                        CLT
                        BLD       Flags, _ERRFLAG
                        CALL      SYSTEM.AddFloat
                        POP       _ACCDHI
                        RCALL     SYSTEM.Float2Str_C
                        PUSH      _ACCDHI
                        MOVW      _ACCELO, _ACCB
                        MOVW      _ACCFLO, _ACCALO
                        ROL       _ACCALO
                        ROL       _ACCAHI
                        ORI       _ACCFLO, 80h
                        SUBI      _ACCAHI, 81h
                        NEG       _ACCAHI
                        SUBI      _ACCAHI, -21 AND 0FFh
                        RJMP      SYSTEM._L0741
SYSTEM._L0740:
                        LSR       _ACCFLO
                        ROR       _ACCEHI
                        ROR       _ACCELO
                        DEC       _ACCAHI
SYSTEM._L0741:
                        BRNE      SYSTEM._L0740
                        POP       _ACCBHI
                        LDI       _ACCBLO, 1
                        LDD       _ACCDLO, Y+15
                        CPI       _ACCDLO, 45h
                        BRNE      SYSTEM._L0753
                        SUBI      _ACCBHI, -8 AND 0FFh
                        MOV       _ACCALO, _ACCBHI
                        BRPL      SYSTEM._L0754
                        NEG       _ACCALO
SYSTEM._L0754:
                        RJMP      SYSTEM._L0742
SYSTEM._L0753:
                        LDI       _ACCALO, 7
                        SUBI      _ACCBHI, -8 AND 0FFh
                        CPI       _ACCBHI, 8
                        BRGE      SYSTEM._L0742
                        CPI       _ACCBHI, -5 AND 0FFh
                        BRLT      SYSTEM._L0742
                        DEC       _ACCBHI
                        MOV       _ACCBLO, _ACCBHI
                        LDI       _ACCBHI, 2
SYSTEM._L0742:
                        SUBI      _ACCBHI, 2
                        TST       _ACCBLO
                        BREQ      SYSTEM._L0756
                        BRPL      SYSTEM._L0743
SYSTEM._L0756:
                        LDI       _ACCA, 30h
                        RCALL     SYSTEM.Float2Str_P
                        LDI       _ACCA, DECIMALSEP
                        RCALL     SYSTEM.Float2Str_P
                        TST       _ACCBLO
                        BREQ      SYSTEM._L0743
SYSTEM._L0755:
                        LDI       _ACCA, 30h
                        RCALL     SYSTEM.Float2Str_P
                        DEC       _ACCALO
                        INC       _ACCBLO
                        BRNE      SYSTEM._L0755
SYSTEM._L0743:
                        LDI       _ACCCLO, SYSTEM.DECDIG AND 0FFh
                        LDI       _ACCCHI, SYSTEM.DECDIG SHRB 8
SYSTEM._L0744:
                        CLR       _ACCAHI
SYSTEM._L0757:
                        LPM       _ACCB, Z+
                        LPM       _ACCA, Z
                        ADIW      _ACCCLO, 1
                        LPM
                        ADIW      _ACCCLO, 02h
SYSTEM._L0762:
                        SUB       _ACCELO, _ACCB
                        SBC       _ACCEHI, _ACCA
                        SBC       _ACCFLO, _ACCGLO
                        BRCS      SYSTEM._L0758
                        INC       _ACCAHI
                        RJMP      SYSTEM._L0762
SYSTEM._L0758:
                        ADD       _ACCELO, _ACCB
                        ADC       _ACCEHI, _ACCA
                        ADC       _ACCFLO, _ACCGLO
                        CPI       _ACCAHI, 10
                        BRLT      SYSTEM._L0763
                        LDI       _ACCAHI, 1
                        INC       _ACCBHI
SYSTEM._L0763:
                        LDI       _ACCA, 30h
                        ADD       _ACCA, _ACCAHI
                        RCALL     SYSTEM.Float2Str_P
                        DEC       _ACCBLO
                        BRNE      SYSTEM._L0759
                        LDI       _ACCA, DECIMALSEP
                        RCALL     SYSTEM.Float2Str_P
SYSTEM._L0759:
                        DEC       _ACCALO
                        BRMI      SYSTEM._L0760
                        BRNE      SYSTEM._L0744
SYSTEM._L0760:
                        RCALL     SYSTEM.Float2Str_R
                        TST       _ACCBHI
                        BREQ      SYSTEM.Float2Str_F
                        LDI       _ACCA, 0FFh
                        STD       Y+15, _ACCA
                        LDI       _ACCA, 45h
                        RCALL     SYSTEM.Float2Str_P
                        TST       _ACCBHI
                        BRPL      SYSTEM._L0761
                        NEG       _ACCBHI
                        LDI       _ACCA, 2Dh
                        RCALL     SYSTEM.Float2Str_P
SYSTEM._L0761:
                        LDI       _ACCB, 10
                        MOV       _ACCA, _ACCBHI
                        CALL      SYSTEM.DIV8_R
                        TST       _ACCA
                        BREQ      SYSTEM._L0765
                        ORI       _ACCA, 30h
                        RCALL     SYSTEM.Float2Str_P
SYSTEM._L0765:
                        MOV       _ACCA, _ACCB
                        ORI       _ACCA, 30h
                        RCALL     SYSTEM.Float2Str_P
SYSTEM.Float2Str_F:
                        POP       _ACCCHI
                        POP       _ACCCLO
                        MOVW      _ACCBLO, _FRAMEPTR
                        LDD       _ACCALO, Y+15
                        LDD       _ACCAHI, Y+14
                        SBIW      _FRAMEPTR, 3
                        LDD       _ACCB, Z+0
                        STD       Y+0, _ACCB
                        LDD       _ACCB, Z+1
                        STD       Y+1, _ACCB
                        LDD       _ACCB, Z+2
                        STD       Y+2, _ACCB
                        CPI       _ACCALO, 0FFh
                        BREQ      SYSTEM._L0767
                        TST       _ACCAHI
                        BREQ      SYSTEM._L0767
                        TST       _ACCALO
                        BRNE      SYSTEM._L0766
                        RCALL     SYSTEM.Float2Str_D
                        ST        X, _ACCDHI
                        RJMP      SYSTEM._L0767
SYSTEM._L0766:
                        RCALL     SYSTEM.Float2Str_D
                        LD        _ACCDLO, X
                        SUB       _ACCAHI, _ACCALO
                        DEC       _ACCAHI
                        SUB       _ACCAHI, _ACCDHI
                        BREQ      SYSTEM._L0772
                        BRCS      SYSTEM._L0772
                        LDD       _ACCA, Y+16+3
SYSTEM._L0770:
                        CALL      SYSTEM.Char2Str
                        DEC       _ACCAHI
                        BRNE      SYSTEM._L0770
SYSTEM._L0772:
                        ST        X, _ACCDHI
                        RCALL     SYSTEM.Float2Str_W
                        LDI       _ACCA, DECIMALSEP
                        CALL      SYSTEM.Char2Str
                        ADIW      _ACCBLO, 1
                        SUB       _ACCDLO, _ACCDHI
SYSTEM._L0774:
                        DEC       _ACCDLO
                        BREQ      SYSTEM._L0773
                        LD        _ACCA, X+
                        CALL      SYSTEM.Char2Str
                        DEC       _ACCALO
                        BREQ      SYSTEM._L0771
                        RJMP      SYSTEM._L0774
SYSTEM._L0773:
                        LDI       _ACCA, 030h
                        CALL      SYSTEM.Char2Str
                        DEC       _ACCALO
                        BRNE      SYSTEM._L0773
                        RJMP      SYSTEM._L0771
SYSTEM._L0767:
                        LD        _ACCB, X
                        SUB       _ACCAHI, _ACCB
                        BREQ      SYSTEM._L0769
                        BRCS      SYSTEM._L0769
                        LDD       _ACCA, Y+16+3
SYSTEM._L0768:
                        CALL      SYSTEM.Char2Str
                        DEC       _ACCAHI
                        BRNE      SYSTEM._L0768
SYSTEM._L0769:
                        RCALL     SYSTEM.Float2Str_W
SYSTEM._L0771:
                        LDD       _ACCB, Y+0
                        STD       Z+0, _ACCB
                        LDD       _ACCB, Y+1
                        STD       Z+1, _ACCB
                        LDD       _ACCB, Y+2
                        STD       Z+2, _ACCB
                        MOVW      _FRAMEPTR, _ACCCLO
                        RET

SYSTEM.Float2Str_W:
                        LD        _ACCB, X+
SYSTEM._L0775:
                        LD        _ACCA, X+
                        CALL      SYSTEM.Char2Str
                        DEC       _ACCB
                        BRNE      SYSTEM._L0775
                        RET

SYSTEM.Float2Str_D:
                        PUSH      _ACCBLO
                        PUSH      _ACCBHI
                        CLR       _ACCDHI
                        LD        _ACCB, X+
SYSTEM._L0776:
                        LD        _ACCA, X+
                        CPI       _ACCA, DECIMALSEP
                        BREQ      SYSTEM._L0777
                        INC       _ACCDHI
                        DEC       _ACCB
                        BRNE      SYSTEM._L0776
SYSTEM._L0777:
                        POP       _ACCBHI
                        POP       _ACCBLO
                        RET

SYSTEM.Float2Str_R:
                        LDD       _ACCCLO, Y+0
                        MOV       _ACCA, _ACCCLO
                        INC       _ACCCLO
                        CLR       _ACCCHI
                        ADD       _ACCCLO, _FRAMEPTR
                        ADC       _ACCCHI, _FPTRHI
SYSTEM._L0778:
                        DEC       _ACCA
                        LD        _ACCB, -Z
                        CPI       _ACCB, 030h
                        BREQ      SYSTEM._L0778
                        CPI       _ACCB, DECIMALSEP
                        BREQ      SYSTEM._L0779
                        INC       _ACCA
SYSTEM._L0779:
                        STD       Y+0, _ACCA
                        RET

SYSTEM.Float2Str_P:
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        LDD       _ACCCLO, Y+0
                        INC       _ACCCLO
                        STD       Y+0, _ACCCLO
                        CLR       _ACCCHI
                        ADD       _ACCCLO, _FRAMEPTR
                        ADC       _ACCCHI, _FPTRHI
                        STD       Z+0, _ACCA
                        POP       _ACCCHI
                        POP       _ACCCLO
                        RET

SYSTEM.ExpFloat:
                        LDI       _ACCDLO, 3FB8AA3Bh AND 0FFh
                        LDI       _ACCDHI, 3FB8AA3Bh SHRB 8
                        LDI       _ACCELO, 3FB8AA3Bh SHRB 16
                        LDI       _ACCEHI, 3FB8AA3Bh SHRB 24
                        MOVW      _ACCBLO, _ACCB
                        MOVW      _ACCCLO, _ACCALO
                        CALL      SYSTEM.MulFloat_R
                        PUSH      _ACCB
                        PUSH      _ACCA
                        PUSH      _ACCALO
                        PUSH      _ACCAHI
                        LDI       _ACCDLO, 3F000000h AND 0FFh
                        LDI       _ACCDHI, 3F000000h SHRB 8
                        LDI       _ACCELO, 3F000000h SHRB 16
                        LDI       _ACCEHI, 3F000000h SHRB 24
                        MOVW      _ACCBLO, _ACCB
                        MOVW      _ACCCLO, _ACCALO
                        CALL      SYSTEM.AddFloat1
                        CALL      SYSTEM.FENTIERx
                        SBRS      _ACCAHI, 7
                        RJMP      SYSTEM._L0781
                        CPI       _ACCAHI, 0FFh
                        BRNE      SYSTEM._L0780
                        CPI       _ACCALO, 0FFh
                        BRNE      SYSTEM._L0780
                        CPI       _ACCA, 0FFh
                        BRNE      SYSTEM._L0780
                        CPI       _ACCB, -128 AND 0FFh
                        BRSH      SYSTEM._L0783
SYSTEM._L0780:
                        LDI       _ACCB, 00000000h AND 0FFh
                        LDI       _ACCA, 00000000h SHRB 8
                        LDI       _ACCALO, 00000000h SHRB 16
                        LDI       _ACCAHI, 00000000h SHRB 24
                        RJMP      SYSTEM._L0782
SYSTEM._L0781:
                        TST       _ACCAHI
                        BRNE      SYSTEM._L0782
                        TST       _ACCALO
                        BRNE      SYSTEM._L0782
                        TST       _ACCA
                        BRNE      SYSTEM._L0782
                        CPI       _ACCB, 127
                        BRLO      SYSTEM._L0783
                        LDI       _ACCB, 7FFFFFFFh AND 0FFh
                        LDI       _ACCA, 7FFFFFFFh SHRB 8
                        LDI       _ACCALO, 7FFFFFFFh SHRB 16
                        LDI       _ACCAHI, 7FFFFFFFh SHRB 24
SYSTEM._L0782:
                        POP       _ACCCHI
                        POP       _ACCCLO
                        POP       _ACCBHI
                        POP       _ACCBLO
                        SET
                        BLD       Flags, _ERRFLAG
                        RET
SYSTEM._L0783:
                        MOVW      _ACCBLO, _ACCB
                        MOVW      _ACCCLO, _ACCALO
                        POP       _ACCAHI
                        POP       _ACCALO
                        POP       _ACCA
                        POP       _ACCB
                        PUSH      _ACCBLO
                        PUSH      _ACCBHI
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        PUSH      _ACCB
                        PUSH      _ACCA
                        PUSH      _ACCALO
                        PUSH      _ACCAHI
                        MOVW      _ACCB, _ACCBLO
                        MOVW      _ACCALO, _ACCCLO
                        SET
                        BLD       Flags, _SIGN
                        CALL      SYSTEM.LIntToFloat
                        LDI       _ACCBLO, 80h
                        EOR       _ACCAHI, _ACCBLO
                        MOVW      _ACCBLO, _ACCB
                        MOVW      _ACCCLO, _ACCALO
                        POP       _ACCEHI
                        POP       _ACCELO
                        POP       _ACCDHI
                        POP       _ACCDLO
                        CALL      SYSTEM.AddFloat1
                        PUSH      _ACCB
                        PUSH      _ACCA
                        PUSH      _ACCALO
                        PUSH      _ACCAHI
                        CALL      SYSTEM.SqrFloat
                        PUSH      _ACCB
                        PUSH      _ACCA
                        PUSH      _ACCALO
                        PUSH      _ACCAHI
                        LDI       _ACCDLO, 3D6C5665h AND 0FFh
                        LDI       _ACCDHI, 3D6C5665h SHRB 8
                        LDI       _ACCELO, 3D6C5665h SHRB 16
                        LDI       _ACCEHI, 3D6C5665h SHRB 24
                        MOVW      _ACCBLO, _ACCB
                        MOVW      _ACCCLO, _ACCALO
                        CALL      SYSTEM.MulFloat_R
                        LDI       _ACCDLO, 40E6E1AAh AND 0FFh
                        LDI       _ACCDHI, 40E6E1AAh SHRB 8
                        LDI       _ACCELO, 40E6E1AAh SHRB 16
                        LDI       _ACCEHI, 40E6E1AAh SHRB 24
                        MOVW      _ACCBLO, _ACCB
                        MOVW      _ACCCLO, _ACCALO
                        CALL      SYSTEM.AddFloat1
                        POP       _ACCCHI
                        POP       _ACCCLO
                        POP       _ACCBHI
                        POP       _ACCBLO
                        POP       _ACCEHI
                        POP       _ACCELO
                        POP       _ACCDHI
                        POP       _ACCDLO
                        PUSH      _ACCBLO
                        PUSH      _ACCBHI
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        MOVW      _ACCBLO, _ACCB
                        MOVW      _ACCCLO, _ACCALO
                        CALL      SYSTEM.MulFloat_R
                        POP       _ACCCHI
                        POP       _ACCCLO
                        POP       _ACCBHI
                        POP       _ACCBLO
                        PUSH      _ACCB
                        PUSH      _ACCA
                        PUSH      _ACCALO
                        PUSH      _ACCAHI
                        LDI       _ACCDLO, 41A68BB7h AND 0FFh
                        LDI       _ACCDHI, 41A68BB7h SHRB 8
                        LDI       _ACCELO, 41A68BB7h SHRB 16
                        LDI       _ACCEHI, 41A68BB7h SHRB 24
                        CALL      SYSTEM.AddFloat1
                        MOVW      _ACCDLO, _ACCB
                        MOVW      _ACCELO, _ACCALO
                        POP       _ACCCHI
                        POP       _ACCCLO
                        POP       _ACCBHI
                        POP       _ACCBLO
                        PUSH      _ACCBLO
                        PUSH      _ACCBHI
                        PUSH      _ACCCLO
                        PUSH      _ACCCHI
                        LDI       _ACCA, 80h
                        EOR       _ACCCHI, _ACCA
                        CALL      SYSTEM.AddFloat1
                        POP       _ACCEHI
                        POP       _ACCELO
                        POP       _ACCDHI
                        POP       _ACCDLO
                        MOVW      _ACCBLO, _ACCB
                        MOVW      _ACCCLO, _ACCALO
                        CALL      SYSTEM.DivFloat_R
                        LDI       _ACCBLO, 3F000000h AND 0FFh
                        LDI       _ACCBHI, 3F000000h SHRB 8
                        LDI       _ACCCLO, 3F000000h SHRB 16
                        LDI       _ACCCHI, 3F000000h SHRB 24
                        MOVW      _ACCDLO, _ACCB
                        MOVW      _ACCELO, _ACCALO
                        CALL      SYSTEM.AddFloat1
                        POP       _ACCCHI
                        POP       _ACCCLO
                        POP       _ACCBHI
                        POP       _ACCBLO
                        MOV       _ACCEHI, _ACCAHI
                        LSL       _ACCALO
                        ROL       _ACCEHI
                        INC       _ACCBLO
                        ADD       _ACCEHI, _ACCBLO
                        LSR       _ACCEHI
                        ROR       _ACCALO
                        ANDI      _ACCAHI, 080h
                        OR        _ACCAHI, _ACCEHI
                        RET

SYSTEM.PowFloat:
                        POP       _ACCBHI
                        POP       _ACCBLO
                        POP       _ACCEHI
                        POP       _ACCELO
                        POP       _ACCDHI
                        POP       _ACCDLO
                        PUSH      _ACCBLO
                        PUSH      _ACCBHI
SYSTEM.PowFloat1:
                        TST       _ACCEHI
                        BRNE      SYSTEM._L0784
                        CLR       _ACCA
                        CLR       _ACCB
                        CLR       _ACCAHI
                        CLR       _ACCALO
                        RET
SYSTEM._L0784:
                        TST       _ACCAHI
                        BRNE      SYSTEM._L0785
                        LDI       _ACCB, 000h
                        LDI       _ACCA, 000h
                        LDI       _ACCALO, 080h
                        LDI       _ACCAHI, 03Fh
                        RET
SYSTEM._L0785:
                        PUSH      _ACCB
                        PUSH      _ACCA
                        PUSH      _ACCALO
                        PUSH      _ACCAHI
                        MOVW      _ACCB, _ACCDLO
                        MOVW      _ACCALO, _ACCELO
                        CALL      SYSTEM.LogNFloat
                        POP       _ACCEHI
                        POP       _ACCELO
                        POP       _ACCDHI
                        POP       _ACCDLO
                        MOVW      _ACCBLO, _ACCB
                        MOVW      _ACCCLO, _ACCALO
                        CALL      SYSTEM.MulFloat_R
                        JMP       SYSTEM.ExpFloat

SYSTEM.LogNFloat:
                        MOV       _ACCEHI, _ACCAHI
                        MOV       _ACCELO, _ACCALO
                        ROL       _ACCELO
                        ROL       _ACCEHI
                        CLR       _ACCELO
                        SUBI      _ACCEHI, 127
                        SBCI      _ACCELO, 00h
                        PUSH      _ACCELO
                        PUSH      _ACCEHI
                        ANDI      _ACCAHI, 080h
                        ORI       _ACCAHI, 03Fh
                        ORI       _ACCALO, 080h
                        LDI       _ACCBHI, 004h
                        LDI       _ACCBLO, 0F3h
                        LDI       _ACCCHI, 03Fh
                        LDI       _ACCCLO, 0B5h
                        MOVW      _ACCDLO, _ACCB
                        MOVW      _ACCELO, _ACCALO
                        CALL      SYSTEM.MulFloat_R
                        PUSH      _ACCB
                        PUSH      _ACCA
                        PUSH      _ACCALO
                        PUSH      _ACCAHI
                        MOVW      _ACCDLO, _ACCB
                        MOVW      _ACCELO, _ACCALO
                        LDI       _ACCBLO, 000h
                        LDI       _ACCBHI, 000h
                        LDI       _ACCCLO, 080h
                        LDI       _ACCCHI, 03Fh
                        CALL      SYSTEM.SubFloat1
                        POP       _ACCCHI
                        POP       _ACCCLO
                        POP       _ACCBHI
                        POP       _ACCBLO
                        PUSH      _ACCB
                        PUSH      _ACCA
                        PUSH      _ACCALO
                        PUSH      _ACCAHI
                        LDI       _ACCDLO, 000h
                        LDI       _ACCDHI, 000h
                        LDI       _ACCELO, 080h
                        LDI       _ACCEHI, 03Fh
                        CALL      SYSTEM.AddFloat1
                        POP       _ACCEHI
                        POP       _ACCELO
                        POP       _ACCDHI
                        POP       _ACCDLO
                        MOVW      _ACCBLO, _ACCB
                        MOVW      _ACCCLO, _ACCALO
                        CALL      SYSTEM.DivFloat_R
                        PUSH      _ACCB
                        PUSH      _ACCA
                        PUSH      _ACCALO
                        PUSH      _ACCAHI
                        CALL      SYSTEM.SqrFloat
                        ORI       _ACCAHI, 080h
                        MOVW      _ACCBLO, _ACCB
                        MOVW      _ACCCLO, _ACCALO
                        LDI       _ACCDLO, 3FD4114Ch AND 0FFh
                        LDI       _ACCDHI, 3FD4114Ch SHRB 8
                        LDI       _ACCELO, 3FD4114Ch SHRB 16
                        LDI       _ACCEHI, 3FD4114Ch SHRB 24
                        CALL      SYSTEM.AddFloat1
                        LDI       _ACCDLO, 3FEA3855h AND 0FFh
                        LDI       _ACCDHI, 3FEA3855h SHRB 8
                        LDI       _ACCELO, 3FEA3855h SHRB 16
                        LDI       _ACCEHI, 3FEA3855h SHRB 24
                        MOVW      _ACCBLO, _ACCB
                        MOVW      _ACCCLO, _ACCALO
                        CALL      SYSTEM.DivFloat_R
                        LDI       _ACCDLO, 3F654226h AND 0FFh
                        LDI       _ACCDHI, 3F654226h SHRB 8
                        LDI       _ACCELO, 3F654226h SHRB 16
                        LDI       _ACCEHI, 3F654226h SHRB 24
                        MOVW      _ACCBLO, _ACCB
                        MOVW      _ACCCLO, _ACCALO
                        CALL      SYSTEM.AddFloat1
                        POP       _ACCEHI
                        POP       _ACCELO
                        POP       _ACCDHI
                        POP       _ACCDLO
                        MOVW      _ACCBLO, _ACCB
                        MOVW      _ACCCLO, _ACCALO
                        CALL      SYSTEM.MulFloat_R
                        POP       _ACCEHI
                        POP       _ACCELO
                        PUSH      _ACCB
                        PUSH      _ACCA
                        PUSH      _ACCALO
                        PUSH      _ACCAHI
                        MOV       _ACCB, _ACCEHI
                        MOV       _ACCA, _ACCELO
                        MOV       _ACCAHI, _ACCELO
                        MOV       _ACCALO, _ACCELO
                        SET
                        BLD       Flags, _SIGN
                        CALL      SYSTEM.LIntToFloat
                        LDI       _ACCDLO, 0BF000000h AND 0FFh
                        LDI       _ACCDHI, 0BF000000h SHRB 8
                        LDI       _ACCELO, 0BF000000h SHRB 16
                        LDI       _ACCEHI, 0BF000000h SHRB 24
                        MOVW      _ACCBLO, _ACCB
                        MOVW      _ACCCLO, _ACCALO
                        CALL      SYSTEM.AddFloat1
                        MOVW      _ACCBLO, _ACCB
                        MOVW      _ACCCLO, _ACCALO
                        LDI       _ACCDLO, 3F317218h AND 0FFh
                        LDI       _ACCDHI, 3F317218h SHRB 8
                        LDI       _ACCELO, 3F317218h SHRB 16
                        LDI       _ACCEHI, 3F317218h SHRB 24
                        CALL      SYSTEM.MulFloat_R
                        MOVW      _ACCBLO, _ACCB
                        MOVW      _ACCCLO, _ACCALO
                        POP       _ACCEHI
                        POP       _ACCELO
                        POP       _ACCDHI
                        POP       _ACCDLO
                        JMP       SYSTEM.AddFloat1

SYSTEM.Log10Float:
                        CALL      SYSTEM.LogNFloat
                        MOVW      _ACCDLO, _ACCB
                        MOVW      _ACCELO, _ACCALO
                        LDI       _ACCBLO, 40135D80h AND 0FFh
                        LDI       _ACCBHI, 40135D80h SHRB 8
                        LDI       _ACCCLO, 40135D80h SHRB 16
                        LDI       _ACCCHI, 40135D80h SHRB 24
                        JMP       SYSTEM.DivFloat_R


SYSTEM.SHR8:
                        MOV       _ACCALO, _ACCA
                        MOV       _ACCA, _ACCB
SYSTEM.SHR8_R:
                        TST       _ACCALO
                        BREQ      SYSTEM._L0787
                        CPI       _ACCALO, 08h
                        BRCS      SYSTEM._L0786
                        CLR       _ACCA
                        RET
SYSTEM._L0786:
                        LSR       _ACCA
                        DEC       _ACCALO
                        BRNE      SYSTEM._L0786
SYSTEM._L0787:
                        RET


SYSTEM.DIV8:
                        POP       _ACCAHI
                        POP       _ACCALO
                        MOV       _ACCB, _ACCA
                        POP       _ACCA
                        PUSH      _ACCALO
                        PUSH      _ACCAHI
SYSTEM.DIV8_R:
                        CLR       _ACCAHI
                        LDI       _ACCALO, 9
SYSTEM._L0788:
                        ROL       _ACCA
                        DEC       _ACCALO
                        BRNE      SYSTEM._L0789
                        MOV       _ACCB, _ACCAHI
                        RET
SYSTEM._L0789:
                        ROL       _ACCAHI
                        SUB       _ACCAHI, _ACCB
                        BRCC      SYSTEM._L0790
                        ADD       _ACCAHI, _ACCB
                        CLC
                        RJMP      SYSTEM._L0788
SYSTEM._L0790:
                        SEC
                        RJMP      SYSTEM._L0788


SYSTEM.MUL16:
                        MOVW      _ACCALO, _ACCB
                        CLR       _ACCDLO
                        BST       Flags, _SIGN
                        BRTC      SYSTEM.MUL16_G
                        MOVW      _ACCELO, _ACCBLO
                        MULS      _ACCAHI, _ACCEHI
                        MOVW      _ACCCLO, _ACCGLO
                        MUL       _ACCALO, _ACCELO
                        MOVW      _ACCB, _ACCGLO
                        MULSU     _ACCAHI, _ACCELO
                        SBC       _ACCCHI, _ACCDLO
                        ADD       _ACCA, _ACCGLO
                        ADC       _ACCCLO, _ACCGHI
                        ADC       _ACCCHI, _ACCDLO
                        MULSU     _ACCEHI, _ACCALO
                        SBC       _ACCCHI, _ACCDLO
                        ADD       _ACCA, _ACCGLO
                        ADC       _ACCCLO, _ACCGHI
                        ADC       _ACCCHI, _ACCDLO
                        RET

SYSTEM.MUL16_G:
                        MUL       _ACCAHI, _ACCBHI
                        MOVW      _ACCCLO, _ACCGLO
                        MUL       _ACCALO, _ACCBLO
                        MOVW      _ACCB, _ACCGLO
                        MUL       _ACCAHI, _ACCBLO
                        ADD       _ACCA, _ACCGLO
                        ADC       _ACCCLO, _ACCGHI
                        ADC       _ACCCHI, _ACCDLO
                        MUL       _ACCALO, _ACCBHI
                        ADD       _ACCA, _ACCGLO
                        ADC       _ACCCLO, _ACCGHI
                        ADC       _ACCCHI, _ACCDLO
                        RET


SYSTEM.DIV16:
                        MOVW      _ACCALO, _ACCB
SYSTEM.DIV16_R:
                        CLR       _ACCDHI
                        BST       Flags, _SIGN
                        BRTC      SYSTEM._L0792
                        MOV       _ACCDHI, _ACCBHI
                        MOV       _ACCDLO, _ACCAHI
                        EOR       _ACCDLO, _ACCBHI
                        CLT
                        SBRS      _ACCDLO, 7
                        BLD       Flags, _SIGN
                        SBRS      _ACCAHI, 7
                        RJMP      SYSTEM._L0794
                        NEG       _ACCALO
                        BRNE      SYSTEM._L0795
                        DEC       _ACCAHI
SYSTEM._L0795:
                        COM       _ACCAHI
SYSTEM._L0794:
                        SBRS      _ACCBHI, 7
                        RJMP      SYSTEM._L0792
                        NEG       _ACCBLO
                        BRNE      SYSTEM._L0796
                        DEC       _ACCBHI
SYSTEM._L0796:
                        COM       _ACCBHI
SYSTEM._L0792:
                        CLR       _ACCCLO
                        SUB       _ACCCHI, _ACCCHI
                        LDI       _ACCA, 17
SYSTEM._L0797:
                        ROL       _ACCBLO
                        ROL       _ACCBHI
                        DEC       _ACCA
                        BRNE      SYSTEM._L0798
                        MOVW      _ACCB, _ACCBLO
                        BST       Flags, _SIGN
                        BRTC      SYSTEM._L0793
                        NEG       _ACCB
                        BRNE      SYSTEM._L0800
                        DEC       _ACCA
SYSTEM._L0800:
                        COM       _ACCA
SYSTEM._L0793:
                        RET
SYSTEM._L0798:
                        ROL       _ACCCLO
                        ROL       _ACCCHI
                        SUB       _ACCCLO, _ACCALO
                        SBC       _ACCCHI, _ACCAHI
                        BRCC      SYSTEM._L0799
                        ADD       _ACCCLO, _ACCALO
                        ADC       _ACCCHI, _ACCAHI
                        CLC
                        RJMP      SYSTEM._L0797
SYSTEM._L0799:
                        SEC
                        RJMP      SYSTEM._L0797


SYSTEM.MUL32:
                        MOVW      _ACCBLO, _ACCB
                        MOVW      _ACCCLO, _ACCALO
                        POP       _ACCA
                        POP       _ACCB
                        POP       _ACCEHI
                        POP       _ACCELO
                        POP       _ACCDHI
                        POP       _ACCDLO
                        PUSH      _ACCB
                        PUSH      _ACCA
                        RJMP      SYSTEM._L0801
SYSTEM.MUL32_R:
                        MOVW      _ACCBLO, _ACCB
                        MOVW      _ACCCLO, _ACCALO
SYSTEM._L0801:
                        BST       Flags, _SIGN
                        BRTC      SYSTEM._L0802
                        MOV       _ACCFLO, _ACCCHI
                        EOR       _ACCFLO, _ACCEHI
                        CLT
                        SBRS      _ACCFLO, 7
                        BLD       Flags, _SIGN
                        SBRS      _ACCCHI, 7
                        RJMP      SYSTEM._L0804
                        COM       _ACCBLO
                        COM       _ACCBHI
                        COM       _ACCCLO
                        COM       _ACCCHI
                        SUBI      _ACCBLO, 0FFh
                        SBCI      _ACCBHI, 0FFh
                        SBCI      _ACCCLO, 0FFh
                        SBCI      _ACCCHI, 0FFh
SYSTEM._L0804:
                        SBRS      _ACCEHI, 7
                        RJMP      SYSTEM._L0802
                        COM       _ACCDLO
                        COM       _ACCDHI
                        COM       _ACCELO
                        COM       _ACCEHI
                        SUBI      _ACCDLO, 0FFh
                        SBCI      _ACCDHI, 0FFh
                        SBCI      _ACCELO, 0FFh
                        SBCI      _ACCEHI, 0FFh
SYSTEM._L0802:
                        CLR       _ACCFHI
                        CLR       _ACCFLO
                        CLR       _ACCGHI
                        CLR       _ACCGLO
                        LDI       _ACCA, 32
                        LSR       _ACCEHI
                        ROR       _ACCELO
                        ROR       _ACCDHI
                        ROR       _ACCDLO
SYSTEM._L0806:
                        BRCC      SYSTEM._L0805
                        ADD       _ACCFLO, _ACCBLO
                        ADC       _ACCFHI, _ACCBHI
                        ADC       _ACCGLO, _ACCCLO
                        ADC       _ACCGHI, _ACCCHI
SYSTEM._L0805:
                        ROR       _ACCGHI
                        ROR       _ACCGLO
                        ROR       _ACCFHI
                        ROR       _ACCFLO
                        ROR       _ACCEHI
                        ROR       _ACCELO
                        ROR       _ACCDHI
                        ROR       _ACCDLO
                        DEC       _ACCA
                        BRNE      SYSTEM._L0806
                        MOVW      _ACCB, _ACCDLO
                        MOVW      _ACCALO, _ACCELO
                        BST       Flags, _SIGN
                        BRTC      SYSTEM._L0803
                        SUBI      _ACCB, 01h
                        SBCI      _ACCA, 00h
                        SBCI      _ACCALO, 00h
                        SBCI      _ACCAHI, 00h
                        COM       _ACCALO
                        COM       _ACCAHI
                        COM       _ACCA
                        COM       _ACCB
SYSTEM._L0803:
                        RET



SYSTEM.DIV32:
                        MOVW      _ACCBLO, _ACCB
                        MOVW      _ACCCLO, _ACCALO
                        POP       _ACCA
                        POP       _ACCB
                        POP       _ACCEHI
                        POP       _ACCELO
                        POP       _ACCDHI
                        POP       _ACCDLO
                        PUSH      _ACCB
                        PUSH      _ACCA
SYSTEM.DIV32_R:
                        CLR       _ACCA
                        BST       Flags, _SIGN
                        BRTC      SYSTEM.DIV32_U
                        MOV       _ACCA, _ACCEHI
                        MOV       _ACCFLO, _ACCCHI
                        EOR       _ACCFLO, _ACCEHI
                        CLT
                        SBRS      _ACCFLO, 7
                        BLD       Flags, _SIGN
                        SBRS      _ACCCHI, 7
                        RJMP      SYSTEM._L0807
                        COM       _ACCBLO
                        COM       _ACCBHI
                        COM       _ACCCLO
                        COM       _ACCCHI
                        SUBI      _ACCBLO, 0FFh
                        SBCI      _ACCBHI, 0FFh
                        SBCI      _ACCCLO, 0FFh
                        SBCI      _ACCCHI, 0FFh
SYSTEM._L0807:
                        SBRS      _ACCEHI, 7
                        RJMP      SYSTEM.DIV32_U
                        COM       _ACCDLO
                        COM       _ACCDHI
                        COM       _ACCELO
                        COM       _ACCEHI
                        SUBI      _ACCDLO, 0FFh
                        SBCI      _ACCDHI, 0FFh
                        SBCI      _ACCELO, 0FFh
                        SBCI      _ACCEHI, 0FFh
SYSTEM.DIV32_U:
                        PUSH      _ACCA
                        CLR       _ACCFLO
                        CLR       _ACCFHI
                        CLR       _ACCGLO
                        CLR       _ACCGHI
                        LDI       _ACCA, 33
SYSTEM._L0809:
                        ROL       _ACCDLO
                        ROL       _ACCDHI
                        ROL       _ACCELO
                        ROL       _ACCEHI
                        DEC       _ACCA
                        BRNE      SYSTEM._L0808
                        MOVW      _ACCB, _ACCDLO
                        MOVW      _ACCALO, _ACCELO
                        BST       Flags, _SIGN
                        BRTC      SYSTEM._L0811
                        SUBI      _ACCB, 01h
                        SBCI      _ACCA, 00h
                        SBCI      _ACCALO, 00h
                        SBCI      _ACCAHI, 00h
                        COM       _ACCALO
                        COM       _ACCAHI
                        COM       _ACCA
                        COM       _ACCB
SYSTEM._L0811:
                        POP       _ACCDHI
                        RET
SYSTEM._L0808:
                        ROL       _ACCFLO
                        ROL       _ACCFHI
                        ROL       _ACCGLO
                        ROL       _ACCGHI
                        SUB       _ACCFLO, _ACCBLO
                        SBC       _ACCFHI, _ACCBHI
                        SBC       _ACCGLO, _ACCCLO
                        SBC       _ACCGHI, _ACCCHI
                        BRCC      SYSTEM._L0810
                        ADD       _ACCFLO, _ACCBLO
                        ADC       _ACCFHI, _ACCBHI
                        ADC       _ACCGLO, _ACCCLO
                        ADC       _ACCGHI, _ACCCHI
                        CLC
                        RJMP      SYSTEM._L0809
SYSTEM._L0810:
                        SEC
                        RJMP      SYSTEM._L0809


SYSTEM.SHL32:
                        TST       _ACCCLO
                        BREQ      SYSTEM._L0813
                        CPI       _ACCCLO, 20h
                        BRCS      SYSTEM._L0812
                        CLR       _ACCA
                        CLR       _ACCB
                        CLR       _ACCALO
                        CLR       _ACCAHI
                        RET
SYSTEM._L0812:
                        LSL       _ACCB
                        ROL       _ACCA
                        ROL       _ACCALO
                        ROL       _ACCAHI
                        DEC       _ACCCLO
                        BRNE      SYSTEM._L0812
SYSTEM._L0813:
                        RET

SYSTEM.SetSysTimer:
                        CLI
                        ST        Z+, _ACCB
                        ST        Z+, _ACCA
                        MOV       _ACCBLO, _SYSTFLAGS
                        TST       _ACCA
                        BRNE       SYSTEM._L0814
                        TST       _ACCB
                        BRNE       SYSTEM._L0814
                        COM       _ACCBHI
                        AND       _ACCBLO, _ACCBHI
                        MOV       _SYSTFLAGS, _ACCBLO
                        SBRC      Flags, IntFlag
                        SEI
                        RET
SYSTEM._L0814:
                        OR        _ACCBLO, _ACCBHI
                        MOV       _SYSTFLAGS, _ACCBLO
                        SBRC      Flags, IntFlag
                        SEI
                        RET

SYSTEM.GETADC:
                        CLI
                        CPI       _ACCA, 003h
                        BRNE      SYSTEM._L0815
                        LDS       _ACCB, _ADCBUFF
                        LDS       _ACCA, _ADCBUFF +1
                        RJMP      SYSTEM._L0816
SYSTEM._L0815:
                        LDS       _ACCB, _ADCBUFF +2
                        LDS       _ACCA, _ADCBUFF +3
SYSTEM._L0816:
                        SBRC      Flags, IntFlag
                        SEI
                        RET

SYSTEM.SETADCFIXED:
                        CLI
                        LDS       _ACCB, _ADCBUFF +4
                        LDD       _ACCA, Y+001h
                        TST       _ACCA
                        BRNE      SYSTEM._L0817
                        ANDI      _ACCB, 0FEh
                        RJMP      SYSTEM._L0818
                        ORI       _ACCB, 01h
                        LDD       _ACCA, Y+000h
                        CPI       _ACCA, 003h
                        BREQ      SYSTEM._L0817
                        LDI       _ACCA, 004h
SYSTEM._L0817:
                        DEC       _ACCA
                        IN        _ACCCHI, admux
                        CBR       _ACCCHI, 7
                        OR        _ACCA, _ACCCHI
                        OUT       admux, _ACCA
SYSTEM._L0818:
                        STS       _ADCBUFF +4, _ACCB
                        SBRC      Flags, IntFlag
                        SEI
                        RET

SYSTEM.DefIntErr:
                        RETI


                        .ROMCONST $

SYSTEM.DECDIG:
                        .Byte     040h
                        .Byte     042h
                        .Byte     00Fh
                        .Byte     000h
                        .Byte     0A0h
                        .Byte     086h
                        .Byte     001h
                        .Byte     000h
SYSTEM.IntDivTab:
                        .Byte     010h
                        .Byte     027h
                        .Byte     000h
                        .Byte     000h
                        .Byte     0E8h
                        .Byte     003h
                        .Byte     000h
                        .Byte     000h
                        .Byte     064h
                        .Byte     000h
                        .Byte     000h
                        .Byte     000h
                        .Byte     00Ah
                        .Byte     000h
                        .Byte     000h
                        .Byte     000h
SYSTEM.StrDivTabX:
                        .Byte     001h
                        .Byte     000h
                        .Byte     000h
                        .Byte     000h

                        ; ============ String-constant tables ============
                        .SYM      SoftDDS.Vers1Str
SoftDDS.Vers1Str:
                        .BYTE     29
                        .ASCII    "3.482 [DDS by CM/c't 03/2007]"

                        .SYM      SoftDDS.Vers3Str
SoftDDS.Vers3Str:
                        .BYTE     9
                        .ASCII    "DDS 3.482"

                        .SYM      SoftDDS.AdrStr
SoftDDS.AdrStr:
                        .BYTE     4
                        .ASCII    "Adr "

                        .SYM      SoftDDS.FrequStr
SoftDDS.FrequStr:
                        .BYTE     8
                        .ASCII    "Frequ Hz"

                        .SYM      SoftDDS.LevelStr
SoftDDS.LevelStr:
                        .BYTE     6
                        .ASCII    "Level "

                        .SYM      SoftDDS.OffsetStr
SoftDDS.OffsetStr:
                        .BYTE     8
                        .ASCII    "Offset V"

                        .SYM      SoftDDS.mVInpStr
SoftDDS.mVInpStr:
                        .BYTE     8
                        .ASCII    "Input mV"

                        .SYM      SoftDDS.WaveStr
SoftDDS.WaveStr:
                        .BYTE     8
                        .ASCII    "Function"

                        .SYM      SoftDDS.BurstStr
SoftDDS.BurstStr:
                        .BYTE     8
                        .ASCII    "Burst ms"

$St_String11:
                        .BYTE     1
                        .ASCII    "+"

$St_String12:
                        .BYTE     4
                        .ASCII    "    "

$St_String13:
                        .BYTE     0


                        ; ============ array-constant tables ============
                        .SYM      SoftDDS.fhz
SoftDDS.fhz:
                        .WORD     09000h
                        .WORD     003D0h
                        .WORD     0A800h
                        .WORD     00061h
                        .WORD     0C400h
                        .WORD     00009h
                        .WORD     0FA00h
                        .WORD     00000h
                        .WORD     01900h
                        .WORD     00000h
                        .WORD     00280h
                        .WORD     00000h
                        .WORD     00040h
                        .WORD     00000h
                        .WORD     00006h
                        .WORD     00000h

                        .SYM      SoftDDS.ErrStrArr
SoftDDS.ErrStrArr:
                        .BYTE     4
                        .ASCII    "[OK]"
                        .BYTE     00h
                        .BYTE     00h
                        .BYTE     00h
                        .BYTE     00h
                        .BYTE     00h

                        .BYTE     8
                        .ASCII    "[SRQUSR]"
                        .BYTE     00h

                        .BYTE     6
                        .ASCII    "[BUSY]"
                        .BYTE     00h
                        .BYTE     00h
                        .BYTE     00h

                        .BYTE     8
                        .ASCII    "[OVERLD]"
                        .BYTE     00h

                        .BYTE     8
                        .ASCII    "[CMDERR]"
                        .BYTE     00h

                        .BYTE     8
                        .ASCII    "[PARERR]"
                        .BYTE     00h


                        .SYM      SoftDDS.WaveSelStrArr
SoftDDS.WaveSelStrArr:
                        .BYTE     3
                        .ASCII    "Off"
                        .BYTE     00h
                        .BYTE     00h
                        .BYTE     00h
                        .BYTE     00h
                        .BYTE     00h
                        .BYTE     00h

                        .BYTE     3
                        .ASCII    "Sin"
                        .BYTE     00h
                        .BYTE     00h
                        .BYTE     00h
                        .BYTE     00h
                        .BYTE     00h
                        .BYTE     00h

                        .BYTE     3
                        .ASCII    "Tri"
                        .BYTE     00h
                        .BYTE     00h
                        .BYTE     00h
                        .BYTE     00h
                        .BYTE     00h
                        .BYTE     00h

                        .BYTE     3
                        .ASCII    "Squ"
                        .BYTE     00h
                        .BYTE     00h
                        .BYTE     00h
                        .BYTE     00h
                        .BYTE     00h
                        .BYTE     00h

                        .BYTE     3
                        .ASCII    "Lgc"
                        .BYTE     00h
                        .BYTE     00h
                        .BYTE     00h
                        .BYTE     00h
                        .BYTE     00h
                        .BYTE     00h

                        .BYTE     3
                        .ASCII    "Ext"
                        .BYTE     00h
                        .BYTE     00h
                        .BYTE     00h
                        .BYTE     00h
                        .BYTE     00h
                        .BYTE     00h


                        .SYM      SoftDDS.CmdStrArr
SoftDDS.CmdStrArr:
                        .BYTE     3
                        .ASCII    "STR"

                        .BYTE     3
                        .ASCII    "IDN"

                        .BYTE     3
                        .ASCII    "TRG"

                        .BYTE     3
                        .ASCII    "FRQ"

                        .BYTE     3
                        .ASCII    "LVL"

                        .BYTE     3
                        .ASCII    "DBU"

                        .BYTE     3
                        .ASCII    "WAV"

                        .BYTE     3
                        .ASCII    "BST"

                        .BYTE     3
                        .ASCII    "DCO"

                        .BYTE     3
                        .ASCII    "VAL"

                        .BYTE     3
                        .ASCII    "ALL"

                        .BYTE     3
                        .ASCII    "NOP"


                        .SYM      SoftDDS.Cmd2SubChArr
SoftDDS.Cmd2SubChArr:
                        .BYTE     0FFh
                        .BYTE     0FEh
                        .BYTE     0FDh
                        .BYTE     000h
                        .BYTE     001h
                        .BYTE     002h
                        .BYTE     003h
                        .BYTE     004h
                        .BYTE     00Ah
                        .BYTE     000h
                        .BYTE     063h
                        .BYTE     000h


                        ; ============ Fixed addr String-constant tables ============

                        ; ============ fixed addr array-constant tables ============

                        ; ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
                        ; Reset and Interrupt vectors
                        ; ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


                        .ENDCODE
SYSTEM.ENDCODE:
                        .ORG       0, VECTTAB
                        .VECTTAB
SYSTEM.VectTab:
                        JMP       SYSTEM.RESET
                        JMP       SYSTEM.DefIntErr
                        JMP       SYSTEM.DefIntErr
                        JMP       SYSTEM.DefIntErr
                        JMP       SYSTEM.DefIntErr
                        JMP       SYSTEM.DefIntErr
                        JMP       SYSTEM.DefIntErr
                        JMP       SYSTEM.$INTERRUPT_TIMER1COMPA
                        JMP       SYSTEM.DefIntErr
                        JMP       SYSTEM.DefIntErr
                        JMP       SYSTEM.DefIntErr
                        JMP       SYSTEM.$INTERRUPT_TIMER0
                        JMP       SYSTEM.DefIntErr
                        JMP       SYSTEM.$INTERRUPT_RXRDY
                        JMP       SYSTEM.$INTERRUPT_TXEMPTY
                        JMP       SYSTEM.DefIntErr
                        JMP       SYSTEM.DefIntErr
                        JMP       SYSTEM.DefIntErr
                        JMP       SYSTEM.DefIntErr
                        JMP       SYSTEM.DefIntErr
                        JMP       SYSTEM.DefIntErr

                        .VECTTABE
SYSTEM.ENDPROG:

                        .END

                        ; ============ End of Program ============


                        ; System uses registers
                        ; from bottom     = 00000h
                        ; upto            = 00006h
                        ; and
                        ; from            = 00010h
                        ; upto            = 0001Fh
                        ;
                        ; Stackframe at   = ...00248h


                        ; ===== Current top of User Vars in Data is 00009h =====

                        ; ===== Current top of User Vars in IData is 00348h =====

                        ; ===== Current top of User Vars in EEprom is 00091h =====


                        ; ===== Imported Library Routines =====

                        ; Shift  right byte SHR8
                        ; Divide       byte DIV8
                        ; Multiply     word MUL16
                        ; Divide       word DIV16
                        ; Higher float
                        ; LongWord and LongInt types
                        ; Multiply     long MUL32
                        ; Divide       long DIV32
                        ; Shift  left  long SHL32
                        ; Convert byte to string
                        ; Convert int to string
                        ; Convert long to string
                        ; Convert string to int
                        ; String compare
                        ; Copy partial String
                        ; Floating point type
                        ; float multiply
                        ; float divide
                        ; float add
                        ; float subtract
                        ; float square
                        ; float power of x
                        ; float exponent of x
                        ; float log naturalis
                        ; float log decimal
                        ; float integer
                        ; float float to int
                        ; float int to float
                        ; float float to string
                        ; float string to float
                        ; EEprom read

                        ; Pascal Statements : 653
                        ; Assembler Lines   : 24420
                        ; Optimizer removed : 442 lines = 884Bytes

                        ; >> real SysTick (exact): 1.000 msec <<

;  Linker removed the following functions and procedures
;
;  Module/Unit             Function/Procedure
;  ------------------------------------------
;
