10 REM FONTSAVER by Martyn v.d. Mei 20 REM This is Public Domain 30 MODE6 40 PRINT'TAB(7)" Sourcecode FONTSAVER"TAB(7)" ____________________" 50 PRINT'TAB(7)" BBC version" 60 *** 70 FORI%=4TO6STEP2:O%=&2800:P%=O%:[OPTI% 80 LDA(&F2),Y:CMP#&0D:BNEfilename:BRK:EQUB&DC:EQUS"Syntax: FSAVE ":EQUB&00 90 .filename:TYA:CLC:ADC&F2:STAosfile:LDA&F3:ADC#&00:STAosfile+1:LDA#end MOD256:STA&80:LDA#end DIV256:STA&81:LDA#&20:STA&82 100 .main1:LDA#&0A:LDX#&82:LDY#&00:JSR&FFF1:LDY#&07 110 .loop1:LDA&83,Y:STA(&80),Y:DEY:BPLloop1:LDA&80:CLC:ADC#&08:STA&80:LDA&81:ADC#&00:STA&81:INC&82:BNEmain1:LDA#&00:LDX#osfile MOD256:LDY#osfile DIV256:JMP&FFDD 120 .osfile:EQUW&00:EQUD&2800:EQUD&2800:EQUDstart:EQUDend+&700 130 .start 140 ]P%=&2800:[OPTI% 150 LDA#&B6:LDX#&00:LDY#&FF:JSR&FFF4:CPX#&06:BNEerror:LDA#chars MOD256:STA&80:LDA#chars DIV256:STA&81:LDX#&20 160 .main2:LDA#&17:JSR&FFEE:TXA:JSR&FFEE:LDY#&00 170 .loop2:LDA(&80),Y:JSR&FFEE:INY:CPY#&08:BNEloop2:LDA&80:CLC:ADC#&08:STA&80:LDA&81:ADC#&00:STA&81:INX:BNEmain2:RTS 180 .error:BRK:EQUB&6F:EQUS"Font not (enough) exploded":EQUB&00 190 .chars 200 ]P%=O%:[OPTI% 210 .end 220 ]NEXT:OSCLI"SAVE FSAVE 2800 "+STR$~O%