STB *+3 -THE SWITCH REGISTER AND HALT JSB STATS LOAD THE TEST'S STATUS AND ITS LDA TNUMB LOAD TEST NUMBER NOP JMP MDIAG START AGAIN * IRG (3) ENT80 ISZ TNUMB INCREMENT THE TEST NUMBER JSB S15CK CHECK SWITCH 15 LDA SWREG RESTORE THE SWITCH REGISTER OTA SWRG -SETTINGS ALF,ALF RAL,RAL AND B7 UP DATE THE FORMAT ID. POINTER LDB .IDFO ADB A STB IDPT SET THE POINTER FOR CURRENT ID JSB FORFL SET THE PROGRAM'S FORMAT FLAG SPC 1 * ** READ, MOTION AND STATUS TEST SECTION ** SPC 1 JSB SAVAD SET THE PROGRAM'S LOOP S.A. LDA D25 STA TNUMB UPDATE TEST NUMBER CIO23 LIA CMMD LOAD THE STATUS AND CHECK AND NOT15 MASK OUT BIT 15 STA STATU STORE THE STATUS AND CHECK AND D4 -THE FILE PROTECT BIT SZA CLA,RSS THE TEST PASSED CCA THE TEST FAILED LDB D4 THE EXPECTED STATUS IS (FP ) JSB TEST (26) (32B) * * JSB LOPTN CHECK THE PROGRAM LOOP JSB SAVAD SET THE PROGRAM'S LOOP S.A. LDA D26 STA TNUMB UPDATE TEST NUMBER JSB FWDSP SPACE OVER THE TAPE MARK JSB FLGWT WAIT FOR THE OPERATION TO FINISH JSB STATS GET THE STATUS AND CHECK FOR AND B200 -THE TAPE MARK SZA CLA,RSS THE TEST PASSED CCA THE TEST FAILED LDB B200 THE EXPECTED STATUS IS TM JSB TEST (27) (33B) * * JSB NTSTI,I GO TO TESTS 28 - 30 (34B - 36B) * IRG (4) LIA SWRG LOAD THE SWITCH REGISTER AND STA SWREG -SAVE ITS CONTENTS AND DMAMS CLEAR SWITCH 5, IF SET OTA SWRG LDA INBUF SET THE INPUT BUFFER'S S.A. LDB N1 SET THE NUMBER OF WORDS JSB CLRBF CLEAR THE READ BUFFER JSB READ READ THE RECORD LDA RECNT LOAD THE DMA'S WORD COUNTER SZA,RSS DID IT FINISH THE TRANSFER ? JMP ENT82 YES, CONTINUE CLB THE EXPECTED STATUS IS CLEAR JSB TEST (31) (37B) * * JMP *+3 ENT82 ISZ TNUMB INCREMENT THE TEST'S NUMBER JSB S15CK CHECK SWITCH 15 JSB RSTAT CHECK THE READ STATUS JSB RREAD HAD DATA ERRORS, RE-READ LDA INBUF,I SET THE BASE FOR THE RANDOM STA BASE1 -NUMBER ROUTINE ISZ TNUMB INCREMENT THE TEST NUMBER * * (32) (40B) JSB S15CK CHECK SWITCH 15 LDA SWREG RESTORE THE SWITCH REGISTER'S OTA SWRG -SETTINGS * IRG (5) LDA FSF FORWARD SPACE OVER THE TAPE CIO24 OTA CMMD -MARK CIO25 STC CMMD,C JSB FLGWT WAIT FOR THE OPERATION TO FINISH * IRG (6) JSB STATS GET THE STATUS AND CHECK FOR AND B200 -THE TAPE MARK SZA CLA,RSS THE TEST PASSED CCA THE TEST FAILED LDB B200 THE EXPECTED STATUS IS TM JSB TEST (33) (41B) * * JSB FORID CHECK FOR 7 OR 9 TRACK FORMAT JMP *+3 IT'S 9 TRACK JMP ENT44 IT'S 7 TRACK JMP ENT44 IT'S 7 TRACK CPB IDFOR IS IT 9 TRACK PE ? CLA,RSS YES, CLEAR THE ODD BYTE RECORD FLAG CCA NO, SET THE ODD BYTE FLAG STA ODD LDA INBUF SET THE INPUT BUFFER'S S.A. LDB N5 SET THE NUMBER OF WORDS JSB CLRBF CLEAR THE READ BUFFER JSB READ READ THE RECORD LDA ODD CHECK THE ODD BYTE RECORD FLAG SZA,RSS JMP ENT43 THIS IS NOT AN ODD BYTE RECORD * IRG (7) CLA RESET THE DMA REMAINDER COUNT STA RECNT JSB STATS GET THE STATUS AND CHECK FOR ALF -THE ODD BYTE STATUS BIT SSA CLA,RSS THE TEST PASSED CCA THE TEST FAILED LDB B4000 THE EXPECTED STATUS IS OB JSB TEST (34) (42B) * * JMP *+4 ENT43 ISZ TNUMB INCREMENT THE TEST'S NUMBER JSB RSTAT CHECK THE READ'S STATUS JSB RREAD HAD DATA ERRORS, RE-READ LDA .CSRB GET THE SINGLE TRACK PATTERN LDB N4 SET THE NUMBER OF WORDS IN THE STB WDCNT -PATTERN SEQUENCE JSB PATCM (35) (43B) * * CLA -PATTERN DATA, THEN CLEAR THE STA ODD -ODD BYTE RECORD INDICATOR LDA D39 STA TNUMB UPDATE TEST NUMBER JMP ENT62 ENT44 ISZ TNUMB INCREMENT THE TEST NUMBER TWICE ISZ TNUMB CCA SET THE PROGRAM'S "DE" TEST STA DEFLG -FLAG LDA INBUF SET THE READ BUFFER'S S.A. AND LDB N4 -THE WORD COUNT JSB CLRBF CLEAR THE READ BUFFER JSB READ READ THE RECORD WITHOUT PARITY JSB RSTAT -ENABLE AND CHECK THE STATUS * IRG (7) CLA,RSS HAD ERRORS, THE TEST PASSED CCA NO, ERRORS, THE TEST FAILED LDB D2 THE EXPECTED STATUS IS (DE ) JSB TEST (36) (44B) * * LDA .CSRB THE SINGLE TRACK PATTERN'S S.A. LDB N4 SET THE NUMBER OF WORDS IN THE JSB PATCM (37) (45B) * * CLA CLEAR THE PROGRAM'S "DE" TEST STA DEFLG -FLAG LDB BSR BACK SPACE THE RECORD JSB OCMMD JSB FLGWT WAIT FOR THE OPERATION TO FINISH * IRG (6) LDA INBUF SET THE BUFFER'S S.A. LDB N4 SET THE WORD COUNT JSB CLRBF CLEAR THE READ BUFFER STA BUFAD SAVE THE BUFFER'S S.A. AND THE STB WDCNT -WORD COUNT IOR MSIGN ADD THE TRANSFER DIRECTION BIT DAM5 CLC DMA-4 -S TO THE READ BUFFER'S S.A. AND DAM6 OTA DMA-4 -SET IT IN THE DMA'S ADR. BUFFER DAM7 STC DMA-4 SET THE DMA'S WORD COUNT DAM8 OTB DMA-4 LDB RRFPE START THE PARITY ENABLE READ JSB OCMMD DIO16 STC DATA,C SET THE DATA TRANSFER CONTROL DMA8 STC DMA,C START THE DMA LDB N1024 1024 MS COUNTER STB TG CIO26 SFC CMMD WAIT FOR THE FLAG JMP ENT61 THE FLAG HAS BEEN SET, CONTINUE ISZ TG COUNT DOWN MS WAIT - DONE? RSS NO - DO ANOTHER 1 MS WAIT JMP ENT45 YES - LOST COMMAND FLAG LDA D1 JSB TIMR,I WAIT 1 MS JMP CIO26 CHECK AGAIN FOR FLAG ENT45 JSB STATS LOAD THE STATUS AND HOLD IT JSB CLEAR CLEAR ANY RUN AWAY CONDITION RSS ENT61 JSB STATS LOAD THE STATUS DMA9 CLC DMA CLEAR THE DMA CHANNEL DMA10 STF DMA * IRG (7) JSB RSTAT CHECK THE READ'S STATUS CLA,RSS HAD ERRORS, THE TEST PASSED CCA NO ERRORS, THE TEST FAILED LDB D2 THE EXPECTED STATUS IS (DE ) JSB TEST (38) (46B) * * CLA SET THE PROGRAM FLAG FOR A 9 STA FLAG7 -TRACK PATTERN COMPARE LDA ERWRD SET THE PARITY ERROR WORD LDB N1 COMPARE THE DATA TO THE PATTERN JSB PATCM (39) (47B) * * JSB FORFL SET THE PROGRAM'S FORMAT FLAG ENT62 EQU * LDB BSF BACK SPACE THE FILE JSB OCMMD JSB FLGWT WAIT FOR THE OPERATION TO FINSIH * IRG (5) JSB STATS GET THE STATUS AND HOLD STA STAT1 -IT TEMPORARILY LDB BSF BACK SPACE THE NEXT FILE JSB OCMMD JSB FLGWT WAIT FOR THE OPERATION TO FINISH * IRG (3) JSB STATS GET THE STATUS AND CHECK FOR JSB TMARK -A TAPE MARK CCE,RSS NO TAPE MARK CLE THE STATUS IS OK LDA STAT1 CHECK THE FIRST STATUS FOR TM AND N3 MASK OUT "DE" FROM THE ODD BYTE JSB TMARK -RECORD FIRST JMP ENT46 NO TAPE MARK FROM THE FIRST SEZ,RSS -PORTION, CHECK THE SECOND JMP ENT47+1 BOTH PORTIONS PASSED JMP ENT47 FAILED THE SECOND PORTION ENT46 LDB STAT1 LOAD THE STATUS OF THE FIRST STB STATU PORTION IN THE STATUS BUFFER ENT47 CCA,RSS THE TEST FAILED CLA THE TEST PASSED LDB B200 EXPECTED STATUS IS TM JSB TEST (40) (50B) * * JSB LOPTN CHECK THE PROGRAM LOOP LDB FSR FORWARD SPACE OVER THE TAPE MARK JSB OCMMD JSB FLGWT WAIT FOR THE OPERATION TO FINISH * IRG (4) JSB STATS GET THE STATUS AND HOLD IT STA STAT1 -TEMPORARILY LDA INBUF SET THE INPUT BUFFER'S S.A. LDB N1 THE NUMBER OF WORDS TO BE READ JSB CLRBF CLEAR THE READ BUFFER JSB READ READ THE RECORD * IRG (5) JSB RSTAT CHECK THE READ STATUS JSB RREAD HAD DATA ERRORS, RE-READ LDA INBUF,I CHECK FOR THE CORRECT RECORD CPA BASE1 JMP ENT49 EVERYTHING IS OK LDA INBUF SET UP TO PRINT THE EXPECTED STA TBF05 -AND READ CHARACTERS LDA BASE. STA TBF04 CCA SET THE PROGRAM'S READ FLAG STA RDOP LDA STAT1 COMBINE BOTH STATUS IOR STATU STA STATU CCA,RSS ENT49 CLA LDB B200 EXPECTED STATUS IS TM JSB TEST (41) (51B) * * LDB BSR BACK SPACE THE TWO CHARACTERS JSB OCMMD -RECORD JSB FLGWT WAIT FOR THE OPERATION TO FINISH * IRG (4) JSB STATS GET THE STATUS OF THE OPERATION SZA IS THE STATUS CLEAR ? CCA,RSS NO, THE TEST FAILED CLA YES, THE TEST PASSED CLB THE EXPECTED STATUS IS CLEAR JSB TEST (42) (52B) * * JSB FWDSP FORWARD SPACE ONE RECORD LDA SELCM ISSUE A UNIT SELECT COMMAND JSB ACMMD JSB STATS GET THE STATUS AND HOLD IT AND D8 -CHECK THE COMMAND REJECT BIT CPA D8 CLA,RSS THE TEST PASSED CCA THE TEST FAILED LDB D8 THE EXPECTED STATUS IS CR JSB TEST (43) (53B) * * JSB FLGWT WAIT FOR THE COMMAND FLAG * IRG (5) JSB FWDSP START SPACING OVER THE TAPE MARK LDA BSR ISSUE ANOTHER MOTION COMMAND AND CIO27 OTA CMMD -CHECK THE REJECT STATUS BIT JSB STATS GET THE STATUS AND HOLD IT AND D8 -CHECK THE REJECT STATUS BIT CPA D8 CLA,RSS THE TEST PASSED CCA THE TEST FAILED LDB D8 THE EXPECTED STATUS IS "CR" JSB TEST (44) (54B) * * JSB FLGWT WAIT FOR THE COMMAND FLAG * IRG (6) LDB RRF START A READ OPERATION JSB OCMMD DIO17 STC DATA,C SET THE DATA TRANSFER CONTROL JSB FLGWT WAIT FOR THE OPERATION TO FINISH * IRG (7) JSB STATS GET THE STATUS AND CHECK FOR THE AND D18 -DATA ERROR AND TIMING STATUS CPA D18 CLA,RSS THE TEST PASSED CCA THE TEST FAILED LDB D18 THE EXPECTED STATUS IS "DE","TE" JSB TEST (45) (55B) * * JSB FORID CHECK THE RECORDING FORMAT JMP *+3 IT'S 9 TRACK JMP ENT36 IT'S 7 TRACK JMP ENT36 IT'S A 7 TRACK MODE CPB IDFOR+1 WHICH 9 TRACK FORMAT ? JMP ENT37 IT'S 800 CPI LDB DEL0 IT'S 1600 CPI, LOAD THE TIMING JMP ENT58 -CONSTANTS ENT36 CPB IDFOR+2 IS IT 800 CPI ? JMP ENT37 YES, SET THE CONSTANT CPB IDFOR+5 IS IT 800 CPI ? JMP ENT37 YES, SET THE CONSTANT CPB IDFOR+3 NO, TRY 556 CPI JMP ENT65 IT'S 556 CPI, SET THE CONSTANT CPB IDFOR+6 TRY THE OTHER 556 CPI JMP ENT65 IT'S THIS 556 CPI LDB DEL0+3 IT'S 200 CPI, LOAD THE TIMING JMP ENT58 -CONSTANTS ENT65 LDB DEL0+2 IT'S 556 CPI, LOAD THE TIMING JMP ENT58 -CONSTANTS ENT37 LDB DEL0+1 IT'S 800 CPI, LOAD THE TIMING ENT58 LDA B,I -CONSTANTS STA TMCN1 STORE FIRST CONSTANT (-10%) INB GET 'WINDOW' CONSTANT LDA B,I STA TMCN2 STORE SECOND CONSTANT (+10%) LDA RRF CIO28 OTA CMMD START A READ OPERATION JSB STATS LOAD THE STATUS AND CHECK JSB REJBT -THE REJECT BIT SZA,RSS WAS IT SET ? JMP REJCT YES CIO29 STC CMMD,C NO,START THE TAPE DIO18 STC DATA,C TURN ON DATA CHANNEL ALSO LDA INBUF INITIALIZE DMA FOR A 400 WORD IOR MSIGN -READ DAM9 CLC DMA-4 DAM10 OTA DMA-4 LDA N400 DAM11 STC DMA-4 DAM12 OTA DMA-4 CLA STA COUNT INITIALIZE TIMING COUNTER DIO19 SFC DATA WAIT APPROX. 1/4 SECOND JMP STDMA -FOR FIRST DATA FLAG INA,SZA JMP *-3 JSB S11CK SUPPRESS ERROR MESSAGE? JMP STDMA-2 YES ISZ TNUMB UPDATE TEST NUMBER JSB TSTNI,I PRINT CYCLE COUNT AND TEST NO. CLA,CLE LDB .MS20 JSB FMTR,I 'DATA FLAG WAIT TIMED OUT' JSB S15CK IS SWITCH 15 SET? JMP ENT90 STDMA STC DMA,C FLAG FOUND, START DMA LDA TMCN1 WAIT WHILE DMA IS WORKING JSB TIMR,I DMA11 SFC DMA DMA SHOULDN'T BE FINISHED JMP ENT75 IT IS FINISHED,ERROR LDA TMCN2 ADDITIONAL WAIT, DMA SHOULD JSB TIMR,I COMPLETE DURING THIS WAIT DMA12 SFS DMA IS DMA FINISHED? JMP ENT75 NO,ERROR JMP *+3 YES ENT75 JSB STATS ERROR, LOAD THE TEST'S STATUS * IRG (8) CCA,RSS THE TEST FAILED CLA CLB THE EXPECTED STATUS IS CLEAR JSB TEST (46) (56B) * * ENT90 EQU * JSB FLGWT WAIT FOR THE OPERATION TO FINISH JSB BSRWF BACK SPACE THE RECORD * IRG (7) SPC 1 * ** DATA TRANSFER TEST SECTION ** SPC 1 LDA N5 SET THE INITIAL ITERATION COUNT STA ITCNT CCA INITIALLY SET THE FIRST PATTERN STA ANBUF -WORD LDA .ANSA SET THE FORMAT "A" PATTERN STA ANPAT LDA N408 SET THE WORD COUNT STA WDCNT LDA JSUBA SET THE COMPARE ROUTINE WITH STA WENT0 -THE ANSI DATA SUB CALL STA ENT74 LDA INBUF GET THE INPUT BUFFER'S S.A. JSB RDATA START THE DATA TRANSFER JSB WDCOM (47) (57B) * * LDA N5 SET THE INITIAL ITERATION COUNT STA ITCNT CCA INITIALLY SET THE FIRST PATTERN STA ANBUF -WORD LDA .ANSB SET THE FORMAT "B" PATTERN STA ANPAT LDA N408 SET THE WORD COUNT STA WDCNT LDA INBUF GET THE INPUT BUFFER'S S.A. JSB RDATA START THE DATA TRANSFER JSB WDCOM (48) (60B) * * LDA JSUBR SET THE COMPARE ROUTINE WITH STA WENT0 -THE RANDOM DATA SUB CALL STA ENT74 LDB N4 GET THE STARTING WORD COUNT ENT60 STB WDCNT SET THE WORD COUNT FOR RDATA LDA BASE1 SET THE BASE NUMBER FOR THE STA BASE -RANDOM NUMBER GENERATOR LDA INBUF GET THE INPUT BUFFER'S S.A. JSB RDATA START THE DATA TRANSFER JSB WDCOM (49-57) (61B-71B) * * JSB LENCH GO TO THE RECORD LENGTH CONTROL JMP ENT60 ALL RECORDS HAVEN'T BEEN READ ENT63 LDA N2 SET THE ROUTINE'S PASS COUNT STA TIME ENT59 LDA BASE1 SET THE BASE NUMBER FOR THE STA BASE -RANDOM NUMBER GENERATOR LDA INBUF SET THE READ BUFFER'S S.A. JSB RDATA DO THE DATA TRANSFER JSB WDCOM (58-59) (72B-73B) * * LDB WDCNT DOUBLE THE WORD COUNT BLS ISZ TIME INCREMENT THE ROUTINE'S PASS JMP ENT59 -COUNT AND DO IT ONE MORE TIME ENT76 EQU * LDA .TSRB THE TRACK SINGLE ROTATING BIT LDB N9 -PATTERN, 9 WORDS LONG JSB PATCO DO THE TRANSFER AND COMPARE LDA .TSAW THE TRACK SAWTOOTH PATTERN LDB N5 THE PATTERN IS 5 WORDS LONG JSB PATCO DO THE TRANSFER AND COMPARE LDA .CSAW THE CHANNEL SAWTOOTH PATTERN LDB N5 THE PATTERN IS 5 WORDS LONG JSB PATCO DO THE TRANSFER AND COMPARE SPC 1 JMP RECYC END OF THE MAIN PROGRAM SPC 1 * PATTERN DATA COMPARE * SPC 1 * CALL: "A" - PATTERN S.A. * "B" - NUMBER OF WORDS IN THE PATTERN SEQUENCE SPC 1 PATCO NOP STA AREG2 HOLD THE S.A. OF THE PATTERN STB BREG1 HOLD THE NUMBER OF WORDS LDB N4 SET THE NUMBER OF WORDS IN THE ENT64 STB WDCNT -FIRST RECORD LDA INBUF SET THE INPUT BUFFER'S S.A. JSB RDATA START THE DATA TRANSFER LDA AREG2 LDB BREG1 JSB PATCM (60-86) (74B-126B) * * JSB LENCH CHECK THE NEXT RECORD LENGTH JMP ENT64 ALL RECORDS HAVEN'T BEEN READ JMP PATCO,I SPC 1 * RECORD LENGTH CONTROL ROUTINE * SPC 1 * CALL: WDCNT IS ASSUMED TO BE LOADED PRIOR TO USING RDATA * * RETURN: P+1 - CONTINUE WITH THE WORD COUNT DOUBLED * P+2 - ALL THE RECORDS IN THE SERIES HAVE BEEN READ * "B" - THE NEXT WORD COUNT SPC 1 LENCH NOP LDA WDCNT LOAD THE WORD COUNT ALS DOUBLE IT STA WDCNT RESTORE IT TO THE COUNTER STA B SET "B" AND B3777 IS THE WORD COUNT GREATER THAN SZA -1024 WORDS ? JMP LENCH,I NO, GET THE NEXT RECORD ISZ LENCH YES, EXIT AND CHANGE PATTERNS JMP LENCH,I SKP * DATA TRANSFER ROUTINE * SPC 1 * CALL: WDCNT HAS TO BE SET PRIOR TO ENTERING THIS ROUTINE * "A" = THE S.A. OF THE INPUT BUFFER SPC 1 RDATA NOP STA BUFAD SET THE BUFFER'S S.A. LDB WDCNT LOAD THE PRESET WORD COUNT JSB CLRBF CLEAR THE READ BUFFER JSB READ READ THE RECORD JSB RSTAT CHECK THE READ STATUS JSB RREAD HAD ERRORS RE-READ THE RECORD JMP RDATA,I SPC 1 * READ STATUS ROUTINE * SPC 1 * RETURN: P+1 - DATA ERRORS * P+2 - NO ERRORS SPC 1 RSTAT NOP LDA STATU RETRIEVE THE STATUS OF THE READ RAR,SLA CHECK THE DATA ERROR STATUS BIT JMP RSTAT,I HAD ERRORS, EXIT P+1 SZA,RSS JMP ENT50 NO OTHER STATUS, EXIT P+2 ALF REPOSITION THE BITS IN THE REG. SSA,RSS IS BIT 12 (SE) SET ? JMP ENT09 NO CCA YES CLB THE EXPECTED STATUS IS CLEAR JSB TEST * * JSB DECNO DECREMENT THE TEST'S NUMBER ENT09 LDA STATU RETRIEVE THE CURRENT STATUS AND NOTET MASK OUT THE (E0T) STATUS BIT SZA,RSS ENT50 ISZ RSTAT NO STATUS RETURN POINT JMP RSTAT,I SKP READ NOP STA BUFAD SAVE THE INPUT BUFFER'S S.A. STB WDCNT SAVE THE WORD COUNT JMP ENT51 READ1 NOP RE-READ ENTRY POINT LDA READ1 SET THE ROUTINE RETURN POINT STA READ ENT51 LDB SW5 SWITCH 5 SET? JSB SWRCK,I * RSS YES, DO SKIP FLAG READ JMP ENT55 DO A DMA TRANSFER LDB RRF START THE READ JSB OCMMD DIO20 STC DATA,C SET THE DATA TRANSFER CONTROL LDA BUFAD RETRIEVE THE BUFFER'S S.A. STA TBF01 LDB WDCNT RETRIEVE THE WORD COUNT ENT52 CLA DIO21 SFC DATA WAIT FOR THE DATA FLAG JMP ENT54 INA,SZA INCREMENT THE TIMING COUNT JMP *-3 JMP ENT53 LOAD THE FLAG ENT54 LIA DATA,C LOAD THE STAT WORD AND STA TBF01,I -STORE IT IN THE BUFFER ISZ TBF01 ADVANCE THE BUFFER POINTER INB,SZB INCREMENT THE WORD COUNTER JMP ENT52 READ THE NEXT TWO BYTES DIO22 CLC DATA,C CLEAR THE DATA CONTROL JSB FLGWT WAIT FOR THE OPERATION TO FINISH JSB STATS LOAD THE STATUS AND HOLD IT JMP READ,I ENT53 JSB STATS GET THE STATUS AND HOLD IT JSB CLEAR CLEAR AND RUN AWAY CONDITIONS DIO23 CLC DATA,C JSB S11CK SUPPRESS ERROR MESSAGE? JMP ENT55-1 YES ISZ TNUMB NO, UPDATE TEST NUMBER JSB TSTNI,I PRINT TEST NUMBER JSB DECNO UPDATE TEST NO. CLA,CLE LDB .MS20 JSB FMTR,I 'DATA FLAG WAIT TIMED OUT !' JMP READ,I EXIT ENT55 LDA BUFAD RETRIEVE THE BUFFER'S S.A.