Download MC68F333 Flash EEPROM Programming Utilities
Transcript
* ***** Print signon and warning message bsr Print print signon message dc.b 'M68F333 Flash EEPROM Programmer Version 2.0',13,10,0 * ***** Main initialisation bsr Initialize tst d0 bne Prog_end * Prog_0 * Prog_1 ***** Check command line cmpi #2,d2 bcs Prog_0 cmpi #3,d2 bls Prog_1 move #UsageError,Error(A5) bra Prog_end Prog_12 * Prog_2 clr.w cmpi bne move.l bsr beq move bra move.l move.w MOTOROLA 16 #4,a2 (a2)+,a0 FileMode(A5),a1 fopen d0,FilePtr(A5) Prog_11 #FileError,Error(A5) Prog_end skip over program name get file name of S records read mode - "r" save file pointer continue if OK can't open input file ModeAddr(A5) #3,d2 Prog_2 (a2)+,a0 Eval Prog_12 #EvalError1,Error(A5) Prog_3 d1,StartAddr(A5) #$1,ModeAddr(A5) Assume no offset first.. argv = 3 ? evaluate start address parameter close file and exit got first param signal to calculate offset ReadSRecord d0 Prog_25 #SRecS9,d0 Prog_3 #SRecError,d0 d0,Error(A5) Prog_3 get next S Record continue if no error S9 record ? yes - close normally otherwise flag error ***** Program data from S-Record into EEPROM ProgRecord d0 Prog_2 not_prog #ProgError,Error(A5) program data from S Record loop till done print fault address error - report it ***** Close input file bsr * Prog_end arg count is wrong ***** Read an S-Record, check for errors bsr tst beq bsr move * Prog_3 argc > 3? ***** Evaluate remaining parameters bsr tst beq cmpi beq addi move bra * Prog_25 argc < 2? ***** Get filename, open file, check if OK addq.l move.l lea.l bsr move.w bne move bra * Prog_11 init hardware and address list CloseInputFile close file ***** Report any errors, exit back to BD32 move Error(A5),d1 get error code moveq.l #BD_QUIT,d0 exit program bgnd AN1255/D