terros@sideways.gen.nz (Dave Sainty) (02/18/91)
A while back there was talk about a standard for bbc pictures. The ldpic program came up, but wasnt posted on the grounds that it wasnt public domain. last year I wrote these programs, mainly extend the format to include text (a picture name, source, and comment). I was going to compress it but have now decided to post like this because the program is small(ish) and also because not all beeb users have the necessary unencoding programs. anyway, run this program (after *exec ing it), and it will create 3 utilities. *Cpic, *Ipic, and *Epic Cpic is the viewer, just type *cpic <picture name>, and it's away. Ipic views any text included (name or whatever). again, just *ipic <file> Epic edits the text in a file. This program is hopeless! I wrote it quickly, it's intended just for inserting text into old ldpic files. if you wish to retain old information, for example, you need to cursor copy it. just type *Epic, it then prompts for a source and destination filename, and it also views the file before you need to enter the text, to make things easier. I'm rather hoping someone will rewrite this program! I havent written a save picture program, so for the moment it's really only any use for people already with ldpic files to post the here. these programs are fully compatable with ldpic files, but not the other way (a file with text in it will go down badly on ldpic!). I could have tagged text on the end, which would make it compatable both ways, but then to view the text, you'd need to uncompress the picture first to view the text.... which takes time. if you REALLY want to convert a cpic file into ldpic, use the editor and enter all empty fields. but I think it's better to include the text.... that's it. Enjoy, and distribute as much as you like. Dave. =======================neat little program below====================== 10REM Public domain picture viewer 20REM LDpic format and extended 30REM format. 40REM 50REM (c) D.Sainty 1991 60REM 70G%=&4000 80B%=0:HIMEM=G% 90REPEATREADA$,B$:F%=(A$="*") 100IFF%:GOTO130 110FORA%=0TO5:!G%=EVAL("&"+MID$(A$,A%*8+1,8)):B%=B%EOR!G%:G%=G%+4:NEXT 120IFB%<>EVAL("&"+B$):PRINT"Bad data, cannot create files":END 130UNTILF% 140OSCLI"SAVE Cpic "+STR$~HIMEM+" +187 FF2F6D FF2E00" 150OSCLI"SAVE Ipic "+STR$~(HIMEM+&187)+" +154 FF2CFE FF2C00" 160OSCLI"SAVE Epic "+STR$~(HIMEM+&187+&154)+" +555 FF2A00 FF2A00" 170END 180DATACE2040A923D0AAFF6F4ED6006F66207400646E7568538A00,85EFF857 190DATA776F64616D656D202079726F69746361850065768501A97D,D6E92C13 200DATA2F33207333207A854029482F5E2009F02F5E202F682F5E20,93824935 210DATA55CD0729AA0AF003EE2016A9EE208AFF2084A9FF3098FFF4,7C597442 220DATAA27785B32F7DBD09CAFFEE200FA2F710EE2013A920488AFF,FA66CC9E 230DATA04A2FFEE202F352000A9FFEE20FFEE20EE20FFEECAAA68FF,DA37808F 240DATA3320DE108576852F2F33207272A67885A57086CA20718577,B4F580FA 250DATA1B902F21352078A6A679852F2F35207A00A07585502075A5,43897208 260DATAD079C62FA60AF0F72F35207A502000A01071A52FD072C6D2,8AEC07F7 270DATAA400A9C5FFCE4C7D6C6275504420636969616D6F444C206E,D44DB977 280DATA206369706572637365206E656E6170782E726564706F4320,C4008B2D 290DATA676972794420746864697661696153202079746E30393931,FA01E522 300DATAD073C62E207DA40B7B85FFD7738508A9A2607B06FF498A08,5F268177 310DATA850969182F21207CD0CA7466A674A5F84A04F07C60FCD0CA,A948393B 320DATA70A5709185766518E602907021206071A2FAB02F2F352007,16764C9B 330DATAF7D00DC9A001A9602070A20070A6FFDA004C71A40000002E,113DC462 340DATA200000008617000AA9718470FFCE2040000CD0AA746F4ED6,95F6FE24 350DATA756F66208500646E8501A9732021A07600A02CF3E32070B1,2339A92D 360DATA0DC9C8FFB620F6D02CB6202C201AA0AA298A2CF320300907,9DC63270 370DATAE720FFEEFFE720FFD040298A2028A0070BF02CF3D32000A2,ADB948BD 380DATA2CD3202CA92CD3204C73A400444CFFCE2063697065726373,6568EA7C 390DATA69206E65726F666E6974616D76206E6F6577656943202E72,4724A66E 400DATA7279706F746867697661442053206469746E696139312079,292BD839 410DATAC62E3039A40BD076FFD7207308A97285720676858A08A260,447EBE65 420DATA6918FF492075850974662CA4A5F8D0CAF075A674D0CA4A04,FC32D43B 430DATA488A60FCB02CA4202D0EBC15A22CF3202CB82007C9FFE320,6EF19CF5 440DATA20F4D00DAA68FFE711B960E820FAF02DD0C8FFE3A001A9F5,A5E775CC 450DATA2070A20070A6FFDA044C71A41007002C656D614E5300203A,D71718EA 460DATA6372756F00203A656D6D6F433A746E656F4D0020203A6564,AC2B3382 470DATA6C69460000203A6569206F4E726F666E6974616D61206E6F,D37949C5 480DATA6C696176656C626120000D0D68572E8E20686369656C6966,D72F635E 490DATA206F7420766E6F633F747265632000202040A92ED0AAFFCE,2D905CB8 500DATA4ED600566620746F646E756F2B7520006F438C006E646C75,4B5A9D9B 510DATA6F207427206E65707469727769662065202E656C69642049,50519BFB 520DATA20746E646E6576656F6E6B206874207765207369726F7272,E15C9B6 530DATA73617720736F70206C626973850021652E8E207D74697257,BD9ED48A 540DATA656E2065696620777420656C6877206F6E2074613F656D61,FC84889B 550DATA632000202080A92ED0AAFFCE2A324C1A68538A00776F6461,5A807C20 560DATA6D656D202079726F6974636185006576207E4681D9202C08,2B60FF1 570DATA207A852B29482BD92003F04029682C207E24AA0716A90930,6A62DE54 580DATA8AFFEE20A9FFEE20FFF4208585B93098A90FA277FFEE2013,65CE4C2D 590DATAEE20488A2004A2FFEE202BDB2000A9FFEE20FFEEFFEE20FF,7404FB6D 600DATA10CAAA682BD920DE72857685852BD920CA72A67877A57086,56E0880 610DATABE207185A61B902B2BDB20787AA67985852BDB20A500A075,6C03CB86 620DATA2C0E2075F7D079C67AA60CF0242BDB202000A07E71A52C0E,B8F5C995 630DATA72C6D0107E24C3D007A254102BF62018A4F9D0CA2B772081,17CD5E16 640DATA00A97DA450FFCE4C696C62756F4420636E69616D70444C20,5F9E82A5 650DATA6620636920656C69657478657265646E6F43202E69727970,8FBC8F0 660DATA20746867697661446153206479746E6939393120354C2E30,55AB90CE 670DATAD073C62C207DA40B7B85FFD7738508A97E247B0620080510,F3897B81 680DATA60282BF6498A08A2096918FFBE207C85CA74662B74A5F8D0,D3B3A254 690DATA04F07CA6FCD0CA4AC6822660A50BD07F2081A48208A9FFD4,6032B9F1 700DATAA9607F85D0738501307E24F5A57091027665187002907085,F8DA9E77 710DATA206071E626202C262BBE202C07A2F4B0C92BDB2060F7D00D,7B5A1C06 720DATA20FFE02007162E8E6964450D676E6974666E6920616D726F,55BAE59E 730DATA6E6F6974656966200D73646C2E732000202BD92040292BD9,1DBE5C5F 740DATA8E2060F06968542E696620736820656C612073617865206E,E2F57E91 750DATA736E6574206E6F6967616C666568430D6E696B636F662067,B2F310E3 760DATA6E6920720D3A6F666D614E0D00203A65202EB5206F532E8E,F39CB031 770DATA656372752000203A8E202EB56D6F432E746E656D2000203A,1DECAB2 780DATA73202EB52E8E202E206F440D20756F79746E6177206F7420,86BFA0A 790DATA6E616863692F65677265736E6E692074003F6F66C92E4720,DA388C52 800DATA2033F059CB4C2CFE7E66382A4E2E8E207420776F736E6172,641F0E2 810DATA7272656620676E6961746164746562206E6565776C696620,4349FBFE 820DATA0D2E73658E20600066490D2E756F79206E6177206F742074,D274CBC1 830DATA74657220206E696120646C6F6F666E6974616D722C6E6F69,9172D09D 840DATA756F590D6C6977206168206C742065767563206F726F7372,9A30E8B7 850DATA706F6320746920796F72662062610D6D2C65766F20666920,9F26DFEC 860DATA77207469642073616C70736964657961000D0D2E808500A9,4BBDF6B 870DATAD92084852F27202B852BD920F04029832C202003502E8E20,FBD92545 880DATA757463696E2065723A656D61DE2000202E8E202E74636950,5E250761 890DATA2065727572756F73203A65632EDE2000432E8E20656D6D6F,2492BC4B 900DATA203A746E2EDE2000492E8E206874207369207369726F666E,10635371 910DATA6974616D63206E6F6572726F003F7463C92E47202022D04E,9676CD11 920DATA79542E8E616369706F20216C73202C6B7472617461676120,875487BC 930DATA0D2E6E695A4C000D3080242C2083A50583A62F274C2CFE20,FBFB9F6 940DATAE0202AEC4809B0FF20FFEE206068FFE7772000A04511002B,D53032A9 950DATA70616373B0A2006500A92EA0B0FFF120A000A2E708206007,D854CDF 960DATA207DA42C81A42E7D8C8500A98E858D858CA28F85DA4C01A9,F8B2C58E 970DATA8E8568FFA08F8568D08EE600B18FE602D08EE68EAA8FE602,CDB82897 980DATAE32006F02E9C4CFF00008E6C7E20FF07B02BBE202007A20F,EE080FDC 990DATAE3202BDBD00DC9FFFFE74CF4202E8E20656C433C66207261,1A01E71 1000DATA646C6569000D0D3E2E632060F28400A0F38507A9F0FFC220,BA5C936F 1010DATA24489845A51430802040098366382F273084C6802F512006,62ADFB88 1020DATA682EFE4C188F84A8A42BF620B18F848F2007A2F28FA42F29,A80B7E18 1030DATAC9C8F2B14CEED00D08A2FFE7F620484AD0CA682B8E2060F7,8D45E3D5 1040DATA6E553C2E65746E65206465726C6569660D0D3E6430802400,F7E8A7EE 1050DATA6084E6032BF64C38697279702074686761532E4479746E69,EDBB5CEF 1060DATA*,*