LOGIN   :::   RECOVER PASS   :::   GET ACCOUNT    
Browse
  • Projects
  • Code (CVS)
  • Forums
  • News
  • Articles
  • Polls
  •  
    OpenCores
  • FAQ
  • CVS HowTo
  • Mission
  • Media
  • Tools
  • Advertise
  • Mirrors
  • Logos
  • Contact us
  • Job Opportunity
  •  
    Tools
  • Search
      
  • Download Cores (CVSGet)
  •  
    More
  • Wishbone
  • Perlilog
  • EDA tools
  • OpenTech CD
  •  
    Navigation: All forums > Cvs-checkins > Message List > Message Post

    Message

    Reply | Reply all
    Date Prev | Date Next | Thread Prev | Thread Next Date Index | Thread Index

    From: cvs at opencores.org<cvs@o...>
    Date: Fri Mar 14 16:52:50 CET 2008
    Subject: [cvs-checkins] MODIFIED: System09 ...
    Top
    Date: 00/08/03 14:16:52

    Added: System09/src/flex9 FLEX9ADS.S19 FLEX9CF8.S19 FLEX9IDE.S19
    FLEX9RAM.S19 f9-cli.txt f9-data.txt f9-dkcf8.txt
    f9-dkfdc.txt f9-dkide.txt f9-dkram.txt f9-equ.txt
    f9-fms.txt f9-init.txt f9-moneq.txt f9-monex.txt
    f9-monio.txt f9-sfcb.txt f9-spool.txt f9-var.txt
    flex9_cf8_b16_0.vhd flex9_cf8_b16_1.vhd
    flex9_cf8_b16_2.vhd flex9_cf8_b16_3.vhd
    flex9_ide_b16_0.vhd flex9_ide_b16_1.vhd
    flex9_ide_b16_2.vhd flex9_ide_b16_3.vhd
    flex9_ram_b16_0.vhd flex9_ram_b16_1.vhd
    flex9_ram_b16_2.vhd flex9_ram_b16_3.vhd
    flex9_ram_b16_ext.vhd flex9ads.asm flex9ads.lst
    flex9ads.sh flex9cf8.asm flex9cf8.aux flex9cf8.lst
    flex9cf8.sh flex9ide.asm flex9ide.aux flex9ide.lst
    flex9ide.sh flex9ram.asm flex9ram.aux flex9ram.lst
    flex9ram.sh
    Log:
    Updated software - XSA-3S1000 now runs FLEX on an IDE drive or CF card.


    Revision Changes Path
    1.1 System09/src/flex9/FLEX9ADS.S19

    http://www.opencores.org/cvsweb.shtml/System09/src/flex9/FLEX9ADS.S19?rev=1.1&content-type=text/x-cvsweb-markup

    Index: FLEX9ADS.S19
    ===================================================================
    S123C7007EC7217EC7037EC7477EC7857EC7957EC71F0C00000000C810C810000000003BDC
    S123C720121A10BECC3110EF027DCC3426118ECCFC7CCC346D842707BFCC3110EE023B8ED3
    S123C740CCF87FCC3420F11A107DC71B2729BEC719A6843402EC018ECAC0ED88403502A712
    S123C760036F848601A7026F88226F883B7DC71E2729113F1220F61CEFAD9FD3ED7FCCFCBC
    S123C780113F1220F41A107DCC302705113F1220F47CCC30397FCC301CEF397DC71D2627BC
    S123C7A08ECAC0BDD406261F7DC71C270F7FC71C810A270F3402860A8D3C3502810D26034B
    S123C7C0B7C71C8D3120D4860D8D2B860A8D27B6C7128D227FC71DBEC7196D0327056A0332
    S123C7E07EC74730048CC84026038EC810BFC7197AC71B7EC747BDCCD82B05113F1220F6C2
    S106C8007ECCE403
    S113C840FF000000535441525455500054585400B2
    S123CA002006BDCAAC39C0A08639B7D3FDBECC2B308900A1BFCA06AD9FD3F1BED3FBBFCD14
    S123CA200ABFCD0DBED3F9BFCD10BFCD13BED3F7BFCD4F8E00A0C6B9A684E78412E1842648
    S123CA400BA78430890400BCCA0626EC3089FF5FBFCC2B8ECD03BFCC168ECADCBDCE81BD78
    S123CA60CEB58D9EBDCEB58EC8408601A784BDD4062708A601BDD2007ECD678EC080BFCC75
    S123CA80148EC840BDD406270534307ED2D7BECC14A780810D26E78EC840BDD1F48EC08054
    S123CAA0BFCC148ECD67BFCC437ED32E8ECAECBDCE81BDCE2B8D1425F3B7CC0E8D0D25ECC9
    S123CAC0B7CC0F8D0625E5B7CC1039BDD175250BB6CC1C5D27031CFE391A01393638303981
    S121CAE020464C45582056332E3031044441544520284D4D2C44442C5959293F20048B
    S123CC0008183A190004400000FF1B0001000000000000000000000000000000000000003E
    S11ECC200000000000000000000000BFFF000001000000000000000000000036
    S104CC496086
    S123CC4E2B2B2B043F3F3F04574841543F0443414E2754205452414E53464552044E4F543E
    S123CC6E20464F554E44044449534B204552524F52202304445249564553204E4F54205296
    S11DCC8E454144590447455400D20F4D4F4E00D34B00271003E80064000A08
    S123CD007ECD577ECD677ECDB17ECD097ECD0C7ECD0F7ECD127ECEFB7ECF417ECE2B7ECEC5
    S123CD20817ECFED7ECEB57ED00E7ECDEA7ED0367ED1A27ED0EB7ED3497ECF867ECFD47EE8
    S123CD40D27F7ED12F7ECFD07ED1757ED3297ECD4E7ECE057ECE0510CEC07F7FCC11BDD460
    S123CD60007FCC28BDD3FD10CEC07FBDDE188ECD03BFCC168EC700AF9FD3E9BED3E7AF9FBB
    S123CD80D3EB8ECCF8BFCC317FCC347FCC4C8D5AB6CC11B1CC0226057CCC1520147DCC2887
    S123CDA010260597BDD40326B28ECC4EBDCE818D7ABDD0D4810D27E58EC8407CCC0DBDD003
    S123CDC03625168ECC938D3E2709BECC1227078D3526036E9801BDD22E8ECC568615B7CCAF
    S123CDE020BDCE817FCC117ECD67BECD13BFCD10BECD0DBFCD0A7FCC237FCC227FCC217FC7
    S123CE00CC267FCC2439108EC844A6A0815F23028020A18026086D8426F06DA4270C6D8058
    S123CE2026FC30026D8426DE1CFB398EC080BFCC14BDCEFBB1CC01271DB1CC00271F810D4F
    S123CE40270D810A2732811F23E78CC0FF27E2A780810D26DC398ECC528D2620CE8CC080AF
    S123CE6027F4301FB6CC07810826088620BDCF66B6CC07BDCF6620B9860DBDCF41862020F2
    S123CE80C98D32A6848104276FBDCF41300120F3BDCD4E2765AD9FD3E5B1CC0A265C7FCCF4
    S123CEA01AAD9FD3E5B1CC0A2750810326F37FCC116E9FCC167DCC2126278DD4B6CC0327A6
    S123CEC020B1CC1A22187FCC1A7DCC0927028DCE3404F6CC0827058D085A26FB35047CCC63
    S123CEE01A860D8D5C860A8D583404F6CC0527064F8D4E5A26FA35041CFE397DCC23261A1B
    S123CF007DCC2627108D1A7DCC2F27117DCC24270C8D532008BDCD092003BDCD0C7FCC1AB7
    S123CF2039BFCC47BECC262006BFCC47BECC24BDD4062604BECC47397FCC24BDD27F7ECDF9
    S123CF40037DCC212620811F22057FCC2920177CCC293402B6CC04270BB1CC292406BDCEEE
    S123CF60B57CCC29350234027DCC2226137DCC2427048DB5200D7DCC262608BDCD0F200316
    S123CF80BDCD123502397FCC4AF7CC1D8604B7CC4DEC848ECCA08D0B30027ACC4D26F71FAF
    S123CFA098203D7FCC4B10A3842507A3847CCC4B20F43402B6CC4B26107DCC4A260B7DCC6B
    S123CFC01D270B86208D2320057CCC4A8D1235828D023001A6848D04A684200444444444C2
    S123CFE0840F8B30813923028B077ECF4181302514813923168141250C815A230E816125FD
    S123D00004817A23061A01B7CC11391CFE393410BECC14B6CC18B7CC19A680B7CC18810D42
    S123D0202710B1CC02270BBFCC1481202604A18427E78DB935908615A70186FFA7036F0477
    S123D0406F0CBDD0D48608B7CC4B8D34252E260F8D2E25282609BCCC3F276C8D232368BEC1
    S123D060CC3F6D0427616D032A0F7DCC0D2705B6CC0B2003B6CC0CA7037FCC0DBECC3F393B
    S123D0808D8C254381392215BECC3F6D032A388403A703BDD00E242F812E1CFE39F6CC4B51
    S123D0A02B253404C005F7CC4B3504B1CC4925028020A70430015ABDD00E2408812D270475
    S123D0C0815F26065D26E41A01395D27CB6F0430015A20F6BFCC3FBECC14A68481202604C5
    S123D0E0300120F6BFCC14BECC3F393430E60C2618108ED10B810B2210C6033D31A5C603D3
    S123D100A6A0A70C30015A26F735B042494E545854434D4442415353595342414B5343524D
    S123D1204441544241434449525052544F5554BDD21EBDD00E25228D2625183404C6047886
    S123D140CC1C79CC1B5A26F73504BBCC1CB7CC1C5C20DFBDD00E24FB39BECC1B1CFE3980CB
    S123D160472A0F8B062A048B072A078B0A2B031CFE391A0139BDD21EBDD00E25DC8139221A
    S123D180D2840F34043402FCCC1B584958495849F3CC1BF3CC1BEBE08900FDCC1B35045C71
    S123D1A020D67FCC1D8D3D81022715811626F68D33B7CC1E8D2EB7CC1F8601B7CC1D20E5E7
    S123D1C08D221F898D1E1E89F3CC1BFDCC3D8D141F894D27D08D0DBECC3DA780BFCC3D5A8B
    S123D1E026F320C18EC840BDD4062711A6018108260E32628604A784BDD406260D1CFE3902
    S123D200B7CC20810426031A01398D737ECDE486008D35250F8D077CCC4C8D8620F14F5FC0
    S123D220FDCC1B39F6CC4C1027FBAE7ECD0386028D228DEABDD1A2F6CC1D27046E9FCC1EB2
    S123D2408ECC5C86817ECDDE34028EC840BDD0363502251A8EC840BDD0EB8EC8408601A70D
    S123D26084BDD1E4102500BB86FFA7883B39B6CC11810D2707B1CC021026FB5D1A013934B8
    S123D28030A601B7CC202763BDCDEA10BECC2D260881102758108ED3618EC8406D02270906
    S123D2A08604A784BDD406262E8EC838C60B8D6E8EC840B6CC0BA7038601A784BDD4062634
    S123D2C016B6CC204A47474C6F8820A788218615A784BDD406271E8ECC75BDCE81BECC3FC1
    S123D2E0B6CC20A7016F845FBDCF8635B08ECC82BDCE8120F6BDCEB58EC840B6CC204A8453
    S123D30003C63F3DCB04E78822BDD40626C9BDCF41810D26F48604A784BDD40620CD3430CC
    S123D3207ED1008ECC6B7ECDE13506FDCC4310FFCC457FCC207CCC287ECDB87FCC2810FEE3 S123D340CC45F6CC206E9FCC433A397DCCFC26046E9FD3F38EC840861BA701BDD27F7ECDCD S10FD360674552524F525300005359537A S106CCC07ED370AC S106CCD87ED37094 S106CCE47ED37088 S10BCCF801000000000000002F S11BD370397ED3706E9FF8046E9FF8006E9FF8086E9FF80A6E9FF80672 S123D3E5D374D370DFC2DFC8D370D370D370D378D371D37CD380D3847ECA007ED4367ED4DF S123D405597ED47B204449534B204F5045524154494E472053595354454D20434F50595217 S123D4254947485420284329203139383020425920544543484E4943414C205359535445F3 S111D4454D5320434F4E53554C54414E5453B7 S123D435FFBDDE158ED409C60A8D118E0005BFD413BFD4157FD41A8ED41BC61A6F805A2631 S123D455FB7EC70CBDC709BED40927EB3088E4BFD40B3420BDDAC3352024ECBED40B6F02D2 S123D475BDC70CC6FF397DCCFC2703BDC7093424BFD40B6F01E6842622E602271AC10227DE S123D49511BDD5B4BED40B25267DCCFC26235F352439BDD6CF20EDC6122014C1162304C676 S123D4B501200C5A588ED4CEAD95BED40B2402E701BDC70C6D01352439D986D9D9DAF9DA09 S123D4D5C3D5E2D81DD838D876D641D69FD969DBD6DB2CD699DA87D810D56FD590DB07DDC0 S123D4F5BDDCFBDCE58D202605C6021A0139ED84AE846F846F01398D0E2705C60D1A01399D S123D515EC94ED841CFE39FCD40BC3001C8ED40910AE8426031CFB3910A384260139AE8405 S123D53520EEBED40B4F5F8D02C62FA7881130015A26F839BED40BC60BA604A78824300137 S123D5555A26F639BED40BC60BA6043402A68824A1E0260530015A26F039BED40BE6025404 S123D5752479E688237ED600BED40BE688226C88223AA788405C261F1A0139BED40BE602AA S123D595C403C1032655CA80E702E60FC580260AE688233AA788401CFE39C60B1A0139A677 S123D5B5883B2B3C27076A883B8620201D8D31251B8118221527F68109260C8D23250DBEA3 S123D5D5D40BA7883B20D84D27E31CFE39BDDAB1250985012705A7847ED9A0C6121A0139D1 S123D5F5BED40BE68822270A6C88223AA688401CFE398D0324EA39BED40BEC88406C882166 S123D61526036C882010830000271CED881E34028604A7882235028D132410C5802704C6F9 S123D635102006C6092002C6081A01398D25BED40BBDDE0C25128D11BDDE0026031CFE39A6 S123D65534048D17350424EE39BED40BEC881E308840394FB7D411B7D41239C5102611C55F S123D675802624F6D4115CC1072705F7D41120147FD411F6D4125CC104270CF7D412BED489 S123D6950BBDDE091CFE391A01398DC7BED40BBDDE0C2520BED40B8DB0BDDE03260AB6D40C S123D6B5352737BDDE062732C540260B34048DAB350424E039C6201A0139BED40BE6883B28 S123D6D52B3D8120260F5CE7883BC17F260C200D8D0B24E6395D272720F61CFE393402C168 S123D6F50126048620201086098D143502250F3402BED40BA6883B6F883B8D03350239BE49 S123D715D40BE602C1021026FED1E68822C104260834028D213502250FBDD57D240AC60488 S123D735BED40BE788221CFE39BED40B4F5FED8820ED88422027E688122622E688172744B9 S123D7556F88178D3F252A8DE025268DDC2522BED40BC602E78817EC88117EDC828D0EBE7A S123D775D40BED8840BDD69F241A7EDBC18D03EC8439BED40BE60386063D8ED41D3ABFD49E S123D7951B6D84398DE72605C6071A0139BED40BED88136D88122603ED88116C881626035D S123D7B56C88156D8817270BBDDC4325DDBED40BEC8813BDD62025D2BED40BEC88403406D2 S123D7D58DB03506ED84260A6F026F036F046F05200810AE04313F10AF044FBED40B6C8850 S123D7F52126036C88205FA7884030015A26F8BED40BEC8820ED88421CFE395F3404C603A0 S123D815200EBED415BFD413F6D4133404F6D414BED40BE788413504E788407FD4185FE79B S123D835882239BED40BE68822261DBDD60C2530BED40B7DD4182605DC44FDD4188610A711 S123D8558822EC881EED882FA68822A78831C6183414BDD5F53514A70430015A26F21CFEC1 S123D87539BED40BA68831A78822C6183414A604BDD714351430015A26F27ED69FBED40B15 S123D895A603A78823B6D4177DD41A2631A703BED415BFD4138C0005270C8D222337BED4BB S123D8B518BFD41320EFBED40BA68823A7032A0EBDDDBD25368D07231CBDDDAD20F2BED442 S123D8D50B7FD41ABDD549BDD81DBDD8382407C10827181A0139BED40BA604270C2A028DA3 S123D8F50FBDD55926E41CFE398D051CFB1CFE39A68833260CEC882FED8832A68831A78851 S123D9153439BDD78726178D182515C60610BED40BBED41BA6A85D3121A7805A26F61CFE70 S123D93539BDD810BDD60C2508BED40BC610E7882239BDD7878DEA25F8C60610BED40BBE01 S123D955D41BA680A7A85D31215A26F6BDD69F24E07EDBC1BED40B8602A702EC882FED88EF S123D9751EBDD6412508BDD87624057EDBC1C60A39BDD4FA253DBDD8922538263BBED40BA9 S123D9957DD41A2706A60F85202629BDDCC0252AEC8811ED8840BDDA76E688172713340447 S123D9B5BDD60C3504250C5A26F4BED40B5FE788221CFE39C6112002C6043404BDD50C3523 S123D9D5041A0139BED40B6D032A08BDDDBD2403C61039BDD4FA25E2BDD537BDD91725DA03 S123D9F5BDD89225D52604C60320CFBDDCC025CABED40BC60A6F0F30015A26F9BED40BECA5 S123DA1588322727ED882FA68834A78831FCCC0EED8819B6CC10A7881BBDDDADBDD96925D4 S123DA35998D3E8604A788221CFE39BED40B6F88176C8812EC882FBDD620250DBDD77225D7 S123DA5508BDD69F2406BDDBC17ED9CFBED40BEC881EED88328610A78834BDD94725EA20EF S123DA758ABED40BA684A7026F846F883B4FA78822398D28250E6F84441025FB7AC604E71B S123DA9588221CFE39BED40BA6028183260B8603A702BDD69F102501131CFE398DE7250D50 S123DAB5BED40BA602810323F0C6121A01398DEC253181022708BED40B6F027ED50CA68829 S123DAD5122605BDDBA720198DC82517BED40B6D88172705BDDC98250ABDD9692505BDD9F3 S123DAF54724D339BDD9862528BDD60C252386032018BDD986251ABED40BA60F858026129B S123DB15EC8813BDD62025098602BED40BA7021CFE39C60B1A01398D35BDD892252A2724BB S123DB35BED40BC60BA68824A70430015A26F68D4D2515BED40BA60F858026D6856026093F S123DB558D0C2055C6031A0139C60C1A0139BED40B860BB7D411A604E68835A78835E704F5 S123DB7530017AD41126EFBED40BA60C260CC603A6883DA70C30015A26F6BED40B398DCEA7 S123DB95BDD89225072606BED40B1CFE39C6041A0139BED40B86FFA704BDD969BED40B86F0 S123DBB500A70239ED8840BDD69F2414C5402608C580270AC6102006C60B2002C60A1A01C8 S123DBD539BDD917255E8DB8255ABED40BA60F8580265285602652BDD787BED41BEC0226F7 S123DBF50FBED40BEC88112733BED41BED842014BED40BBDD620252CBED40BEC8811271C29 S123DC158DA22520BED40BEC8813BED41BED02BED40BEC8815BED41BE304ED04BDDBA725A8 S123DC3503BDD94739C60B2002C60C1A0139EC881E5CE1883C2303C6014C10A38813260E4B S123DC55A6883781FF27074CA788371CFE398D332530BED40BA6883A8B032616EC881E100D S123DC75A388112705C6171A0139EC8840ED88388604A7883AEC8813ED88358601A7883780 S123DC951CFE39EC8838BDD62025F7BED40B1F12E6883A3AC603A6A8353121A788403001AF S123DCB55A26F3BDD69F24DA7EDBC1BDD810BDD60C2546BED40B4F5FED8820A68867A7883B S123DCD53C5F6F884030015A26F8BED40B1CFE39BED40BA68817271DEC88208300012A0355 S123DCF57EDD9AED8820BDDAB1250E4624076F84A688172605C6121A01397FD411EC88111D S123DD1510AE8820276ABDDD9F25EE4F5F6D022774EB028900BFD40FBED40B10A3882024BB S123DD352CBED40F30033402B6D4114CB7D4118154270881A83502274C20D23404BED40B73 S123DD55EC88408D45253E3504350220C0A38820BED40FA6023404A0E04A1F89A684EB011D S123DD75BED40B2505E1883C2306E0883C4C20F5BDD6202514BED40BEC884210A38820272F S123DD9514C6192002C6181A0139BDD6202508BED40BC6443A1CFE39BED40BC60BA688244F S123DDB5A70430015A26F639BED40BA6034C8104240FA7032605BDDE0F2003BDDE1225E819 S109DDD539C6101A0139E1 S123DE007EDE377EDED87EDF057EDF177EDF357EDF607EDF607EDE2C7EDE367EDE6B000074 S123DE20000000000A0A0A0A0C0C03038EDE1EC6056F805A26FB398D32868C1A10B7E018F6 S123DE40170136C600B6E01885022608850126F51F89200AB6E01BA7805A26E98D05C51C20 S123DE601CEF39F6E018C50126F939F7E01AC10A220BF6DE1EC1012207C4BF2007F6DE1EEC S123DE80C401CA40F7E014B1E01927493402B0E0191F893420108EDE28B6DE1E8401A6A6A8 S123DEA03520850827198504261584035D2A05508A6020028A4034048D1135045A26F78435 S123DEC0038A183504F7E01B1700AEB7E0181700A88D90C5107EDF798D9186AC1A10B7E062 S123DEE018170095C600B6E01885022608850126F51F89200BA680B7E01B5A26E917FF6303 S123DF00C55C1CEF39868C1A10B7E01817006A17FF511CEFC5183934108D1A8EDE28B6DE91 S123DF201E8401A68684038A08B7E0188D4B17FF32C5D83590A60381032305C60F1A013946 S123DF408D2DF6E019E784B7DE1E8101230484018A40B7E0148D18A684B7E0198D1B200B01 S123DF60A60381032305C6801A01395F1CFE398EDE1FF6DE1EC4013A3917000017000039E0 S9030000FC 1.1 System09/src/flex9/FLEX9CF8.S19 http://www.opencores.org/cvsweb.shtml/System09/src/flex9/FLEX9CF8.S19?rev=1.1&content-type=text/x-cvsweb-markup Index: FLEX9CF8.S19 =================================================================== S123C7007EC7217EC7037EC7477EC7857EC7957EC71F0C00000000C810C810000000003BDC S123C720121A10BECC3110EF027DCC3426118ECCFC7CCC346D842707BFCC3110EE023B8ED3 S123C740CCF87FCC3420F11A107DC71B2729BEC719A6843402EC018ECAC0ED88403502A712 S123C760036F848601A7026F88226F883B7DC71E2729113F1220F61CEFAD9FD3ED7FCCFCBC S123C780113F1220F41A107DCC302705113F1220F47CCC30397FCC301CEF397DC71D2627BC S123C7A08ECAC0BDD406261F7DC71C270F7FC71C810A270F3402860A8D3C3502810D26034B S123C7C0B7C71C8D3120D4860D8D2B860A8D27B6C7128D227FC71DBEC7196D0327056A0332 S123C7E07EC74730048CC84026038EC810BFC7197AC71B7EC747BDCCD82B05113F1220F6C2 S106C8007ECCE403 S113C840FF000000535441525455500054585400B2 S123CA002006BDCAAC39C0A08639B7D3FDBECC2B308900A1BFCA06AD9FD3F1BED3FBBFCD14 S123CA200ABFCD0DBED3F9BFCD10BFCD13BED3F7BFCD4F8E00A0C6B9A684E78412E1842648 S123CA400BA78430890400BCCA0626EC3089FF5FBFCC2B8ECD03BFCC168ECADCBDCE81BD78 S123CA60CEB58D9EBDCEB58EC8408601A784BDD4062708A601BDD2007ECD678EC080BFCC75 S123CA80148EC840BDD406270534307ED2D7BECC14A780810D26E78EC840BDD1F48EC08054 S123CAA0BFCC148ECD67BFCC437ED32E8ECAECBDCE81BDCE2B8D1425F3B7CC0E8D0D25ECC9 S123CAC0B7CC0F8D0625E5B7CC1039BDD175250BB6CC1C5D27031CFE391A01393638303981 S121CAE020464C45582056332E3031044441544520284D4D2C44442C5959293F20048B S123CC0008183A190004400000FF1B0001000000000000000000000000000000000000003E S11ECC200000000000000000000000BFFF000001000000000000000000000036 S104CC496086 S123CC4E2B2B2B043F3F3F04574841543F0443414E2754205452414E53464552044E4F543E S123CC6E20464F554E44044449534B204552524F52202304445249564553204E4F54205296 S11DCC8E454144590447455400D20F4D4F4E00D34B00271003E80064000A08 S123CD007ECD577ECD677ECDB17ECD097ECD0C7ECD0F7ECD127ECEFB7ECF417ECE2B7ECEC5 S123CD20817ECFED7ECEB57ED00E7ECDEA7ED0367ED1A27ED0EB7ED3497ECF867ECFD47EE8 S123CD40D27F7ED12F7ECFD07ED1757ED3297ECD4E7ECE057ECE0510CEC07F7FCC11BDD460 S123CD60007FCC28BDD3FD10CEC07FBDDE188ECD03BFCC168EC700AF9FD3E9BED3E7AF9FBB S123CD80D3EB8ECCF8BFCC317FCC347FCC4C8D5AB6CC11B1CC0226057CCC1520147DCC2887 S123CDA010260597BDD40326B28ECC4EBDCE818D7ABDD0D4810D27E58EC8407CCC0DBDD003 S123CDC03625168ECC938D3E2709BECC1227078D3526036E9801BDD22E8ECC568615B7CCAF S123CDE020BDCE817FCC117ECD67BECD13BFCD10BECD0DBFCD0A7FCC237FCC227FCC217FC7 S123CE00CC267FCC2439108EC844A6A0815F23028020A18026086D8426F06DA4270C6D8058 S123CE2026FC30026D8426DE1CFB398EC080BFCC14BDCEFBB1CC01271DB1CC00271F810D4F S123CE40270D810A2732811F23E78CC0FF27E2A780810D26DC398ECC528D2620CE8CC080AF S123CE6027F4301FB6CC07810826088620BDCF66B6CC07BDCF6620B9860DBDCF41862020F2 S123CE80C98D32A6848104276FBDCF41300120F3BDCD4E2765AD9FD3E5B1CC0A265C7FCCF4 S123CEA01AAD9FD3E5B1CC0A2750810326F37FCC116E9FCC167DCC2126278DD4B6CC0327A6 S123CEC020B1CC1A22187FCC1A7DCC0927028DCE3404F6CC0827058D085A26FB35047CCC63 S123CEE01A860D8D5C860A8D583404F6CC0527064F8D4E5A26FA35041CFE397DCC23261A1B S123CF007DCC2627108D1A7DCC2F27117DCC24270C8D532008BDCD092003BDCD0C7FCC1AB7 S123CF2039BFCC47BECC262006BFCC47BECC24BDD4062604BECC47397FCC24BDD27F7ECDF9 S123CF40037DCC212620811F22057FCC2920177CCC293402B6CC04270BB1CC292406BDCEEE S123CF60B57CCC29350234027DCC2226137DCC2427048DB5200D7DCC262608BDCD0F200316 S123CF80BDCD123502397FCC4AF7CC1D8604B7CC4DEC848ECCA08D0B30027ACC4D26F71FAF S123CFA098203D7FCC4B10A3842507A3847CCC4B20F43402B6CC4B26107DCC4A260B7DCC6B S123CFC01D270B86208D2320057CCC4A8D1235828D023001A6848D04A684200444444444C2 S123CFE0840F8B30813923028B077ECF4181302514813923168141250C815A230E816125FD S123D00004817A23061A01B7CC11391CFE393410BECC14B6CC18B7CC19A680B7CC18810D42 S123D0202710B1CC02270BBFCC1481202604A18427E78DB935908615A70186FFA7036F0477 S123D0406F0CBDD0D48608B7CC4B8D34252E260F8D2E25282609BCCC3F276C8D232368BEC1 S123D060CC3F6D0427616D032A0F7DCC0D2705B6CC0B2003B6CC0CA7037FCC0DBECC3F393B S123D0808D8C254381392215BECC3F6D032A388403A703BDD00E242F812E1CFE39F6CC4B51 S123D0A02B253404C005F7CC4B3504B1CC4925028020A70430015ABDD00E2408812D270475 S123D0C0815F26065D26E41A01395D27CB6F0430015A20F6BFCC3FBECC14A68481202604C5 S123D0E0300120F6BFCC14BECC3F393430E60C2618108ED10B810B2210C6033D31A5C603D3 S123D100A6A0A70C30015A26F735B042494E545854434D4442415353595342414B5343524D S123D1204441544241434449525052544F5554BDD21EBDD00E25228D2625183404C6047886 S123D140CC1C79CC1B5A26F73504BBCC1CB7CC1C5C20DFBDD00E24FB39BECC1B1CFE3980CB S123D160472A0F8B062A048B072A078B0A2B031CFE391A0139BDD21EBDD00E25DC8139221A S123D180D2840F34043402FCCC1B584958495849F3CC1BF3CC1BEBE08900FDCC1B35045C71 S123D1A020D67FCC1D8D3D81022715811626F68D33B7CC1E8D2EB7CC1F8601B7CC1D20E5E7 S123D1C08D221F898D1E1E89F3CC1BFDCC3D8D141F894D27D08D0DBECC3DA780BFCC3D5A8B S123D1E026F320C18EC840BDD4062711A6018108260E32628604A784BDD406260D1CFE3902 S123D200B7CC20810426031A01398D737ECDE486008D35250F8D077CCC4C8D8620F14F5FC0 S123D220FDCC1B39F6CC4C1027FBAE7ECD0386028D228DEABDD1A2F6CC1D27046E9FCC1EB2 S123D2408ECC5C86817ECDDE34028EC840BDD0363502251A8EC840BDD0EB8EC8408601A70D S123D26084BDD1E4102500BB86FFA7883B39B6CC11810D2707B1CC021026FB5D1A013934B8 S123D28030A601B7CC202763BDCDEA10BECC2D260881102758108ED3618EC8406D02270906 S123D2A08604A784BDD406262E8EC838C60B8D6E8EC840B6CC0BA7038601A784BDD4062634 S123D2C016B6CC204A47474C6F8820A788218615A784BDD406271E8ECC75BDCE81BECC3FC1 S123D2E0B6CC20A7016F845FBDCF8635B08ECC82BDCE8120F6BDCEB58EC840B6CC204A8453 S123D30003C63F3DCB04E78822BDD40626C9BDCF41810D26F48604A784BDD40620CD3430CC S123D3207ED1008ECC6B7ECDE13506FDCC4310FFCC457FCC207CCC287ECDB87FCC2810FEE3 S123D340CC45F6CC206E9FCC433A397DCCFC26046E9FD3F38EC840861BA701BDD27F7ECDCD S10FD360674552524F525300005359537A S106CCC07ED370AC S106CCD87ED37094 S106CCE47ED37088 S10BCCF801000000000000002F S11BD370397ED3706E9FF8046E9FF8006E9FF8086E9FF80A6E9FF80672 S123D3E5D374D370DFC2DFC8D370D370D370D378D371D37CD380D3847ECA007ED4367ED4DF S123D405597ED47B204449534B204F5045524154494E472053595354454D20434F50595217 S123D4254947485420284329203139383020425920544543484E4943414C205359535445F3 S111D4454D5320434F4E53554C54414E5453B7 S123D435FFBDDE158ED409C60A8D118E0005BFD413BFD4157FD41A8ED41BC61A6F805A2631 S123D455FB7EC70CBDC709BED40927EB3088E4BFD40B3420BDDAC3352024ECBED40B6F02D2 S123D475BDC70CC6FF397DCCFC2703BDC7093424BFD40B6F01E6842622E602271AC10227DE S123D49511BDD5B4BED40B25267DCCFC26235F352439BDD6CF20EDC6122014C1162304C676 S123D4B501200C5A588ED4CEAD95BED40B2402E701BDC70C6D01352439D986D9D9DAF9DA09 S123D4D5C3D5E2D81DD838D876D641D69FD969DBD6DB2CD699DA87D810D56FD590DB07DDC0 S123D4F5BDDCFBDCE58D202605C6021A0139ED84AE846F846F01398D0E2705C60D1A01399D S123D515EC94ED841CFE39FCD40BC3001C8ED40910AE8426031CFB3910A384260139AE8405 S123D53520EEBED40B4F5F8D02C62FA7881130015A26F839BED40BC60BA604A78824300137 S123D5555A26F639BED40BC60BA6043402A68824A1E0260530015A26F039BED40BE6025404 S123D5752479E688237ED600BED40BE688226C88223AA788405C261F1A0139BED40BE602AA S123D595C403C1032655CA80E702E60FC580260AE688233AA788401CFE39C60B1A0139A677 S123D5B5883B2B3C27076A883B8620201D8D31251B8118221527F68109260C8D23250DBEA3 S123D5D5D40BA7883B20D84D27E31CFE39BDDAB1250985012705A7847ED9A0C6121A0139D1 S123D5F5BED40BE68822270A6C88223AA688401CFE398D0324EA39BED40BEC88406C882166 S123D61526036C882010830000271CED881E34028604A7882235028D132410C5802704C6F9 S123D635102006C6092002C6081A01398D25BED40BBDDE0C25128D11BDDE0026031CFE39A6 S123D65534048D17350424EE39BED40BEC881E308840394FB7D411B7D41239C5102611C55F S123D675802624F6D4115CC1072705F7D41120147FD411F6D4125CC104270CF7D412BED489 S123D6950BBDDE091CFE391A01398DC7BED40BBDDE0C2520BED40B8DB0BDDE03260AB6D40C S123D6B5352737BDDE062732C540260B34048DAB350424E039C6201A0139BED40BE6883B28 S123D6D52B3D8120260F5CE7883BC17F260C200D8D0B24E6395D272720F61CFE393402C168 S123D6F50126048620201086098D143502250F3402BED40BA6883B6F883B8D03350239BE49 S123D715D40BE602C1021026FED1E68822C104260834028D213502250FBDD57D240AC60488 S123D735BED40BE788221CFE39BED40B4F5FED8820ED88422027E688122622E688172744B9 S123D7556F88178D3F252A8DE025268DDC2522BED40BC602E78817EC88117EDC828D0EBE7A S123D775D40BED8840BDD69F241A7EDBC18D03EC8439BED40BE60386063D8ED41D3ABFD49E S123D7951B6D84398DE72605C6071A0139BED40BED88136D88122603ED88116C881626035D S123D7B56C88156D8817270BBDDC4325DDBED40BEC8813BDD62025D2BED40BEC88403406D2 S123D7D58DB03506ED84260A6F026F036F046F05200810AE04313F10AF044FBED40B6C8850 S123D7F52126036C88205FA7884030015A26F8BED40BEC8820ED88421CFE395F3404C603A0 S123D815200EBED415BFD413F6D4133404F6D414BED40BE788413504E788407FD4185FE79B S123D835882239BED40BE68822261DBDD60C2530BED40B7DD4182605DC44FDD4188610A711 S123D8558822EC881EED882FA68822A78831C6183414BDD5F53514A70430015A26F21CFEC1 S123D87539BED40BA68831A78822C6183414A604BDD714351430015A26F27ED69FBED40B15 S123D895A603A78823B6D4177DD41A2631A703BED415BFD4138C0005270C8D222337BED4BB S123D8B518BFD41320EFBED40BA68823A7032A0EBDDDBD25368D07231CBDDDAD20F2BED442 S123D8D50B7FD41ABDD549BDD81DBDD8382407C10827181A0139BED40BA604270C2A028DA3 S123D8F50FBDD55926E41CFE398D051CFB1CFE39A68833260CEC882FED8832A68831A78851 S123D9153439BDD78726178D182515C60610BED40BBED41BA6A85D3121A7805A26F61CFE70 S123D93539BDD810BDD60C2508BED40BC610E7882239BDD7878DEA25F8C60610BED40BBE01 S123D955D41BA680A7A85D31215A26F6BDD69F24E07EDBC1BED40B8602A702EC882FED88EF S123D9751EBDD6412508BDD87624057EDBC1C60A39BDD4FA253DBDD8922538263BBED40BA9 S123D9957DD41A2706A60F85202629BDDCC0252AEC8811ED8840BDDA76E688172713340447 S123D9B5BDD60C3504250C5A26F4BED40B5FE788221CFE39C6112002C6043404BDD50C3523 S123D9D5041A0139BED40B6D032A08BDDDBD2403C61039BDD4FA25E2BDD537BDD91725DA03 S123D9F5BDD89225D52604C60320CFBDDCC025CABED40BC60A6F0F30015A26F9BED40BECA5 S123DA1588322727ED882FA68834A78831FCCC0EED8819B6CC10A7881BBDDDADBDD96925D4 S123DA35998D3E8604A788221CFE39BED40B6F88176C8812EC882FBDD620250DBDD77225D7 S123DA5508BDD69F2406BDDBC17ED9CFBED40BEC881EED88328610A78834BDD94725EA20EF S123DA758ABED40BA684A7026F846F883B4FA78822398D28250E6F84441025FB7AC604E71B S123DA9588221CFE39BED40BA6028183260B8603A702BDD69F102501131CFE398DE7250D50 S123DAB5BED40BA602810323F0C6121A01398DEC253181022708BED40B6F027ED50CA68829 S123DAD5122605BDDBA720198DC82517BED40B6D88172705BDDC98250ABDD9692505BDD9F3 S123DAF54724D339BDD9862528BDD60C252386032018BDD986251ABED40BA60F858026129B S123DB15EC8813BDD62025098602BED40BA7021CFE39C60B1A01398D35BDD892252A2724BB S123DB35BED40BC60BA68824A70430015A26F68D4D2515BED40BA60F858026D6856026093F S123DB558D0C2055C6031A0139C60C1A0139BED40B860BB7D411A604E68835A78835E704F5 S123DB7530017AD41126EFBED40BA60C260CC603A6883DA70C30015A26F6BED40B398DCEA7 S123DB95BDD89225072606BED40B1CFE39C6041A0139BED40B86FFA704BDD969BED40B86F0 S123DBB500A70239ED8840BDD69F2414C5402608C580270AC6102006C60B2002C60A1A01C8 S123DBD539BDD917255E8DB8255ABED40BA60F8580265285602652BDD787BED41BEC0226F7 S123DBF50FBED40BEC88112733BED41BED842014BED40BBDD620252CBED40BEC8811271C29 S123DC158DA22520BED40BEC8813BED41BED02BED40BEC8815BED41BE304ED04BDDBA725A8 S123DC3503BDD94739C60B2002C60C1A0139EC881E5CE1883C2303C6014C10A38813260E4B S123DC55A6883781FF27074CA788371CFE398D332530BED40BA6883A8B032616EC881E100D S123DC75A388112705C6171A0139EC8840ED88388604A7883AEC8813ED88358601A7883780 S123DC951CFE39EC8838BDD62025F7BED40B1F12E6883A3AC603A6A8353121A788403001AF S123DCB55A26F3BDD69F24DA7EDBC1BDD810BDD60C2546BED40B4F5FED8820A68867A7883B S123DCD53C5F6F884030015A26F8BED40B1CFE39BED40BA68817271DEC88208300012A0355 S123DCF57EDD9AED8820BDDAB1250E4624076F84A688172605C6121A01397FD411EC88111D S123DD1510AE8820276ABDDD9F25EE4F5F6D022774EB028900BFD40FBED40B10A3882024BB S123DD352CBED40F30033402B6D4114CB7D4118154270881A83502274C20D23404BED40B73 S123DD55EC88408D45253E3504350220C0A38820BED40FA6023404A0E04A1F89A684EB011D S123DD75BED40B2505E1883C2306E0883C4C20F5BDD6202514BED40BEC884210A38820272F S123DD9514C6192002C6181A0139BDD6202508BED40BC6443A1CFE39BED40BC60BA688244F S123DDB5A70430015A26F639BED40BA6034C8104240FA7032605BDDE0F2003BDDE1225E819 S109DDD539C6101A0139E1 S123DE007EDE4B7EDE6C7EDE8E7EDE327EDE907EDE9C7EDE9C7EDE1F7EDE4A7EDE37008DFA S123DE207F86E0B7E0468601B7E04186EFB7E047206E8D5C4FC6015AF7E043B7E044F6DEBA S123DE401EF7E045C601F7E0425F398DEA8620B7E0478D4C5F8D58B6E040A7805A26F65F22 S123DE608D4DB6E0405A26F88D365F398DC98630B7E0478D2B5F8D37A680B7E0405A26F6E3 S123DE805F8D2C4FB7E0405A26F78D145F395F39A603810323014FB7DE1E5F39A6035F39CC S11ADEA0B6E047858026F9B6E047854027F239B6E047850827F939AF S9030000FC 1.1 System09/src/flex9/FLEX9IDE.S19 http://www.opencores.org/cvsweb.shtml/System09/src/flex9/FLEX9IDE.S19?rev=1.1&content-type=text/x-cvsweb-markup Index: FLEX9IDE.S19 =================================================================== S123C7007EC7217EC7037EC7477EC7857EC7957EC71F0C00000000C810C810000000003BDC S123C720121A10BECC3110EF027DCC3426118ECCFC7CCC346D842707BFCC3110EE023B8ED3 S123C740CCF87FCC3420F11A107DC71B2729BEC719A6843402EC018ECAC0ED88403502A712 S123C760036F848601A7026F88226F883B7DC71E2729113F1220F61CEFAD9FD3ED7FCCFCBC S123C780113F1220F41A107DCC302705113F1220F47CCC30397FCC301CEF397DC71D2627BC S123C7A08ECAC0BDD406261F7DC71C270F7FC71C810A270F3402860A8D3C3502810D26034B S123C7C0B7C71C8D3120D4860D8D2B860A8D27B6C7128D227FC71DBEC7196D0327056A0332 S123C7E07EC74730048CC84026038EC810BFC7197AC71B7EC747BDCCD82B05113F1220F6C2 S106C8007ECCE403 S113C840FF000000535441525455500054585400B2 S123CA002006BDCAAC39C0A08639B7D3FDBECC2B308900A1BFCA06AD9FD3F1BED3FBBFCD14 S123CA200ABFCD0DBED3F9BFCD10BFCD13BED3F7BFCD4F8E00A0C6B9A684E78412E1842648 S123CA400BA78430890400BCCA0626EC3089FF5FBFCC2B8ECD03BFCC168ECADCBDCE81BD78 S123CA60CEB58D9EBDCEB58EC8408601A784BDD4062708A601BDD2007ECD678EC080BFCC75 S123CA80148EC840BDD406270534307ED2D7BECC14A780810D26E78EC840BDD1F48EC08054 S123CAA0BFCC148ECD67BFCC437ED32E8ECAECBDCE81BDCE2B8D1425F3B7CC0E8D0D25ECC9 S123CAC0B7CC0F8D0625E5B7CC1039BDD175250BB6CC1C5D27031CFE391A01393638303981 S121CAE020464C45582056332E3031044441544520284D4D2C44442C5959293F20048B S123CC0008183A190004400000FF1B0001000000000000000000000000000000000000003E S11ECC200000000000000000000000BFFF000001000000000000000000000036 S104CC496086 S123CC4E2B2B2B043F3F3F04574841543F0443414E2754205452414E53464552044E4F543E S123CC6E20464F554E44044449534B204552524F52202304445249564553204E4F54205296 S11DCC8E454144590447455400D20F4D4F4E00D34B00271003E80064000A08 S123CD007ECD577ECD677ECDB17ECD097ECD0C7ECD0F7ECD127ECEFB7ECF417ECE2B7ECEC5 S123CD20817ECFED7ECEB57ED00E7ECDEA7ED0367ED1A27ED0EB7ED3497ECF867ECFD47EE8 S123CD40D27F7ED12F7ECFD07ED1757ED3297ECD4E7ECE057ECE0510CEC07F7FCC11BDD460 S123CD60007FCC28BDD3FD10CEC07FBDDE188ECD03BFCC168EC700AF9FD3E9BED3E7AF9FBB S123CD80D3EB8ECCF8BFCC317FCC347FCC4C8D5AB6CC11B1CC0226057CCC1520147DCC2887 S123CDA010260597BDD40326B28ECC4EBDCE818D7ABDD0D4810D27E58EC8407CCC0DBDD003 S123CDC03625168ECC938D3E2709BECC1227078D3526036E9801BDD22E8ECC568615B7CCAF S123CDE020BDCE817FCC117ECD67BECD13BFCD10BECD0DBFCD0A7FCC237FCC227FCC217FC7 S123CE00CC267FCC2439108EC844A6A0815F23028020A18026086D8426F06DA4270C6D8058 S123CE2026FC30026D8426DE1CFB398EC080BFCC14BDCEFBB1CC01271DB1CC00271F810D4F S123CE40270D810A2732811F23E78CC0FF27E2A780810D26DC398ECC528D2620CE8CC080AF S123CE6027F4301FB6CC07810826088620BDCF66B6CC07BDCF6620B9860DBDCF41862020F2 S123CE80C98D32A6848104276FBDCF41300120F3BDCD4E2765AD9FD3E5B1CC0A265C7FCCF4 S123CEA01AAD9FD3E5B1CC0A2750810326F37FCC116E9FCC167DCC2126278DD4B6CC0327A6 S123CEC020B1CC1A22187FCC1A7DCC0927028DCE3404F6CC0827058D085A26FB35047CCC63 S123CEE01A860D8D5C860A8D583404F6CC0527064F8D4E5A26FA35041CFE397DCC23261A1B S123CF007DCC2627108D1A7DCC2F27117DCC24270C8D532008BDCD092003BDCD0C7FCC1AB7 S123CF2039BFCC47BECC262006BFCC47BECC24BDD4062604BECC47397FCC24BDD27F7ECDF9 S123CF40037DCC212620811F22057FCC2920177CCC293402B6CC04270BB1CC292406BDCEEE S123CF60B57CCC29350234027DCC2226137DCC2427048DB5200D7DCC262608BDCD0F200316 S123CF80BDCD123502397FCC4AF7CC1D8604B7CC4DEC848ECCA08D0B30027ACC4D26F71FAF S123CFA098203D7FCC4B10A3842507A3847CCC4B20F43402B6CC4B26107DCC4A260B7DCC6B S123CFC01D270B86208D2320057CCC4A8D1235828D023001A6848D04A684200444444444C2 S123CFE0840F8B30813923028B077ECF4181302514813923168141250C815A230E816125FD S123D00004817A23061A01B7CC11391CFE393410BECC14B6CC18B7CC19A680B7CC18810D42 S123D0202710B1CC02270BBFCC1481202604A18427E78DB935908615A70186FFA7036F0477 S123D0406F0CBDD0D48608B7CC4B8D34252E260F8D2E25282609BCCC3F276C8D232368BEC1 S123D060CC3F6D0427616D032A0F7DCC0D2705B6CC0B2003B6CC0CA7037FCC0DBECC3F393B S123D0808D8C254381392215BECC3F6D032A388403A703BDD00E242F812E1CFE39F6CC4B51 S123D0A02B253404C005F7CC4B3504B1CC4925028020A70430015ABDD00E2408812D270475 S123D0C0815F26065D26E41A01395D27CB6F0430015A20F6BFCC3FBECC14A68481202604C5 S123D0E0300120F6BFCC14BECC3F393430E60C2618108ED10B810B2210C6033D31A5C603D3 S123D100A6A0A70C30015A26F735B042494E545854434D4442415353595342414B5343524D S123D1204441544241434449525052544F5554BDD21EBDD00E25228D2625183404C6047886 S123D140CC1C79CC1B5A26F73504BBCC1CB7CC1C5C20DFBDD00E24FB39BECC1B1CFE3980CB S123D160472A0F8B062A048B072A078B0A2B031CFE391A0139BDD21EBDD00E25DC8139221A S123D180D2840F34043402FCCC1B584958495849F3CC1BF3CC1BEBE08900FDCC1B35045C71 S123D1A020D67FCC1D8D3D81022715811626F68D33B7CC1E8D2EB7CC1F8601B7CC1D20E5E7 S123D1C08D221F898D1E1E89F3CC1BFDCC3D8D141F894D27D08D0DBECC3DA780BFCC3D5A8B S123D1E026F320C18EC840BDD4062711A6018108260E32628604A784BDD406260D1CFE3902 S123D200B7CC20810426031A01398D737ECDE486008D35250F8D077CCC4C8D8620F14F5FC0 S123D220FDCC1B39F6CC4C1027FBAE7ECD0386028D228DEABDD1A2F6CC1D27046E9FCC1EB2 S123D2408ECC5C86817ECDDE34028EC840BDD0363502251A8EC840BDD0EB8EC8408601A70D S123D26084BDD1E4102500BB86FFA7883B39B6CC11810D2707B1CC021026FB5D1A013934B8 S123D28030A601B7CC202763BDCDEA10BECC2D260881102758108ED3618EC8406D02270906 S123D2A08604A784BDD406262E8EC838C60B8D6E8EC840B6CC0BA7038601A784BDD4062634 S123D2C016B6CC204A47474C6F8820A788218615A784BDD406271E8ECC75BDCE81BECC3FC1 S123D2E0B6CC20A7016F845FBDCF8635B08ECC82BDCE8120F6BDCEB58EC840B6CC204A8453 S123D30003C63F3DCB04E78822BDD40626C9BDCF41810D26F48604A784BDD40620CD3430CC S123D3207ED1008ECC6B7ECDE13506FDCC4310FFCC457FCC207CCC287ECDB87FCC2810FEE3 S123D340CC45F6CC206E9FCC433A397DCCFC26046E9FD3F38EC840861BA701BDD27F7ECDCD S10FD360674552524F525300005359537A S106CCC07ED370AC S106CCD87ED37094 S106CCE47ED37088 S10BCCF801000000000000002F S11BD370397ED3706E9FF8046E9FF8006E9FF8086E9FF80A6E9FF80672 S123D3E5D374D370DFC2DFC8D370D370D370D378D371D37CD380D3847ECA007ED4367ED4DF S123D405597ED47B204449534B204F5045524154494E472053595354454D20434F50595217 S123D4254947485420284329203139383020425920544543484E4943414C205359535445F3 S111D4454D5320434F4E53554C54414E5453B7 S123D435FFBDDE158ED409C60A8D118E0005BFD413BFD4157FD41A8ED41BC61A6F805A2631 S123D455FB7EC70CBDC709BED40927EB3088E4BFD40B3420BDDAC3352024ECBED40B6F02D2 S123D475BDC70CC6FF397DCCFC2703BDC7093424BFD40B6F01E6842622E602271AC10227DE S123D49511BDD5B4BED40B25267DCCFC26235F352439BDD6CF20EDC6122014C1162304C676 S123D4B501200C5A588ED4CEAD95BED40B2402E701BDC70C6D01352439D986D9D9DAF9DA09 S123D4D5C3D5E2D81DD838D876D641D69FD969DBD6DB2CD699DA87D810D56FD590DB07DDC0 S123D4F5BDDCFBDCE58D202605C6021A0139ED84AE846F846F01398D0E2705C60D1A01399D S123D515EC94ED841CFE39FCD40BC3001C8ED40910AE8426031CFB3910A384260139AE8405 S123D53520EEBED40B4F5F8D02C62FA7881130015A26F839BED40BC60BA604A78824300137 S123D5555A26F639BED40BC60BA6043402A68824A1E0260530015A26F039BED40BE6025404 S123D5752479E688237ED600BED40BE688226C88223AA788405C261F1A0139BED40BE602AA S123D595C403C1032655CA80E702E60FC580260AE688233AA788401CFE39C60B1A0139A677 S123D5B5883B2B3C27076A883B8620201D8D31251B8118221527F68109260C8D23250DBEA3 S123D5D5D40BA7883B20D84D27E31CFE39BDDAB1250985012705A7847ED9A0C6121A0139D1 S123D5F5BED40BE68822270A6C88223AA688401CFE398D0324EA39BED40BEC88406C882166 S123D61526036C882010830000271CED881E34028604A7882235028D132410C5802704C6F9 S123D635102006C6092002C6081A01398D25BED40BBDDE0C25128D11BDDE0026031CFE39A6 S123D65534048D17350424EE39BED40BEC881E308840394FB7D411B7D41239C5102611C55F S123D675802624F6D4115CC1072705F7D41120147FD411F6D4125CC104270CF7D412BED489 S123D6950BBDDE091CFE391A01398DC7BED40BBDDE0C2520BED40B8DB0BDDE03260AB6D40C S123D6B5352737BDDE062732C540260B34048DAB350424E039C6201A0139BED40BE6883B28 S123D6D52B3D8120260F5CE7883BC17F260C200D8D0B24E6395D272720F61CFE393402C168 S123D6F50126048620201086098D143502250F3402BED40BA6883B6F883B8D03350239BE49 S123D715D40BE602C1021026FED1E68822C104260834028D213502250FBDD57D240AC60488 S123D735BED40BE788221CFE39BED40B4F5FED8820ED88422027E688122622E688172744B9 S123D7556F88178D3F252A8DE025268DDC2522BED40BC602E78817EC88117EDC828D0EBE7A S123D775D40BED8840BDD69F241A7EDBC18D03EC8439BED40BE60386063D8ED41D3ABFD49E S123D7951B6D84398DE72605C6071A0139BED40BED88136D88122603ED88116C881626035D S123D7B56C88156D8817270BBDDC4325DDBED40BEC8813BDD62025D2BED40BEC88403406D2 S123D7D58DB03506ED84260A6F026F036F046F05200810AE04313F10AF044FBED40B6C8850 S123D7F52126036C88205FA7884030015A26F8BED40BEC8820ED88421CFE395F3404C603A0 S123D815200EBED415BFD413F6D4133404F6D414BED40BE788413504E788407FD4185FE79B S123D835882239BED40BE68822261DBDD60C2530BED40B7DD4182605DC44FDD4188610A711 S123D8558822EC881EED882FA68822A78831C6183414BDD5F53514A70430015A26F21CFEC1 S123D87539BED40BA68831A78822C6183414A604BDD714351430015A26F27ED69FBED40B15 S123D895A603A78823B6D4177DD41A2631A703BED415BFD4138C0005270C8D222337BED4BB S123D8B518BFD41320EFBED40BA68823A7032A0EBDDDBD25368D07231CBDDDAD20F2BED442 S123D8D50B7FD41ABDD549BDD81DBDD8382407C10827181A0139BED40BA604270C2A028DA3 S123D8F50FBDD55926E41CFE398D051CFB1CFE39A68833260CEC882FED8832A68831A78851 S123D9153439BDD78726178D182515C60610BED40BBED41BA6A85D3121A7805A26F61CFE70 S123D93539BDD810BDD60C2508BED40BC610E7882239BDD7878DEA25F8C60610BED40BBE01 S123D955D41BA680A7A85D31215A26F6BDD69F24E07EDBC1BED40B8602A702EC882FED88EF S123D9751EBDD6412508BDD87624057EDBC1C60A39BDD4FA253DBDD8922538263BBED40BA9 S123D9957DD41A2706A60F85202629BDDCC0252AEC8811ED8840BDDA76E688172713340447 S123D9B5BDD60C3504250C5A26F4BED40B5FE788221CFE39C6112002C6043404BDD50C3523 S123D9D5041A0139BED40B6D032A08BDDDBD2403C61039BDD4FA25E2BDD537BDD91725DA03 S123D9F5BDD89225D52604C60320CFBDDCC025CABED40BC60A6F0F30015A26F9BED40BECA5 S123DA1588322727ED882FA68834A78831FCCC0EED8819B6CC10A7881BBDDDADBDD96925D4 S123DA35998D3E8604A788221CFE39BED40B6F88176C8812EC882FBDD620250DBDD77225D7 S123DA5508BDD69F2406BDDBC17ED9CFBED40BEC881EED88328610A78834BDD94725EA20EF S123DA758ABED40BA684A7026F846F883B4FA78822398D28250E6F84441025FB7AC604E71B S123DA9588221CFE39BED40BA6028183260B8603A702BDD69F102501131CFE398DE7250D50 S123DAB5BED40BA602810323F0C6121A01398DEC253181022708BED40B6F027ED50CA68829 S123DAD5122605BDDBA720198DC82517BED40B6D88172705BDDC98250ABDD9692505BDD9F3 S123DAF54724D339BDD9862528BDD60C252386032018BDD986251ABED40BA60F858026129B S123DB15EC8813BDD62025098602BED40BA7021CFE39C60B1A01398D35BDD892252A2724BB S123DB35BED40BC60BA68824A70430015A26F68D4D2515BED40BA60F858026D6856026093F S123DB558D0C2055C6031A0139C60C1A0139BED40B860BB7D411A604E68835A78835E704F5 S123DB7530017AD41126EFBED40BA60C260CC603A6883DA70C30015A26F6BED40B398DCEA7 S123DB95BDD89225072606BED40B1CFE39C6041A0139BED40B86FFA704BDD969BED40B86F0 S123DBB500A70239ED8840BDD69F2414C5402608C580270AC6102006C60B2002C60A1A01C8 S123DBD539BDD917255E8DB8255ABED40BA60F8580265285602652BDD787BED41BEC0226F7 S123DBF50FBED40BEC88112733BED41BED842014BED40BBDD620252CBED40BEC8811271C29 S123DC158DA22520BED40BEC8813BED41BED02BED40BEC8815BED41BE304ED04BDDBA725A8 S123DC3503BDD94739C60B2002C60C1A0139EC881E5CE1883C2303C6014C10A38813260E4B S123DC55A6883781FF27074CA788371CFE398D332530BED40BA6883A8B032616EC881E100D S123DC75A388112705C6171A0139EC8840ED88388604A7883AEC8813ED88358601A7883780 S123DC951CFE39EC8838BDD62025F7BED40B1F12E6883A3AC603A6A8353121A788403001AF S123DCB55A26F3BDD69F24DA7EDBC1BDD810BDD60C2546BED40B4F5FED8820A68867A7883B S123DCD53C5F6F884030015A26F8BED40B1CFE39BED40BA68817271DEC88208300012A0355 S123DCF57EDD9AED8820BDDAB1250E4624076F84A688172605C6121A01397FD411EC88111D S123DD1510AE8820276ABDDD9F25EE4F5F6D022774EB028900BFD40FBED40B10A3882024BB S123DD352CBED40F30033402B6D4114CB7D4118154270881A83502274C20D23404BED40B73 S123DD55EC88408D45253E3504350220C0A38820BED40FA6023404A0E04A1F89A684EB011D S123DD75BED40B2505E1883C2306E0883C4C20F5BDD6202514BED40BEC884210A38820272F S123DD9514C6192002C6181A0139BDD6202508BED40BC6443A1CFE39BED40BC60BA688244F S123DDB5A70430015A26F639BED40BA6034C8104240FA7032605BDDE0F2003BDDE1225E819 S109DDD539C6101A0139E1 S123DE007EDE537EDE747EDE967EDE337EDE987EDEA47EDEA47EDE1F7EDE527EDE3800CC81 S123DE200006FDE11ECC0002FDE11ECC00E0FDE10C20758D634FC6015A34024FFDE106E638 S123DE40E4FDE108F6DE1EFDE10AC601FDE10435025F398DE3CC0020FDE10E8D4B3420101E S123DE608E01008D52FCE100E780313F26F535208D365F398DC2CC0030FDE10E8D2A34206F S123DE80108E01004F8D30E680FDE100313F26F535208D145F395F39A603810323014FB787 S122DEA0DE1E5F39A6035F39FCE10EC58026F9FCE10EC54027F239FCE10EC50827F939E8 S9030000FC 1.1 System09/src/flex9/FLEX9RAM.S19 http://www.opencores.org/cvsweb.shtml/System09/src/flex9/FLEX9RAM.S19?rev=1.1&content-type=text/x-cvsweb-markup Index: FLEX9RAM.S19 =================================================================== S123C7007EC7217EC7037EC7477EC7857EC7957EC71F0C00000000C810C810000000003BDC S123C720121A10BECC3110EF027DCC3426118ECCFC7CCC346D842707BFCC3110EE023B8ED3 S123C740CCF87FCC3420F11A107DC71B2729BEC719A6843402EC018ECAC0ED88403502A712 S123C760036F848601A7026F88226F883B7DC71E2729113F1220F61CEFAD9FD3ED7FCCFCBC S123C780113F1220F41A107DCC302705113F1220F47CCC30397FCC301CEF397DC71D2627BC S123C7A08ECAC0BDD406261F7DC71C270F7FC71C810A270F3402860A8D3C3502810D26034B S123C7C0B7C71C8D3120D4860D8D2B860A8D27B6C7128D227FC71DBEC7196D0327056A0332 S123C7E07EC74730048CC84026038EC810BFC7197AC71B7EC747BDCCD82B05113F1220F6C2 S106C8007ECCE403 S113C840FF000000535441525455500054585400B2 S123CA002006BDCAAC39C0A08639B7D3FDBECC2B308900A1BFCA06AD9FD3F1BED3FBBFCD14 S123CA200ABFCD0DBED3F9BFCD10BFCD13BED3F7BFCD4F8E00A0C6B9A684E78412E1842648 S123CA400BA78430890400BCCA0626EC3089FF5FBFCC2B8ECD03BFCC168ECADCBDCE81BD78 S123CA60CEB58D9EBDCEB58EC8408601A784BDD4062708A601BDD2007ECD678EC080BFCC75 S123CA80148EC840BDD406270534307ED2D7BECC14A780810D26E78EC840BDD1F48EC08054 S123CAA0BFCC148ECD67BFCC437ED32E8ECAECBDCE81BDCE2B8D1425F3B7CC0E8D0D25ECC9 S123CAC0B7CC0F8D0625E5B7CC1039BDD175250BB6CC1C5D27031CFE391A01393638303981 S121CAE020464C45582056332E3031044441544520284D4D2C44442C5959293F20048B S123CC0008183A190004400000FF1B0001000000000000000000000000000000000000003E S11ECC200000000000000000000000BFFF000001000000000000000000000036 S104CC496086 S123CC4E2B2B2B043F3F3F04574841543F0443414E2754205452414E53464552044E4F543E S123CC6E20464F554E44044449534B204552524F52202304445249564553204E4F54205296 S11DCC8E454144590447455400D20F4D4F4E00D34B00271003E80064000A08 S123CD007ECD577ECD677ECDB17ECD097ECD0C7ECD0F7ECD127ECEFB7ECF417ECE2B7ECEC5 S123CD20817ECFED7ECEB57ED00E7ECDEA7ED0367ED1A27ED0EB7ED3497ECF867ECFD47EE8 S123CD40D27F7ED12F7ECFD07ED1757ED3297ECD4E7ECE057ECE0510CEC07F7FCC11BDD460 S123CD60007FCC28BDD3FD10CEC07FBDDE188ECD03BFCC168EC700AF9FD3E9BED3E7AF9FBB S123CD80D3EB8ECCF8BFCC317FCC347FCC4C8D5AB6CC11B1CC0226057CCC1520147DCC2887 S123CDA010260597BDD40326B28ECC4EBDCE818D7ABDD0D4810D27E58EC8407CCC0DBDD003 S123CDC03625168ECC938D3E2709BECC1227078D3526036E9801BDD22E8ECC568615B7CCAF S123CDE020BDCE817FCC117ECD67BECD13BFCD10BECD0DBFCD0A7FCC237FCC227FCC217FC7 S123CE00CC267FCC2439108EC844A6A0815F23028020A18026086D8426F06DA4270C6D8058 S123CE2026FC30026D8426DE1CFB398EC080BFCC14BDCEFBB1CC01271DB1CC00271F810D4F S123CE40270D810A2732811F23E78CC0FF27E2A780810D26DC398ECC528D2620CE8CC080AF S123CE6027F4301FB6CC07810826088620BDCF66B6CC07BDCF6620B9860DBDCF41862020F2 S123CE80C98D32A6848104276FBDCF41300120F3BDCD4E2765AD9FD3E5B1CC0A265C7FCCF4 S123CEA01AAD9FD3E5B1CC0A2750810326F37FCC116E9FCC167DCC2126278DD4B6CC0327A6 S123CEC020B1CC1A22187FCC1A7DCC0927028DCE3404F6CC0827058D085A26FB35047CCC63 S123CEE01A860D8D5C860A8D583404F6CC0527064F8D4E5A26FA35041CFE397DCC23261A1B S123CF007DCC2627108D1A7DCC2F27117DCC24270C8D532008BDCD092003BDCD0C7FCC1AB7 S123CF2039BFCC47BECC262006BFCC47BECC24BDD4062604BECC47397FCC24BDD27F7ECDF9 S123CF40037DCC212620811F22057FCC2920177CCC293402B6CC04270BB1CC292406BDCEEE S123CF60B57CCC29350234027DCC2226137DCC2427048DB5200D7DCC262608BDCD0F200316 S123CF80BDCD123502397FCC4AF7CC1D8604B7CC4DEC848ECCA08D0B30027ACC4D26F71FAF S123CFA098203D7FCC4B10A3842507A3847CCC4B20F43402B6CC4B26107DCC4A260B7DCC6B S123CFC01D270B86208D2320057CCC4A8D1235828D023001A6848D04A684200444444444C2 S123CFE0840F8B30813923028B077ECF4181302514813923168141250C815A230E816125FD S123D00004817A23061A01B7CC11391CFE393410BECC14B6CC18B7CC19A680B7CC18810D42 S123D0202710B1CC02270BBFCC1481202604A18427E78DB935908615A70186FFA7036F0477 S123D0406F0CBDD0D48608B7CC4B8D34252E260F8D2E25282609BCCC3F276C8D232368BEC1 S123D060CC3F6D0427616D032A0F7DCC0D2705B6CC0B2003B6CC0CA7037FCC0DBECC3F393B S123D0808D8C254381392215BECC3F6D032A388403A703BDD00E242F812E1CFE39F6CC4B51 S123D0A02B253404C005F7CC4B3504B1CC4925028020A70430015ABDD00E2408812D270475 S123D0C0815F26065D26E41A01395D27CB6F0430015A20F6BFCC3FBECC14A68481202604C5 S123D0E0300120F6BFCC14BECC3F393430E60C2618108ED10B810B2210C6033D31A5C603D3 S123D100A6A0A70C30015A26F735B042494E545854434D4442415353595342414B5343524D S123D1204441544241434449525052544F5554BDD21EBDD00E25228D2625183404C6047886 S123D140CC1C79CC1B5A26F73504BBCC1CB7CC1C5C20DFBDD00E24FB39BECC1B1CFE3980CB S123D160472A0F8B062A048B072A078B0A2B031CFE391A0139BDD21EBDD00E25DC8139221A S123D180D2840F34043402FCCC1B584958495849F3CC1BF3CC1BEBE08900FDCC1B35045C71 S123D1A020D67FCC1D8D3D81022715811626F68D33B7CC1E8D2EB7CC1F8601B7CC1D20E5E7 S123D1C08D221F898D1E1E89F3CC1BFDCC3D8D141F894D27D08D0DBECC3DA780BFCC3D5A8B S123D1E026F320C18EC840BDD4062711A6018108260E32628604A784BDD406260D1CFE3902 S123D200B7CC20810426031A01398D737ECDE486008D35250F8D077CCC4C8D8620F14F5FC0 S123D220FDCC1B39F6CC4C1027FBAE7ECD0386028D228DEABDD1A2F6CC1D27046E9FCC1EB2 S123D2408ECC5C86817ECDDE34028EC840BDD0363502251A8EC840BDD0EB8EC8408601A70D S123D26084BDD1E4102500BB86FFA7883B39B6CC11810D2707B1CC021026FB5D1A013934B8 S123D28030A601B7CC202763BDCDEA10BECC2D260881102758108ED3618EC8406D02270906 S123D2A08604A784BDD406262E8EC838C60B8D6E8EC840B6CC0BA7038601A784BDD4062634 S123D2C016B6CC204A47474C6F8820A788218615A784BDD406271E8ECC75BDCE81BECC3FC1 S123D2E0B6CC20A7016F845FBDCF8635B08ECC82BDCE8120F6BDCEB58EC840B6CC204A8453 S123D30003C63F3DCB04E78822BDD40626C9BDCF41810D26F48604A784BDD40620CD3430CC S123D3207ED1008ECC6B7ECDE13506FDCC4310FFCC457FCC207CCC287ECDB87FCC2810FEE3 S123D340CC45F6CC206E9FCC433A397DCCFC26046E9FD3F38EC840861BA701BDD27F7ECDCD S10FD360674552524F525300005359537A S106CCC07ED370AC S106CCD87ED37094 S106CCE47ED37088 S10BCCF801000000000000002F S11BD370397ED3706E9FF8046E9FF8006E9FF8086E9FF80A6E9FF80672 S123D3E5D374D370DFC2DFC8D370D370D370D378D371D37CD380D3847ECA007ED4367ED4DF S123D405597ED47B204449534B204F5045524154494E472053595354454D20434F50595217 S123D4254947485420284329203139383020425920544543484E4943414C205359535445F3 S111D4454D5320434F4E53554C54414E5453B7 S123D435FFBDDE158ED409C60A8D118E0005BFD413BFD4157FD41A8ED41BC61A6F805A2631 S123D455FB7EC70CBDC709BED40927EB3088E4BFD40B3420BDDAC3352024ECBED40B6F02D2 S123D475BDC70CC6FF397DCCFC2703BDC7093424BFD40B6F01E6842622E602271AC10227DE S123D49511BDD5B4BED40B25267DCCFC26235F352439BDD6CF20EDC6122014C1162304C676 S123D4B501200C5A588ED4CEAD95BED40B2402E701BDC70C6D01352439D986D9D9DAF9DA09 S123D4D5C3D5E2D81DD838D876D641D69FD969DBD6DB2CD699DA87D810D56FD590DB07DDC0 S123D4F5BDDCFBDCE58D202605C6021A0139ED84AE846F846F01398D0E2705C60D1A01399D S123D515EC94ED841CFE39FCD40BC3001C8ED40910AE8426031CFB3910A384260139AE8405 S123D53520EEBED40B4F5F8D02C62FA7881130015A26F839BED40BC60BA604A78824300137 S123D5555A26F639BED40BC60BA6043402A68824A1E0260530015A26F039BED40BE6025404 S123D5752479E688237ED600BED40BE688226C88223AA788405C261F1A0139BED40BE602AA S123D595C403C1032655CA80E702E60FC580260AE688233AA788401CFE39C60B1A0139A677 S123D5B5883B2B3C27076A883B8620201D8D31251B8118221527F68109260C8D23250DBEA3 S123D5D5D40BA7883B20D84D27E31CFE39BDDAB1250985012705A7847ED9A0C6121A0139D1 S123D5F5BED40BE68822270A6C88223AA688401CFE398D0324EA39BED40BEC88406C882166 S123D61526036C882010830000271CED881E34028604A7882235028D132410C5802704C6F9 S123D635102006C6092002C6081A01398D25BED40BBDDE0C25128D11BDDE0026031CFE39A6 S123D65534048D17350424EE39BED40BEC881E308840394FB7D411B7D41239C5102611C55F S123D675802624F6D4115CC1072705F7D41120147FD411F6D4125CC104270CF7D412BED489 S123D6950BBDDE091CFE391A01398DC7BED40BBDDE0C2520BED40B8DB0BDDE03260AB6D40C S123D6B5352737BDDE062732C540260B34048DAB350424E039C6201A0139BED40BE6883B28 S123D6D52B3D8120260F5CE7883BC17F260C200D8D0B24E6395D272720F61CFE393402C168 S123D6F50126048620201086098D143502250F3402BED40BA6883B6F883B8D03350239BE49 S123D715D40BE602C1021026FED1E68822C104260834028D213502250FBDD57D240AC60488 S123D735BED40BE788221CFE39BED40B4F5FED8820ED88422027E688122622E688172744B9 S123D7556F88178D3F252A8DE025268DDC2522BED40BC602E78817EC88117EDC828D0EBE7A S123D775D40BED8840BDD69F241A7EDBC18D03EC8439BED40BE60386063D8ED41D3ABFD49E S123D7951B6D84398DE72605C6071A0139BED40BED88136D88122603ED88116C881626035D S123D7B56C88156D8817270BBDDC4325DDBED40BEC8813BDD62025D2BED40BEC88403406D2 S123D7D58DB03506ED84260A6F026F036F046F05200810AE04313F10AF044FBED40B6C8850 S123D7F52126036C88205FA7884030015A26F8BED40BEC8820ED88421CFE395F3404C603A0 S123D815200EBED415BFD413F6D4133404F6D414BED40BE788413504E788407FD4185FE79B S123D835882239BED40BE68822261DBDD60C2530BED40B7DD4182605DC44FDD4188610A711 S123D8558822EC881EED882FA68822A78831C6183414BDD5F53514A70430015A26F21CFEC1 S123D87539BED40BA68831A78822C6183414A604BDD714351430015A26F27ED69FBED40B15 S123D895A603A78823B6D4177DD41A2631A703BED415BFD4138C0005270C8D222337BED4BB S123D8B518BFD41320EFBED40BA68823A7032A0EBDDDBD25368D07231CBDDDAD20F2BED442 S123D8D50B7FD41ABDD549BDD81DBDD8382407C10827181A0139BED40BA604270C2A028DA3 S123D8F50FBDD55926E41CFE398D051CFB1CFE39A68833260CEC882FED8832A68831A78851 S123D9153439BDD78726178D182515C60610BED40BBED41BA6A85D3121A7805A26F61CFE70 S123D93539BDD810BDD60C2508BED40BC610E7882239BDD7878DEA25F8C60610BED40BBE01 S123D955D41BA680A7A85D31215A26F6BDD69F24E07EDBC1BED40B8602A702EC882FED88EF S123D9751EBDD6412508BDD87624057EDBC1C60A39BDD4FA253DBDD8922538263BBED40BA9 S123D9957DD41A2706A60F85202629BDDCC0252AEC8811ED8840BDDA76E688172713340447 S123D9B5BDD60C3504250C5A26F4BED40B5FE788221CFE39C6112002C6043404BDD50C3523 S123D9D5041A0139BED40B6D032A08BDDDBD2403C61039BDD4FA25E2BDD537BDD91725DA03 S123D9F5BDD89225D52604C60320CFBDDCC025CABED40BC60A6F0F30015A26F9BED40BECA5 S123DA1588322727ED882FA68834A78831FCCC0EED8819B6CC10A7881BBDDDADBDD96925D4 S123DA35998D3E8604A788221CFE39BED40B6F88176C8812EC882FBDD620250DBDD77225D7 S123DA5508BDD69F2406BDDBC17ED9CFBED40BEC881EED88328610A78834BDD94725EA20EF S123DA758ABED40BA684A7026F846F883B4FA78822398D28250E6F84441025FB7AC604E71B S123DA9588221CFE39BED40BA6028183260B8603A702BDD69F102501131CFE398DE7250D50 S123DAB5BED40BA602810323F0C6121A01398DEC253181022708BED40B6F027ED50CA68829 S123DAD5122605BDDBA720198DC82517BED40B6D88172705BDDC98250ABDD9692505BDD9F3 S123DAF54724D339BDD9862528BDD60C252386032018BDD986251ABED40BA60F858026129B S123DB15EC8813BDD62025098602BED40BA7021CFE39C60B1A01398D35BDD892252A2724BB S123DB35BED40BC60BA68824A70430015A26F68D4D2515BED40BA60F858026D6856026093F S123DB558D0C2055C6031A0139C60C1A0139BED40B860BB7D411A604E68835A78835E704F5 S123DB7530017AD41126EFBED40BA60C260CC603A6883DA70C30015A26F6BED40B398DCEA7 S123DB95BDD89225072606BED40B1CFE39C6041A0139BED40B86FFA704BDD969BED40B86F0 S123DBB500A70239ED8840BDD69F2414C5402608C580270AC6102006C60B2002C60A1A01C8 S123DBD539BDD917255E8DB8255ABED40BA60F8580265285602652BDD787BED41BEC0226F7 S123DBF50FBED40BEC88112733BED41BED842014BED40BBDD620252CBED40BEC8811271C29 S123DC158DA22520BED40BEC8813BED41BED02BED40BEC8815BED41BE304ED04BDDBA725A8 S123DC3503BDD94739C60B2002C60C1A0139EC881E5CE1883C2303C6014C10A38813260E4B S123DC55A6883781FF27074CA788371CFE398D332530BED40BA6883A8B032616EC881E100D S123DC75A388112705C6171A0139EC8840ED88388604A7883AEC8813ED88358601A7883780 S123DC951CFE39EC8838BDD62025F7BED40B1F12E6883A3AC603A6A8353121A788403001AF S123DCB55A26F3BDD69F24DA7EDBC1BDD810BDD60C2546BED40B4F5FED8820A68867A7883B S123DCD53C5F6F884030015A26F8BED40B1CFE39BED40BA68817271DEC88208300012A0355 S123DCF57EDD9AED8820BDDAB1250E4624076F84A688172605C6121A01397FD411EC88111D S123DD1510AE8820276ABDDD9F25EE4F5F6D022774EB028900BFD40FBED40B10A3882024BB S123DD352CBED40F30033402B6D4114CB7D4118154270881A83502274C20D23404BED40B73 S123DD55EC88408D45253E3504350220C0A38820BED40FA6023404A0E04A1F89A684EB011D S123DD75BED40B2505E1883C2306E0883C4C20F5BDD6202514BED40BEC884210A38820272F S123DD9514C6192002C6181A0139BDD6202508BED40BC6443A1CFE39BED40BC60BA688244F S123DDB5A70430015A26F639BED40BA6034C8104240FA7032605BDDE0F2003BDDE1225E819 S109DDD539C6101A0139E1 S123DE007EF0577EF05B7EF05F7EF0637EF06C7EF09F7EF0A37EF0A77EF0BF7EF0C3000067 S115DE2000000000000000000000000102031040FFFF98 S123F000F7BDF119F141F13FF13FF13FF13FF13FF052F052F052F119F141F13FF13FF13F7A S123F020F13FF13FF052F052F052F052F052F052F052F052F052F052F052F052F052F17AA7 S123F040F1E9F249F24EF24EF24EF24EF052F052F0525F5D1CFE396E9FDE326E9FDE346E18 S123F0609FDE368D072701396E9FDE383430E603F7DE1E8EDE2AA68581FF26083530C60FD8 S123F0805D1A0139C6143D8EF002308B108EDE32C614A680A7A05A26F935306E9FDE3A6E03 S123F0A09FDE3C6E9FDE3E4FB7DE1E8EDE1B8DBC2504AD9FDE40B6DE1E4C810426EA396ECB S123F0C09FDE426E9FDE441FA8B7DE221A50CEDE2AF6DE1EE6C5CEDE2EB6DE1FABC584F072 S123F0E0A7E2B6DE208001880F840FABE0B7FFF0B6DE1F840F8B005F1F03398600880FB794 S123F100FFF0B6DE221F8A39B7DE1FF7DE201CFE1A0439C6405D1A0139347017FFEA17FFD9 S123F120A6108EDE465FA6C0A7A05A26F917FFCB108EDE465FA6A0A7805A26F95F35F05F13 S123F14039347017FFC2CEDE2AF6DE1EE6C5C1012707C100270316FFBA108EDE465FA68092 S123F160A7A05A26F917FF5F108EDE465FA6A0A7C05A26F917FF845F35F0340434027FDE26 S123F180217FDE228673BDF285244CB6DE1EBDF28524443502BDF285243D3502BDF2852485 S123F1A0365FBDF2672430A780BBDE22B7DE2224037CDE215A26EBBDF267241B3402BDF26C S123F1C06724141F89350210B3DE21260E8606BDF28524035F200DC61020098615BDF28576 S123F1E024F5C609F7DE215D39340434027FDE217FDE228672BDF28524DDB6DE1EBDF28519 S123F20024D53502BDF28524CE3502BDF28524C75FA680BDF28524BFBBDE22B7DE22240309 S123F2207CDE215A26EBB6DE21BDF28524A9B6DE22BDF28524A1BDF267249C810626035F9A S123F2402002C60AF7DE215D39F6DE215D398651BDF285240CBDF2672407810626035F20F6 S123F26004C6101A015D3934308E03E8108E04E2B6E00047250A313F26F6301F26EE35B0BE S123F280B6E00135B0343034028E03E8108E04E2B6E0004747250C313F26F5301F26ED35E0 S123F2A00235B03502B7E00135B00A0D466F726D6174696E672052414D6469736B2E2E2EBC S123F2C020040A0D0452616D6469736B206E6F7420616C6C6F63617465642120048EF2AA77 S123F2E0BDF46A8EDE2A5FA6858101270C5CC10426F58EF2C2BDF46A39F7DE1E8EDE1BBD11 S123F300F06C8EDE464F5FA7805A26FB7FDE1F8601B7DE208EDE46B6DE1FA784B6DE204C43 S123F320810F26046C848601A701B6DE1FF6DE20BDF05B7CDE20B6DE20810F26D78601B748 S123F340DE207CDE1FB6DE1F81C026C88EDE4686BFC60EBDF0578EDE466F846F0186BFC661 S123F3600EBDF05B8EDE464FC60EBDF0578EDE466F846F014FC60EBDF05B8EDE464FC60390 S123F380BDF0578EDE466F846F01CC5241ED8810CC4D44ED8812CC4953ED8814CC4B20ED73 S123F3A08816CC0001ED881BCC0101ED881D86BFC60EED881FED8826CC0A72ED8821860141 S123F3C0A788238607A788248607A788254FC603BDF05B8EDE464FC601BDF0578EDE4686F2 S123F3E0AAA7848655A7014FC6017EF05B0808426F6F74696E6720696E7465726E616C2053 S123F400464C45582E2E2E2E0D0A048EF3EDBDF46A8ED3E5108EF434ECA1ED818CD3FD26D4 S123F420F78EDE00108EF44CECA1ED818CDE1E26F77ECD00F476F482DFC2DFC8F482F48288 S123F440F482F47EF482F47AF46EF4727EF0577EF05B7EF05F7EF0637EF06C7EF09F7EF093 S123F460A37EF0A77EF0BF7EF0C36E9FF80C6E9FF80A6E9FF8066E9FF8046E9FF8086E9F24 S123F480F8003953657269616C20524F4D204469736B2075706C6F6164202E2E2E0D0A04B4 S123F4A0524F4D204469736B204C6F616465640D0A048EF483BDF46A8600B7DE1E4FC601BC S123F4C0B7DE1FF7DE2017FBFE5FBDF4EDA7C05A26F817FC26B6DE1FF6DE205CC10F26E081 S123F4E0C6014C813026D98EF4A07EF46A34048D0E484848481F898D063404ABE03584BDE0 S123F500F52829FB80302BF781092F0A81112BEF81162EEB800739B6E0008501398603B760 S123F520E0008611B7E000398610B7DE277FDE287FDE29B6E000850126088578270A8DDD41 S123F54020E6B6E0011C02397ADE2926E67ADE2826E17ADE2726DC4F1A02393402B6E000AE S123F56085022608857827F58DB320F13502B7E001390D0A586D6F64656D20524F4D20446D S123F58069736B2055706C6F6164040D0A55706C6F616420436F6D706C657465040D0A5552 S123F5A0706C6F6164204572726F72048EF57217FEB88601B7DE238EF61ABFDE258600B76B S123F5C0DE1E4FC601B7DE1FF7DE2017FAF95F17002B2520A7C05A26F617FB1FB6DE1FF6C5 S123F5E0DE205CC10F26DEC6014C813026D78EF58B7EF46A17FB048EF59D16FE6D3410BE75 S123F600DE2517FF23280A861517FF4F8EF61A20F1AD8426EDBFDE253590810126068EF6CC S123F6203A1CFA3981042608860617FF2E1A0539811826031A05391CFA39B1DE2326068E8D S123F640F6501CFA39861517FF118EF61A1CFA3943B1DE2326EF7FDE218680B7DE248EF697 S123F660641CFA393402BBDE21B7DE2135027ADE2426038EF67B1CFE1A0439B1DE21260704 S123F6807CDE238606200D34041F305AC4801F033504861517FEC48EF61A1CFA3908084CF3 S123F6A06F616420524F4D206469736B2066726F6D20636F6E6669672050524F4D2E0446F9 S123F6C06F756E642053594E432C206C6F6164696E6720646174612E2E2E0A0D04524F4D9C S123F6E0204469736B204C6F616465642E0A0D04524F4D204469736B204E6F7420466F7575 S123F7006E642E0A0D048EF69DBDF46A8D5A108E00208E00008D6C8D7C2715301F8C000042 S123F72026F3311F108C000026EB8EF6F07EF46A8EF6BFBDF46A4FB7DE1EC601B7DE1FF78D S123F740DE2017F9825F8D67A7C05A26F917F9ABB6DE1FF6DE205CC10F26E1C6014C813089 S123F76026DA8EF6DD7EF46A8602B7E0C08600B7E0C08E0000301F8C000026F9BFDF46BF61 S123F780DF48398601B7E0C08600B7E0C0B6E0C04478DF493979DF4879DF4779DF46CCFF2F S123F7A00010B3DF482607CCAA5510B3DF46393404C6088DCE5A26FBB6DF49358417FCB20A S123F7C0847F1F89862017FCA5C1602F02C0208EF7E5E180270D30028CF7F426F58EF7F4AE S120F7E016FC876E9442F40B4CF4B246F2DD50F70658F5AC57484154203F0A0D0431 S9030000FC 1.1 System09/src/flex9/f9-cli.txt http://www.opencores.org/cvsweb.shtml/System09/src/flex9/f9-cli.txt?rev=1.1&content-type=text/x-cvsweb-markup Index: f9-cli.txt =================================================================== ********************************************* * * FLEX COMMAND LINE INTERPRETER & SUBROUTINES * ********************************************* ORG $CD00 * ** FLEX JUMPS * COLDS JMP >COLD1 WARMS JMP >WARM1 RENTER JMP >RENT1 INCH JMP >INCH INCH2 JMP >INCH2 OUTCH JMP >OUTCH OUTCH2 JMP >OUTCH2 GETCHR JMP >GETCH1 PUTCHR JMP >PUTCH1 INBUFF JMP >INBUF1 PSTRNG JMP >PSTRG1 CLASS JMP >CLASS1 PCRLF JMP >PCRLF1 NXTCH JMP >NXTCH1 RSTRIO JMP >RSTIO1 GETFIL JMP >GETFL1 LOAD JMP >LOAD1 SETEXT JMP >SETEX1 ADDBX JMP >ADDBX1 OUTDEC JMP >OUTDC1 OUTHEX JMP >OUTHX1 RPTERR JMP >RPTER1 GETHEX JMP >GETHX1 OUTADR JMP >OUTAD1 INDEC JMP >INDEC1 DOCMND JMP >DOCMD1 ZCD4E JMP >ZCD4E JMP >ZCE05 JMP >ZCE05 * ** COLD START ENTRY * COLD1 LDS #ZC07F ZCD5B CLR >LASTRM JSR >ZD400 CLR >CMDFLG JSR >ZD3FD * ** WARM START ENTRY * WARM1 LDS #ZC07F JSR >WARMDR LDX #WARMS STX >ESCVEC LDX #PRSPL1 STX [SWIVVC] LDX >IHNDVC STX [IRQVVC] LDX #ZCCF8 STX >ZCC31 CLR >ZCC34 CLR >ZCC4C BSR RSTIO1 LDA >LASTRM CMPA >EOLCHR BNE ZCD9D INC >LINPTR+1 BRA RENT1 ZCD9D TST >CMDFLG LBNE ZD33B JSR >FMSCLS BNE ZCD5B LDX #PMTSTR JSR >PSTRG1 BSR INBUF1 * ** MAIN CONTROL LOOP * RENT1 JSR >ZD0D4 CMPA #$0D BEQ ZCD9D ZCDB8 LDX #FCB INC >ZCC0D JSR >GETFL1 BCS ZCDD9 LDX #CMDTBL BSR ZCE06 BEQ ZCDD3 LDX >UCTVEC BEQ ZCDD6 BSR ZCE06 BNE ZCDD6 ZCDD3 JMP [$01,X] ZCDD6 JSR >ZD22E ZCDD9 LDX #WOTMSG LDA #$15 ZCDDE STA >ERRTYP ZCDE1 JSR >PSTRG1 ZCDE4 CLR >LASTRM JMP >WARM1 * ** RESTORE IO VECTORS * RSTIO1 LDX >OUTCH2+1 STX >OUTCH+1 LDX >INCH2+1 STX >INCH+1 CLR >INPSWT CLR >OUTSWT CLR >SIOFLG CLR >FIPADR CLR >FOPADR ZCE05 RTS ZCE06 LDY #ZC844 ZCE0A LDA ,Y+ CMPA #$5F BLS ZCE12 SUBA #$20 ZCE12 CMPA ,X+ BNE ZCE1E TST ,X BNE ZCE0A TST ,Y BEQ ZCE2A ZCE1E TST ,X+ BNE ZCE1E LEAX $02,X TST ,X BNE ZCE06 ANDCC #$FB ZCE2A RTS * ** GET USER COMMAND LINE * INBUF1 LDX #LINBUF STX >LINPTR ZCE31 JSR >GETCH1 CMPA >DELCHR BEQ ZCE56 CMPA >BSPCHR BEQ ZCE5D CMPA #$0D BEQ ZCE4F CMPA #$0A BEQ ZCE78 CMPA #$1F BLS ZCE31 ZCE4A CMPX #ZC0FF BEQ ZCE31 ZCE4F STA ,X+ CMPA #$0D BNE ZCE31 RTS ZCE56 LDX #QRYSTR BSR PSTRG1 BRA INBUF1 ZCE5D CMPX #LINBUF BEQ ZCE56 LEAX -$01,X LDA >BSECHR CMPA #$08 BNE ZCE73 LDA #$20 JSR >ZCF66 LDA >BSECHR ZCE73 JSR >ZCF66 BRA ZCE31 ZCE78 LDA #$0D JSR >PUTCH1 LDA #$20 BRA ZCE4A PSTRG1 BSR PCRLF1 ZCE83 LDA ,X CMPA #$04 BEQ ZCEF8 JSR >PUTCH1 LEAX $01,X BRA ZCE83 ZCE90 JSR >ZCD4E BEQ ZCEFA JSR [ZD3E5] CMPA >ESCCHR BNE ZCEFA ZCE9E CLR >CURLIN ZCEA1 JSR [ZD3E5] CMPA >ESCCHR BEQ ZCEFA CMPA #$03 CTRL C BNE ZCEA1 CLR >LASTRM JMP [ESCVEC] * ** PRINT CR, LINEFEED * PCRLF1 TST >SIOFLG BNE ZCEE1 BSR ZCE90 LDA >DEPCNT BEQ ZCEE1 CMPA >CURLIN BHI ZCEDE CLR >CURLIN TST >PAUSE BEQ ZCED0 BSR ZCE9E ZCED0 PSHS B LDB >EJTCNT BEQ ZCEDC ZCED7 BSR ZCEE1 DECB BNE ZCED7 ZCEDC PULS B ZCEDE INC >CURLIN ZCEE1 LDA #$0D BSR PUTCH1 LDA #$0A BSR PUTCH1 PSHS B LDB >NULCNT BEQ ZCEF6 ZCEF0 CLRA BSR PUTCH1 DECB BNE ZCEF0 ZCEF6 PULS B ZCEF8 ANDCC #$FE ZCEFA RTS * ** GET A CHARACTER HONOURING TTYSET * GETCH1 TST >INPSWT BNE ZCF1A TST >FIPADR BEQ ZCF15 BSR ZCF21 TST >FIEFLG BEQ ZCF1D TST >FOPADR BEQ ZCF1D BSR ZCF66 BRA ZCF1D ZCF15 JSR >INCH BRA ZCF1D ZCF1A JSR >INCH2 ZCF1D CLR >CURLIN RTS ZCF21 STX >ZCC47 LDX >FIPADR BRA ZCF2F ZCF29 STX >ZCC47 LDX >FOPADR ZCF2F JSR >FMS BNE ZCF38 LDX >ZCC47 RTS ZCF38 CLR >FOPADR JSR >RPTER1 JMP >WARMS * ** OUTPUT CHARACTER HONOURING TTYSET * PUTCH1 TST >SIOFLG BNE ZCF66 CMPA #$1F BHI ZCF4F CLR >CURCOL BRA ZCF66 ZCF4F INC >CURCOL PSHS A LDA >WIDCNT BEQ ZCF64 CMPA >CURCOL BCC ZCF64 JSR >PCRLF1 INC >CURCOL ZCF64 PULS A ZCF66 PSHS A TST >OUTSWT BNE ZCF80 TST >FOPADR BEQ ZCF76 BSR ZCF29 BRA ZCF83 ZCF76 TST >FIPADR BNE ZCF83 JSR >OUTCH BRA ZCF83 ZCF80 JSR >OUTCH2 ZCF83 PULS A RTS OUTDC1 CLR >ZCC4A STB >TRNFLG LDA #$04 STA >ZCC4D LDD ,X LDX #DECTBL ZCF96 BSR ZCFA3 LEAX $02,X DEC >ZCC4D BNE ZCF96 TFR B,A BRA OUTHXR ZCFA3 CLR >ZCC4B ZCFA6 CMPD ,X BCS ZCFB2 SUBD ,X INC >ZCC4B BRA ZCFA6 ZCFB2 PSHS A LDA >ZCC4B BNE ZCFC9 TST >ZCC4A BNE ZCFC9 TST >TRNFLG BEQ ZCFCE LDA #$20 BSR ZCFEA BRA ZCFCE ZCFC9 INC >ZCC4A BSR OUTHXR ZCFCE PULS PC,A * ** DISPLAY HEX ADDRESS * OUTAD1 BSR OUTHX1 LEAX $01,X * ** OUPUT HEX BYTE * OUTHX1 LDA ,X BSR OUTHXL LDA ,X BRA OUTHXR OUTHXL LSRA LSRA LSRA LSRA OUTHXR ANDA #$0F ADDA #$30 CMPA #$39 BLS ZCFEA ADDA #$07 ZCFEA JMP >PUTCH1 * ** CLASSIFY CHARACTER ALHA/NUMERIC * CLASS1 CMPA #'0 BCS ZD005 CMPA #'9 BLS ZD00B CMPA #'A BCS ZD005 CMPA #'Z BLS ZD00B CMPA #'a $61 BCS ZD005 CMPA #'z $7A BLS ZD00B ZD005 ORCC #$01 STA >LASTRM RTS ZD00B ANDCC #$FE RTS * ** GET NEXT CHARACTER FROM FILE * NXTCH1 PSHS X LDX >LINPTR LDA >CURCHR STA >PRVCHR ZD019 LDA ,X+ STA >CURCHR CMPA #$0D BEQ ZD032 CMPA >EOLCHR BEQ ZD032 STX >LINPTR CMPA #$20 BNE ZD032 CMPA ,X BEQ ZD019 ZD032 BSR CLASS1 PULS PC,X * ** PARSE FILE SPEC. IN LINE BUFFER * GETFL1 LDA #$15 STA $01,X LDA #$FF STA $03,X CLR $04,X CLR $0C,X JSR >ZD0D4 LDA #$08 STA >ZCC4B BSR ZD080 BCS ZD07C BNE ZD05F BSR ZD080 BCS ZD07C BNE ZD05F CMPX >ZCC3F BEQ ZD0C7 BSR ZD080 BLS ZD0C7 ZD05F LDX >ZCC3F TST $04,X BEQ ZD0C7 TST $03,X BPL ZD079 TST >ZCC0D BEQ ZD074 LDA >SYSDRV BRA ZD077 ZD074 LDA >WRKDRV ZD077 STA $03,X ZD079 CLR >ZCC0D ZD07C LDX >ZCC3F RTS ZD080 BSR NXTCH1 BCS ZD0C7 CMPA #$39 BHI ZD09D LDX >ZCC3F TST $03,X BPL ZD0C7 ANDA #$03 STA $03,X JSR >NXTCH1 BCC ZD0C7 ZD098 CMPA #$2E ANDCC #$FE RTS ZD09D LDB >ZCC4B BMI ZD0C7 PSHS B SUBB #$05 STB >ZCC4B PULS B ZD0AB CMPA >MAPUP BCS ZD0B2 SUBA #$20 ZD0B2 STA $04,X LEAX $01,X DECB JSR >NXTCH1 BCC ZD0C4 CMPA #$2D BEQ ZD0C4 CMPA #$5F BNE ZD0CA ZD0C4 TSTB BNE ZD0AB ZD0C7 ORCC #$01 RTS ZD0CA TSTB BEQ ZD098 CLR $04,X LEAX $01,X DECB BRA ZD0CA ZD0D4 STX >ZCC3F LDX >LINPTR ZD0DA LDA ,X CMPA #$20 BNE ZD0E4 LEAX $01,X BRA ZD0DA ZD0E4 STX >LINPTR LDX >ZCC3F RTS * ** DEFAULT FILE EXTENSION * SETEX1 PSHS Y,X LDB $0C,X BNE ZD109 LDY #EXTTBL CMPA #$0B BHI ZD109 LDB #$03 MUL LEAY B,Y LDB #$03 ZD100 LDA ,Y+ STA $0C,X LEAX $01,X DECB BNE ZD100 ZD109 PULS PC,Y,X * ** STANDARD FILE NAME EXTTENSIONS * EXTTBL FCC "BIN" FCC "TXT" FCC "CMD" FCC "BAS" FCC "SYS" FCC "BAK" FCC "SCR" FCC "DAT" FCC "BAC" FCC "DIR" FCC "PRT" FCC "OUT" * ** READ A HEX ADDRESS FROM THE LINE BUFFER * GETHX1 JSR >ZD21E ZD132 JSR >NXTCH1 BCS ZD159 BSR ZD15F BCS ZD153 PSHS B LDB #$04 ZD13F ASL >LODOFF+1 ROL >LODOFF DECB BNE ZD13F PULS B ADDA >LODOFF+1 STA >LODOFF+1 INCB BRA ZD132 ZD153 JSR >NXTCH1 BCC ZD153 RTS ZD159 LDX >LODOFF ANDCC #$FE RTS ZD15F SUBA #$47 BPL ZD172 ADDA #$06 BPL ZD16B ADDA #$07 BPL ZD172 ZD16B ADDA #$0A BMI ZD172 ANDCC #$FE RTS ZD172 ORCC #$01 RTS INDEC1 JSR >ZD21E ZD178 JSR >NXTCH1 BCS ZD159 CMPA #$39 BHI ZD153 ANDA #$0F PSHS B PSHS A LDD >LODOFF ASLB ROLA ASLB ROLA ASLB ROLA ADDD >LODOFF ADDD >LODOFF ADDB ,S+ ADCA #$00 STD >LODOFF PULS B INCB BRA ZD178 * ** LOAD BINARY FILE * LOAD1 CLR >TRNFLG ZD1A5 BSR ZD1E4 CMPA #$02 BEQ ZD1C0 CMPA #$16 BNE ZD1A5 BSR ZD1E4 STA >TRNVEC BSR ZD1E4 STA >TRNVEC+1 LDA #$01 STA >TRNFLG BRA ZD1A5 ZD1C0 BSR ZD1E4 TFR A,B BSR ZD1E4 EXG A,B ADDD >LODOFF STD >ZCC3D BSR ZD1E4 TFR A,B TSTA BEQ ZD1A5 ZD1D5 BSR ZD1E4 LDX >ZCC3D STA ,X+ STX >ZCC3D DECB BNE ZD1D5 BRA ZD1A5 ZD1E4 LDX #FCB JSR >FMS BEQ ZD1FD LDA $01,X CMPA #$08 BNE ZD200 LEAS $02,S ZD1F4 LDA #$04 STA ,X JSR >FMS BNE ZD20A ZD1FD ANDCC #$FE RTS ZD200 STA >ERRTYP CMPA #$04 BNE ZD20A ORCC #$01 RTS ZD20A BSR RPTER1 JMP >ZCDE4 * ** 'GET' - LOAD BINARY FILE * GETCMD LDA #$00 BSR ZD248 BCS ZD224 BSR ZD21E INC >ZCC4C BSR LOAD1 BRA GETCMD ZD21E CLRA CLRB STD >LODOFF RTS ZD224 LDB >ZCC4C LBEQ ZCDD9 JMP >WARMS ZD22E LDA #$02 BSR ZD254 BSR ZD21E JSR >LOAD1 LDB >TRNFLG BEQ ZD240 JMP [TRNVEC] ZD240 LDX #NTRMSG LDA #$81 JMP >ZCDDE ZD248 PSHS A LDX #FCB JSR >GETFL1 PULS A BCS ZD26E ZD254 LDX #FCB JSR >SETEX1 LDX #FCB LDA #$01 STA ,X JSR >ZD1E4 LBCS ZD323 LDA #$FF STA $3B,X RTS ZD26E LDA >LASTRM CMPA #$0D BEQ ZD27C CMPA >EOLCHR LBNE ZCDD9 ZD27C ORCC #$01 RTS RPTER1 PSHS Y,X LDA $01,X STA >ERRTYP BEQ ZD2EB JSR >RSTIO1 LDY >ERRVEC BNE ZD299 CMPA #$10 BEQ ZD2ED LDY #ZD361 ZD299 LDX #FCB TST $02,X BEQ ZD2A9 LDA #$04 STA ,X JSR >FMS BNE ZD2D7 ZD2A9 LDX #ZC838 LDB #$0B BSR ZD31E LDX #FCB LDA >SYSDRV STA $03,X LDA #$01 STA ,X JSR >FMS BNE ZD2D7 LDA >ERRTYP DECA ASRA ASRA INCA CLR $20,X STA $21,X LDA #$15 STA ,X JSR >FMS BEQ ZD2F5 ZD2D7 LDX #DERMSG JSR >PSTRG1 LDX >ZCC3F LDA >ERRTYP STA $01,X CLR ,X CLRB JSR >OUTDC1 ZD2EB PULS PC,Y,X ZD2ED LDX #DNRMSG JSR >PSTRG1 BRA ZD2EB ZD2F5 JSR >PCRLF1 LDX #FCB LDA >ERRTYP DECA ANDA #$03 LDB #$3F MUL ADDB #$04 STB $22,X ZD309 JSR >FMS BNE ZD2D7 JSR >PUTCH1 CMPA #$0D BNE ZD309 LDA #$04 STA ,X JSR >FMS BRA ZD2EB ZD31E PSHS Y,X JMP >ZD100 ZD323 LDX #NFDMSG NOT FOUND JMP >ZCDE1 * ** CALL FLEX AS A SUBROUTINE * DOCMD1 PULS B,A STD >ZCC43 ZD32E STS >ZCC45 CLR >ERRTYP INC >CMDFLG JMP >ZCDB8 ZD33B CLR >CMDFLG LDS >ZCC45 LDB >ERRTYP JMP [ZCC43] * ** ADD ACCB TO IX * ADDBX1 ABX RTS ZD34B TST >ZCCFC BNE ZD354 JMP [MONVEC] ZD354 LDX #FCB LDA #$1B STA $01,X JSR >RPTER1 JMP >WARM1 ZD361 FCC /ERRORS/ FCB $00,$00 FCC /SYS/ END 1.1 System09/src/flex9/f9-data.txt http://www.opencores.org/cvsweb.shtml/System09/src/flex9/f9-data.txt?rev=1.1&content-type=text/x-cvsweb-markup Index: f9-data.txt =================================================================== * ** STRINGS AND MESSAGES * ORG $CC4E PMTSTR FCC "+++" FCB $04 QRYSTR FCC "???" FCB $04 WOTMSG FCC "WHAT?" FCB $04 NTRMSG FCC "CAN'T TRANSFER" FCB $04 NFDMSG FCC "NOT FOUND" FCB $04 DERMSG FCC "DISK ERROR #" FCB $04 DNRMSG FCC "DRIVES NOT READY" FCB $04 * ** MEMORY RESIDENT COMMANDS * CMDTBL FCC "GET" FCB $00 FDB GETCMD FCC "MON" FCB $00 FDB ZD34B FCB $00 * ** DECIMAL CONVERSION TABLE * DECTBL FDB 10000 FDB 1000 FDB 100 FDB 10 END 1.1 System09/src/flex9/f9-dkcf8.txt http://www.opencores.org/cvsweb.shtml/System09/src/flex9/f9-dkcf8.txt?rev=1.1&content-type=text/x-cvsweb-markup Index: f9-dkcf8.txt =================================================================== * ** FLEX 9 COMPACT FLASH DISK DRIVERS * * FOR SYS09BUG 1.2 ON THE BURCHED B5-X300 * WITH I/O MAPPED AT $XE000 * AND ROM MAPPED AT $XF000 * THE BURCHED B5-X300 HAS 256KBYTES OF SRAM * THE FIRST 64K IS USED BY FLEX, * THE SECOND 192K MAY BE USED AS A RAM DISK * * IMASK EQU $10 IRQ MASK CC FMASK EQU $40 FIRQ MASK CC DATREG EQU $FFF0 DAT REGISTERS * CF_BASE EQU $E040 CF_DATA EQU CF_BASE+0 CF_ERROR EQU CF_BASE+1 ; read error CF_FEATURE EQU CF_BASE+1 ; write feature CF_SECCNT EQU CF_BASE+2 CF_SECNUM EQU CF_BASE+3 CF_CYLLO EQU CF_BASE+4 CF_CYLHI EQU CF_BASE+5 CF_HEAD EQU CF_BASE+6 CF_STATUS EQU CF_BASE+7 ; read status CF_COMAND EQU CF_BASE+7 ; write command * * Command Equates * CMDREAD EQU $20 ; Read Single sector CMDWRITE EQU $30 ; Write Single sector CMDFEATURE EQU $EF FEAT8BIT EQU $01 ; enable 8 bit transfers HEADLBA EQU $E0 * * Status bit equates * BSY EQU $80 DRDY EQU $40 DRQ EQU $08 ERR EQU $01 ORG $DE00 * * DISK DRIVER JUMP TABLE * READ JMP READSC WRITE JMP WRITSC VERIFY JMP BUSY RESTOR JMP RESTR1 DRIVE JMP DRVSEL DRVRDY JMP CHKDRV QUICK JMP CHKDRV COLDDR JMP INITDR WARMDR JMP WARMD1 SEEK JMP SEEKTS * * RAM SPACE * DRVNUM FCB 0 * * * INITIALIZE CF CARD FOR 8 BIT LBA MODE * INITDR BSR WAITRDY LDA #HEADLBA STA CF_HEAD LDA #FEAT8BIT STA CF_FEATURE LDA #CMDFEATURE STA CF_COMAND BRA WAITRDY * * RESTORE DISK DRIVER (SEEK TRACK 00) * RESTR1 BSR DRVSEL CLRA ; Track 0 LDB #$01 ; Sector 1 * * Seek track and sector * A holds track number (0 - ??) * B holds sector number (1 - ??) * Sector numbers starts from 1 * subtract 1 to start from sector 0 on CF * SEEKTS DECB STB CF_SECNUM STA CF_CYLLO LDB DRVNUM STB CF_CYLHI LDB #$01 STB CF_SECCNT CLRB WARMD1 RTS * * READ SECTORS FROM CF * * READSC BSR SEEKTS LDA #CMDREAD ; IDE READ MULTIPLE STA CF_COMAND BSR WAITRDY * * READ LOOP * CLRB RDLP1 BSR WAITDRQ LDA CF_DATA STA ,X+ DECB BNE RDLP1 * CLRB RDLP2 BSR WAITDRQ LDA CF_DATA DECB BNE RDLP2 * BSR WAITRDY CLRB RTS * * WRITE SECTOR TO CF * WRITSC BSR SEEKTS ; SEEK TRACK & SECTOR LDA #CMDWRITE; IDE WRITE MULTIPLE STA CF_COMAND BSR WAITRDY * * WRITE LOOP * CLRB WRTLP1 BSR WAITDRQ LDA ,X+ STA CF_DATA DECB BNE WRTLP1 * CLRB WRTLP2 BSR WAITDRQ CLRA STA CF_DATA DECB BNE WRTLP2 * BSR WAITRDY CLRB RTS * * CHECK FOR BUSY * Doubles as VERIFY * BUSY CLRB Never busy RTS * * DRIVE SELECT DISK DRIVER * DRVSEL LDA 3,X GET DRIVE # FROM FCB CMPA #3 BLS DRVS2 IF > 3, SET IT TO 0 CLRA DRVS2 STA DRVNUM CLRB ; SET Z, CLEAR C RTS * * CHECK DRIVE READY DISK DRIVER * CHKDRV LDA 3,X CLRB ; CLEAR C, SET Z RTS * * WAIT UNTIL READY * WAITRDY LDA CF_STATUS BITA #BSY BNE WAITRDY LDA CF_STATUS BITA #DRDY BEQ WAITRDY RTS * * WAIT FOR DATA REQUEST * WAITDRQ LDA CF_STATUS BITA #DRQ BEQ WAITDRQ RTS * END 1.1 System09/src/flex9/f9-dkfdc.txt http://www.opencores.org/cvsweb.shtml/System09/src/flex9/f9-dkfdc.txt?rev=1.1&content-type=text/x-cvsweb-markup Index: f9-dkfdc.txt =================================================================== * ** FLEX 9 DISK DRIVERS ** FOR SINGLE/DOUBLE SIDED 5" DRIVES ONLY. ** USING FD1771. ** SIDES MAY BE TREATED AS SEPERATE DISKS. ** ** BY J.E.KENT 1 JAN 1982 * * ** F.D. CONTROLLER * DRVREG EQU $E014 MOTOR EQU %10000000 SIDESL EQU %01000000 DRIVSL EQU %00000001 CMDREG EQU $E018 TRKREG EQU $E019 SECREG EQU $E01A DATREG EQU $E01B * ** FD1771 DISK CONTROLLER INSTRUCTIONS * ** TYPE I INSTRUCTIONS: * IREST EQU $00 RESTORE (SEEK TRACK 0) ISEEK EQU $10 SEEK TRACK ISTEP EQU $20 STEP ONE TRACK (IN/OUT) ISTIN EQU $40 STEP IN ONE TRACK ISTOUT EQU $60 STEP OUT ONE TRACK * ** BIT FIELDS FOR TYPE I INSTRUCTIONS * SMR6 EQU $00 6MSEC STEPPING RATE SMR12 EQU $01 12 MSEC STEPPING RATE SMR20 EQU $02 20 MSEC SMR40 EQU $03 40 MSEC * BVERIF EQU $04 VERIFY BIT (1=ON) BHDLD EQU $08 HEAD LOAD (1=LOAD HEAD AT BEGINING) BUPDAT EQU $10 UPDATE TRACK REGISTER (1=TRUE) * ** TYPE II INSTRUCTIONS * IREAD EQU $80 READ SECTOR IWRITE EQU $A0 WRITE SECTOR * ** BIT FIELD FOR TYPE II * BDAMFB EQU $00 $FB DATA ADDRESS MARK BDAMFA EQU $01 $FA DATA ADDREES MARK BDAMF9 EQU $02 $F9 DATA ADDRESS MARK BDAMF8 EQU $03 $F8 DATA ADDRESS MARK BEHLD EQU $04 ENABLE HLD & 10 MSEC DELAY (1=ACTIVE) BBLEN EQU $08 BLOCK LENGTH (1=IBM FORMAT 128 - 1024 BYTES) BMREC EQU $10 MULTIPLE RECORD (0=SINGLE, 1=MULTIPLE) * ** TYPE III INSTRUCTIONS * IRDADD EQU $C4 READ ADDRESS IRDTRK EQU $E4 READ TRACK IWRTRK EQU $F4 WRITE TRACK * ** BIT FIELD TYPE III (READ TRACK ONLY) * BSYNC EQU $01 SYNCRONIZE FLAG (0=SYNC TO AM) * ** TYPE IV NSTRUCTION * IFINTR EQU $D0 FORCE INTERRUPT * ** FORCED INTERRUPT BITS (TYPE IV INSTRUCTION) * FI0 EQU $01 NOT READY TO READY TRANSITION FI1 EQU $02 READY TO NOT READY TRANSITION FI2 EQU $04 INDEX PULSE FI3 EQU $08 EVERY 10 MSEC * ** DISK DRIVER PATCHES * ORG $DE00 * ** JUMP TABLE TO DISK DRIVERS * READ JMP READSC WRITE JMP WRITSC VERIFY JMP VERIF1 RESTOR JMP RESTR1 DRIVE JMP DRVSEL DRVRDY JMP CHKDRV QUICK JMP CHKDRV COLDDR JMP INITDR WARMDR JMP WARMD1 SEEK JMP SEEK1 * ** CURRNT DRIVE NUMBER ($DE1E) * CURDRV FCB $00 * ** HEAD POSITION TABLE ($DE1F) * TRKTBL FCB $00 DRIVE 0 FCB $00 DRIVE 1 FCB $00 DRIVE 2 FCB $00 DRIVE 3 * ** ??? ($DE23) * FCB 0 * ** DENSITY TABLE: ($DE24) ** HOLDS SECTORS/TRACK FOR DRIVE ** 5" SINGLE DENSITY => 10 SECTORS/TRACK * DNSTBL FCB 10,10,10,10 ALL MINIS * ** DRIVE & DISK CHARACTERISTICS * * BITS 1,0 STEPPING RATES * BIT 2 TRACKS/DISK (0=40 TRACK, 1=80 TRACK) * BIT 3 TRACKS/DRIVE (0=40 TRACK, 1=80 TRACK) * BDVTPI EQU $08 BDKTPI EQU $04 DDCTBL EQU * FCB BDVTPI+BDKTPI+SMR6 FCB BDVTPI+BDKTPI+SMR6 FCB SMR40 FCB SMR40 * ** DISK DRIVERS * * DRIVER INITIATION * INITDR LDX #CURDRV LDB #5 INITD2 CLR ,X+ DECB BNE INITD2 WARMD1 RTS * * READ ONE SECTOR * READSC BSR SEEK1 LDA #IREAD+BBLEN+BEHLD READ2 ORCC #$10 * SEI DISABLE INTERRUPTS STA CMDREG LBSR DLY47 LDB #$00 RDLOOP LDA CMDREG BITA #$02 BNE RDBYTE BITA #$01 BNE RDLOOP TFR A,B BRA RDEXIT * RDBYTE LDA DATREG STA ,X+ DECB BNE RDLOOP BSR WAIT RDEXIT BITB #$1C ANDCC #$EF * CLI RTS * ** WAIT UNTIL CONTROLLER READY * WAIT LDB CMDREG BITB #$01 BNE WAIT RTS * ** SEEK1 TRACK AND SECTOR ** ACCA = TRACK NUMBER ** ACCB = SECTOR NUMBER * SEEK1 STB SECREG SET SECTOR CMPB #10 DOUBLE-SIDED ? BHI SEEK2 DOUBLE SIDED, FLIP LDB CURDRV BACK SIDE OF DISK ? CMPB #1 DRIVE 2-3 BACK SIDE BHI SEEK3 ANDB #$FF-SIDESL SELECT SIDE 0 BRA SEEK4 * SEEK2 LDB CURDRV SELECT SIDE 1 SEEK3 ANDB #DRIVSL ORB #SIDESL SEEK4 STB DRVREG * CMPA TRKREG DIFFERENT TO LAST ? BEQ FOUND PSHS A SAVE TRACK NO. ON STACK * * IF 80 TRACK DRIVE, & 40 TRACK DISK, FIRST SEEK * SHOULD NOT UPDATE TRACK REGISTER NOR VERIFY. * SUBA TRKREG CALC. DIFFERENCE TFR A,B PSHS Y * ** GET STEPPING RATE FROM TABLE * LDY #DDCTBL LDA CURDRV ANDA #$01 LDA A,Y PULS Y * ** CHECK DRIVE AND DISK TYPE * BITA #BDVTPI DRIVE TRACK DENSITY = 48 TPI ? BEQ SEEKVU YES, SKIP BITA #BDKTPI DISK TRACK DENSITY = 96 TPI ? BNE SEEKVU YES, SKIP (DRIVE & DISK MATCH) * ** HERE IF 40TRACK DISK IN 80 TRACK DRIVE ** USE STEP INSTRUCTIONS TO PREVENT UPDATE OF TRACK REG. * ANDA #$03 LEAVE STEPPING RATE BITS TSTB BPL STEPIN NEGB ORA #ISTOUT BRA STEPLP STEPIN ORA #ISTIN STEPLP PSHS B BSR SEEK5 PULS B DECB BNE STEPLP * ** SEEK TRACK WITH VERIFY & UPDATE * SEEKVU ANDA #$03 RETAIN STEPPING RATE ORA #ISEEK+BHDLD ($18) PULS B RESTORE DEST TRACK NO. STB DATREG YES, SEEK1 NEW TRACK LBSR DLY47 SEEK5 STA CMDREG LBSR DLY47 BSR WAIT BITB #$10 CHECK FOR SEEK1 ERROR FOUND JMP DLY47 * ** WRITE SECTOR TO DISK * WRITSC BSR SEEK1 LDA #IWRITE+BBLEN+BEHLD ($AC) WRITE2 ORCC #$10 * SEI STA CMDREG LBSR DLY47 LDB #$00 WRLOOP LDA CMDREG BITA #$02 BNE WRBYTE BITA #$01 BNE WRLOOP TFR A,B BRA WREXIT * WRBYTE LDA ,X+ STA DATREG DECB BNE WRLOOP LBSR WAIT WREXIT BITB #$5C ANDCC #$EF * CLI RTS * ** VERIFY SECTOR WRITTEN * VERIF1 LDA #IREAD+BBLEN+BEHLD ($8C) VERIF2 ORCC #$10 * SEI STA CMDREG LBSR DLY47 LBSR WAIT ANDCC #$EF * CLI BITB #$18 RTS * ** SEEK TRACK ZERO * RESTR1 PSHS X BSR DRVSEL LDX #DDCTBL LDA CURDRV ANDA #1 LDA A,X ANDA #$03 ORA #IREST+BHDLD STA CMDREG BSR DLY47 LBSR WAIT BITB #$D8 CHECK FOR ERROR PULS X,PC * ** SELECT DRIVE ** IX -> FCB ** ACCA = NEW DRIVE NUMBER * * SAVE OLD TRACK NUMBER IN TABLE * AND SET UP TRACK FOR NEW DRIVE * * DRVSEL LDA 3,X CMPA #3 BLS DRSEL1 LDB #$0F SET ERROR VALUE * SEC ORCC #$01 RTS * * SAVE TRACK POSITION OF PREVIOUS DRIVE * DRSEL1 BSR PNTDRV LDB TRKREG STB ,X * * SELECT NEW DRIVE * DRSEL3 STA CURDRV MAY BE 0 - 3 CMPA #1 BLS DRSEL4 ONE DIRECTORY ? ANDA #DRIVSL ROUND OFF ORA #SIDESL SELECT SIDE 1 DRSEL4 STA DRVREG * * RESTORE LAST TRACK POSITION FOR THIS DRIVE * BSR PNTDRV LDA ,X STA TRKREG BSR DLY47 BRA OK * ** CHECK IF DRIVE READY * CHKDRV LDA 3,X CMPA #3 BLS OK LDB #$80 * SEC ORCC #$01 RTS OK CLRB * CLC ANDCC #$FE RTS * * POINT TO TRACK TABLE ENTRY FOR THIS DRIVE * PNTDRV LDX #TRKTBL LDB CURDRV ANDB #DRIVSL ABX RTS * ** DELAY ROUTINE * DLY47 LBSR DLY19 DLY19 LBSR DLY5US DLY5US RTS END 1.1 System09/src/flex9/f9-dkide.txt http://www.opencores.org/cvsweb.shtml/System09/src/flex9/f9-dkide.txt?rev=1.1&content-type=text/x-cvsweb-markup Index: f9-dkide.txt =================================================================== * ** FLEX 9 COMPACT FLASH / IDE DISK DRIVERS * * FOR SYS09BUG ON THE XESS XSA-3S1000 & XST3.0 * WITH I/O MAPPED AT $XE000 * AND ROM MAPPED AT $XF000 * * These drivers should work with either * an IDE disk drive or a IDE CF adapter card * It uses 16 bit transfer mode, * as some IDE drives do not support * the set feature command found on CF cards * that allows for 8 bit operation * * IMASK EQU $10 IRQ MASK CC FMASK EQU $40 FIRQ MASK CC * CF_BASE EQU $E100 CF_DATA EQU CF_BASE+0 CF_ERROR EQU CF_BASE+2 ; read error CF_FEATURE EQU CF_BASE+2 ; write feature CF_SECCNT EQU CF_BASE+4 CF_SECNUM EQU CF_BASE+6 CF_CYLLO EQU CF_BASE+8 CF_CYLHI EQU CF_BASE+10 CF_HEAD EQU CF_BASE+12 CF_STATUS EQU CF_BASE+14 ; read status CF_COMAND EQU CF_BASE+14 ; write command CF_AUX EQU CF_BASE+30 ; Reset register * * Command Equates * CMDREAD EQU $20 ; Read Single sector CMDWRITE EQU $30 ; Write Single sector AUXRESET EQU $06 AUXRSTREL EQU $02 HEADLBA EQU $E0 * * Status bit equates * BSY EQU $80 DRDY EQU $40 DRQ EQU $08 ERR EQU $01 ORG $DE00 * * DISK DRIVER JUMP TABLE * READ JMP READSC WRITE JMP WRITSC VERIFY JMP BUSY RESTOR JMP RESTR1 DRIVE JMP DRVSEL DRVRDY JMP CHKDRV QUICK JMP CHKDRV COLDDR JMP INITDR WARMDR JMP WARMD1 SEEK JMP SEEKTS * * RAM SPACE * DRVNUM FCB 0 * * * INITIALIZE CF CARD * INITDR LDD #AUXRESET STD CF_AUX LDD #AUXRSTREL STD CF_AUX LDD #HEADLBA STD CF_HEAD BRA WAITRDY * * RESTORE DISK DRIVER (SEEK TRACK 00) * RESTR1 BSR DRVSEL CLRA ; Track 0 LDB #$01 ; Sector 1 * * Seek track and sector * A holds track number (0 - ??) * B holds sector number (1 - ??) * Sector numbers starts from 1 * subtract 1 to start from sector 0 on CF * SEEKTS DECB PSHS A CLRA STD CF_SECNUM LDB ,S STD CF_CYLLO LDB DRVNUM STD CF_CYLHI LDB #$01 STD CF_SECCNT PULS A CLRB WARMD1 RTS * * READ SECTORS FROM CF * * READSC BSR SEEKTS LDD #CMDREAD ; IDE READ MULTIPLE STD CF_COMAND BSR WAITRDY * * READ LOOP * PSHS Y LDY #256 RDLP1 BSR WAITDRQ LDD CF_DATA STB ,X+ LEAY -1,Y BNE RDLP1 PULS Y * BSR WAITRDY CLRB RTS * * WRITE SECTOR TO CF * WRITSC BSR SEEKTS ; SEEK TRACK & SECTOR LDD #CMDWRITE; IDE WRITE MULTIPLE STD CF_COMAND BSR WAITRDY * * WRITE LOOP * PSHS Y LDY #256 CLRA WRTLP1 BSR WAITDRQ LDB ,X+ STD CF_DATA LEAY -1,Y BNE WRTLP1 PULS Y * BSR WAITRDY CLRB RTS * * CHECK FOR BUSY * Doubles as VERIFY * BUSY CLRB Never busy RTS * * DRIVE SELECT DISK DRIVER * DRVSEL LDA 3,X GET DRIVE # FROM FCB CMPA #3 BLS DRVS2 IF > 3, SET IT TO 0 CLRA DRVS2 STA DRVNUM CLRB ; SET Z, CLEAR C RTS * * CHECK DRIVE READY DISK DRIVER * CHKDRV LDA 3,X CLRB ; CLEAR C, SET Z RTS * * WAIT UNTIL READY * WAITRDY LDD CF_STATUS BITB #BSY BNE WAITRDY LDD CF_STATUS BITB #DRDY BEQ WAITRDY RTS * * WAIT FOR DATA REQUEST * WAITDRQ LDD CF_STATUS BITB #DRQ BEQ WAITDRQ RTS * END 1.1 System09/src/flex9/f9-dkram.txt http://www.opencores.org/cvsweb.shtml/System09/src/flex9/f9-dkram.txt?rev=1.1&content-type=text/x-cvsweb-markup Index: f9-dkram.txt =================================================================== * ** FLEX 9 DISK DRIVERS * * FOR SYS09BUG ON THE DIGILENT SPARTAN 3 STARTER BOARD * WITH I/O MAPPED AT $XE000 * AND ROM MAPPED AT $XF000 * THE DIGILENT SPARTAN 3 STARTER BOARD HAS 1MBYTE OF SRAM * THE FIRST 64K IS USED BY FLEX, * THE SECOND 192K IS USED AS A ROM DISK * THE REMAINING RAM IS USED FOR A RAM DISK * * These drivers should also work on the B5-X300 board * although there is only enough room for the ROM Disk. * IMASK EQU $10 IRQ MASK CC FMASK EQU $40 FIRQ MASK CC TRPAGE EQU $0E PAGE $E000 DAT ADDRESS DATREG EQU $FFF0 DAT REGISTERS ORG $DE00 * * DISK DRIVER JUMP TABLE LAST UPDATE: 22/12/2006 * Disk driver for RAM Disk. * * 14 SECTORS PER TRACK * 16 * N TRACKS PER DISK * * ROM DISK OCCUPIES $10000 - $1E000, $20000 - $2E000, $30000 - $3E000 * RAM DISK OCCUPIES $40000 - $4E000 ... $F0000 - $FE000 * Track Buffer page mapped at $E000 - $EFFF * TRPAGE = $0E = 14 x $1000 (4 K pages) * LEAST SIGNIFICANT NYBBLE OF THE DAT IS INVERTED * ON SWTPC ROM AT $XF000 AND IO AT $XE000 * APPEARS THROUGHOUT THE MEMORY SO MUST BE SKIPPED OVER * WHEN USING RAM AS A RAMDISK. * THE MSN OF THE TRACK MAPS INTO THE MSN OF THE DAT * THE LSN OF THE TRACK NUMBER INDEXES INTO THE 4K RAM PAGE * THE SECTOR MAPS INTO THE LSN OF THE DAT WHICH IS INVERTED * * READ JMP READSC WRITE JMP WRITSC VERIFY JMP BUSY RESTOR JMP RESTR1 DRIVE JMP DRVSEL DRVRDY JMP CHKDRV QUICK JMP CHKDRV COLDDR JMP INITDR WARMDR JMP WARMD1 SEEK JMP SEEKTS * * RAM SPACE * WRKDR FDB 0 WRKTR FDB 0,0,0,0 SECPTR FDB 0 TRKCNT FCB 0 SECCNT FCB 0 VERERR FCB 0 CCSAVE FCB 0 * DRVBAS FCB $10 DRIVE 0 FCB $40 DRIVE 1 FCB $40 DRIVE 2 FCB $40 DRIVE 3 * INITDR RTS WARMD1 RTS * * Seek track and sector * A holds track number (0-32) * B holds sector number (1-14) * SEEKTS STA TRKCNT STB SECCNT ANDCC #$FE ; CLEAR CARRY ORCC #$40 ; SET Z RTS * * MAP RAM DISK INTO I/O SPACE * MAPIN TFR CC,A ; Save state of interrupt masks STA CCSAVE ORCC #FMASK+IMASK ; Mask interrupts while IO mapped out LDA TRKCNT LDU #DRVBAS ; Point to Drive base offset LDB WRKDR ; Get working drive number ADDA B,U ; Add Base offset into RAM ANDA #$F0 ; Mask MSN STA ,-S ; Save A on stack * LDA SECCNT SUBA #1 ; Sectors 1 to 14 => 0 to 13 EORA #$0F ; Complement LSNybble ANDA #$0F * ADDA ,S+ ; Add sector to LSN of Track and pop STA DATREG+TRPAGE * LDA TRKCNT ; LSN of Track indexes into 4K page ANDA #$0F ADDA #TRPAGE*16 STA SECPTR CLR SECPTR+1 LDU SECPTR RTS * * MAP RAM DISK OUT OF MEMORY * MAPOUT LDA #TRPAGE ; Point to the I/O page EORA #$0F ; Complement LSNybble STA DATREG+TRPAGE ; map in I/O page LDA CCSAVE ; restore interrupt masks TFR A,CC RTS * * READ DISK DRIVER * READSC LBSR SEEKTS ; SEEK TRACK & SECTOR PSHS U,X BSR MAPIN ; MAP RAM DISK INTO I/O SPACE * CLRB READ3 LDA ,U+ STA ,X+ ; Move Sector to FCB INCB BNE READ3 * BSR MAPOUT ; MAP RAM DISK OUT OF I/O SPACE CLRB ; Z SET C CLEAR PULS U,X,PC ; Restore registers and return * * WRITE DISK DRIVER * WRITSC BSR SEEKTS ; SEEK TRACK & SECTOR PSHS U,X BSR MAPIN ; MAP RAM DISK INTO I/O SPACE * CLRB WRIT3 LDA ,X+ ; COPY FCB BLOCK TO RAM DISK STA ,U+ INCB BNE WRIT3 * BSR MAPOUT ; MAP OUT RAM DISK CLRB ; SET Z, CLEAR C PULS U,X,PC ; Restore registers and return * * RESTORE DISK DRIVER (SEEK TRACK 00) * RESTR1 PSHS A CLRA ; Track 0 LDAB #$01 ; Sector 1 LBSR SEEKTS PULS A,PC * * CHECK FOR BUSY * Doubles as VERIFY * BUSY CLRB Never busy RTS * * DRIVE SELECT DISK DRIVER * DRVSEL PSHS X LDA 3,X GET DRIVE # FROM FCB CMPA #3 BLS DRVS2 IF > 3, SET IT TO 0 CLRA DRVS2 BSR MXWT MOVE X TO WORKING TRK LDB TRKCNT STB 0,X SAVE TRACK STA WRKDR SAVE DESIRED DRV AS WORKING DRV BSR MXWT MOVE X TO WORKING TRK LDA 0,X GET WORKING TRK ON DESIRED DRV STA TRKCNT UPDATE 1771 TRACK REG CLRB ; SET Z, CLEAR C PULS X,PC * * MOVE INDEX REG TO POINT TO * WORKING TRACK STORAGE * MXWT LDX #WRKTR POINT TO START OF STG LDB WRKDR GET WORKING DRIVE ABX MXWT2 RTS * * CHECK DRIVE READY DISK DRIVER * CHKDRV LDA 3,X CLRB ; CLEAR C, SET Z RTS END 1.1 System09/src/flex9/f9-equ.txt http://www.opencores.org/cvsweb.shtml/System09/src/flex9/f9-equ.txt?rev=1.1&content-type=text/x-cvsweb-markup Index: f9-equ.txt =================================================================== Z0000 EQU $0000 Z0005 EQU $0005 Z0044 EQU $0044 Z00A0 EQU $00A0 ZC07F EQU $C07F LINBUF EQU $C080 ZC0FF EQU $C0FF END 1.1 System09/src/flex9/f9-fms.txt http://www.opencores.org/cvsweb.shtml/System09/src/flex9/f9-fms.txt?rev=1.1&content-type=text/x-cvsweb-markup Index: f9-fms.txt =================================================================== * ** FILE MANAGEMENT SYSTEM * ZD400 JMP >ZD436 FMSCLS JMP >ZD459 FMS JMP >FMS1 CPYMSG FCC / DISK OPERATING SYSTEM/ FCC / COPYRIGHT (C) 1980 BY/ FCC / TECHNICAL SYSTEMS CONSULTANTS/ ORG CPYMSG FCBPTR RMB 2 CURFCB RMB 4 ZD40F RMB 2 ZD411 RMB 1 ZD412 RMB 1 ZD413 RMB 1 ZD414 RMB 1 ZD415 RMB 2 ZD417 RMB 1 ZD418 RMB 2 ZD41A RMB 1 ZD41B RMB 2 ZD41D RMB 24 VERFLG FCB $FF * ** * ZD436 JSR >COLDDR LDX #FCBPTR LDB #$0A BSR ZD451 LDX #Z0005 STX >ZD413 STX >ZD415 CLR >ZD41A ZD44C LDX #ZD41B LDB #$1A ZD451 CLR ,X+ DECB BNE ZD451 JMP >PRSPL5 ZD459 JSR >PRSPL4 ZD45C LDX >FCBPTR BEQ ZD44C LEAX -$1C,X STX >CURFCB PSHS Y JSR >CLOSE PULS Y BCC ZD45C LDX >CURFCB CLR $02,X JSR >PRSPL5 LDB #$FF RTS * ** FMS CALL, PROCESSING * FMS1 TST >ZCCFC BEQ ZD483 JSR >PRSPL4 ZD483 PSHS Y,B STX >CURFCB CLR $01,X LDB ,X BNE DOFUNC * ** READ/WRITE CHAR/BYTE * LDB $02,X BEQ ZD4AC CMPB #$02 BEQ ZD4A7 JSR >ZD5B4 ZD499 LDX >CURFCB BCS ZD4C4 TST >ZCCFC BNE ZD4C6 CLRB PULS Y,B RTS ZD4A7 JSR >ZD6CF BRA ZD499 ZD4AC LDB #$12 BRA ZD4C4 DOFUNC CMPB #$16 BLS DOFUN1 LDB #$01 BRA ZD4C4 DOFUN1 DECB ASLB LDX #FMSTBL JSR [B,X] LDX >CURFCB BCC ZD4C6 ZD4C4 STB $01,X ZD4C6 JSR >PRSPL5 TST $01,X PULS Y,B RTS * ** FMS COMMAND VECTOR TABLE * FMSTBL FDB OPENRD FC 1 FDB OPENWR FC 2 FDB OPENUD FC 3 FDB CLOSE FC 4 FDB REWIND FC 5 FDB OPNDIR FC 6 FDB GETREC FC 7 FDB PUTREC FC 8 FDB RDSECT FC 9 FDB WRSECT FC 10 FDB RESV1 FC 11 FDB DELETE FC 12 FDB RENAME FC 13 FDB RESV2 FC 14 FDB NXTSEC FC 15 FDB OPNREC FC 16 FDB GETBYT FC 17 FDB PUTBYT FC 18 FDB RESV3 FC 19 FDB NXTDRV FC 20 FDB POSREC FC 21 FDB BAKREC FC 22 * ** * ZD4FA BSR ZD51C BNE ZD503 LDB #$02 ORCC #$01 RTS ZD503 STD ,X LDX ,X CLR ,X CLR $01,X RTS ZD50C BSR ZD51C BEQ ZD515 LDB #$0D ORCC #$01 RTS ZD515 LDD [,X] STD ,X ANDCC #$FE RTS ZD51C LDD >CURFCB ADDD #$001C LDX #FCBPTR ZD525 LDY ,X BNE ZD52D ANDCC #$FB RTS ZD52D CMPD ,X BNE ZD533 RTS ZD533 LDX ,X BRA ZD525 ZD537 LDX >CURFCB CLRA CLRB BSR ZD540 LDB #$2F ZD540 STA $11,X LEAX $01,X DECB BNE ZD540 RTS ZD549 LDX >CURFCB LDB #$0B ZD54E LDA $04,X STA $24,X LEAX $01,X DECB BNE ZD54E RTS ZD559 LDX >CURFCB LDB #$0B ZD55E LDA $04,X PSHS A LDA $24,X CMPA ,S+ BNE ZD56E LEAX $01,X DECB BNE ZD55E ZD56E RTS * ** GET RANDOM BYTE FROM SECTOR * GETBYT LDX >CURFCB LDB $02,X LSRB BCC ZD5F0 LDB $23,X JMP >ZD600 ZD57D LDX >CURFCB LDB $22,X INC $22,X ABX STA $40,X INCB BNE ZD5AC ORCC #$01 RTS * ** PUT RANDOM BYTE IN SECTOR * PUTBYT LDX >CURFCB LDB $02,X ANDB #$03 CMPB #$03 BNE ZD5F0 ORB #$80 STB $02,X LDB $0F,X BITB #$80 BNE ZD5AF LDB $23,X ABX STA $40,X ZD5AC ANDCC #$FE RTS ZD5AF LDB #$0B ORCC #$01 RTS ZD5B4 LDA $3B,X BMI ZD5F5 BEQ ZD5C2 DEC $3B,X LDA #$20 BRA ZD5DF ZD5C2 BSR ZD5F5 BCS ZD5E1 CMPA #$18 BHI ZD5DF BEQ ZD5C2 CMPA #$09 BNE ZD5DC BSR ZD5F5 BCS ZD5E1 LDX >CURFCB STA $3B,X BRA ZD5B4 ZD5DC TSTA BEQ ZD5C2 ZD5DF ANDCC #$FE ZD5E1 RTS * ** REWIND FILE * REWIND JSR >ZDAB1 BCS ZD5F0 BITA #$01 BEQ ZD5F0 STA ,X JMP >ZD9A0 ZD5F0 LDB #$12 ORCC #$01 RTS ZD5F5 LDX >CURFCB LDB $22,X BEQ ZD607 INC $22,X ZD600 ABX LDA $40,X ANDCC #$FE RTS ZD607 BSR ZD60C BCC ZD5F5 RTS ZD60C LDX >CURFCB LDD $40,X INC $21,X BNE ZD61A INC $20,X ZD61A CMPD #$0000 BEQ ZD63C ZD620 STD $1E,X PSHS A LDA #$04 STA $22,X PULS A BSR RDSECT BCC ZD640 BITB #$80 BEQ ZD638 LDB #$10 BRA ZD63E ZD638 LDB #$09 BRA ZD63E ZD63C LDB #$08 ZD63E ORCC #$01 ZD640 RTS * ** READ SINGLE SECTOR * RDSECT BSR ZD668 LDX >CURFCB JSR >DRIVE BCS ZD65D ZD64B BSR ZD65E JSR >READ BNE ZD655 ANDCC #$FE RTS ZD655 PSHS B BSR ZD670 PULS B BCC ZD64B ZD65D RTS ZD65E LDX >CURFCB LDD $1E,X LEAX $40,X RTS ZD668 CLRA STA >ZD411 STA >ZD412 RTS ZD670 BITB #$10 BNE ZD685 BITB #$80 BNE ZD69C LDB >ZD411 INCB CMPB #$07 BEQ ZD685 STB >ZD411 BRA RESV2 ZD685 CLR >ZD411 LDB >ZD412 INCB CMPB #$04 BEQ ZD69C STB >ZD412 LDX >CURFCB JSR >RESTOR * ** RESERVED * RESV2 ANDCC #$FE RTS ZD69C ORCC #$01 RTS * ** WRITE SINGLE SECTOR * WRSECT BSR ZD668 LDX >CURFCB JSR >DRIVE BCS ZD6C9 ZD6A9 LDX >CURFCB BSR ZD65E JSR >WRITE BNE ZD6BD LDA >VERFLG BEQ ZD6EF JSR >VERIFY BEQ ZD6EF ZD6BD BITB #$40 BNE ZD6CC PSHS B BSR ZD670 PULS B BCC ZD6A9 ZD6C9 RTS LDB #$20 ZD6CC ORCC #$01 RTS ZD6CF LDX >CURFCB LDB $3B,X BMI ZD714 CMPA #$20 BNE ZD6EA INCB STB $3B,X CMPB #$7F BNE ZD6EF BRA ZD6F2 ZD6E5 BSR ZD6F2 BCC ZD6CF RTS ZD6EA TSTB BEQ ZD714 BRA ZD6E5 ZD6EF ANDCC #$FE RTS ZD6F2 PSHS A CMPB #$01 BNE ZD6FC LDA #$20 BRA ZD70C ZD6FC LDA #$09 BSR ZD714 PULS A BCS ZD713 PSHS A LDX >CURFCB LDA $3B,X ZD70C CLR $3B,X BSR ZD714 PULS A ZD713 RTS ZD714 LDX >CURFCB LDB $02,X CMPB #$02 LBNE ZD5F0 LDB $22,X CMPB #$04 BNE ZD72E PSHS A BSR ZD74B PULS A BCS ZD73D ZD72E JSR >ZD57D BCC ZD73D LDB #$04 LDX >CURFCB STB $22,X ANDCC #$FE ZD73D RTS ZD73E LDX >CURFCB CLRA CLRB STD $20,X STD $42,X BRA ZD772 ZD74B LDB $12,X BNE ZD772 LDB $17,X BEQ ZD799 CLR $17,X BSR ZD799 BCS ZD786 BSR ZD73E BCS ZD786 BSR ZD73E BCS ZD786 LDX >CURFCB LDB #$02 STB $17,X LDD $11,X JMP >ZDC82 ZD772 BSR ZD782 LDX >CURFCB STD $40,X JSR >WRSECT BCC ZD799 JMP >ZDBC1 ZD782 BSR ZD787 LDD ,X ZD786 RTS ZD787 LDX >CURFCB LDB $03,X LDA #$06 MUL LDX #ZD41D ABX STX >ZD41B TST ,X RTS ZD799 BSR ZD782 BNE ZD7A2 LDB #$07 ZD79F ORCC #$01 RTS ZD7A2 LDX >CURFCB STD $13,X TST $12,X BNE ZD7B0 STD $11,X ZD7B0 INC $16,X BNE ZD7B8 INC $15,X ZD7B8 TST $17,X BEQ ZD7C8 JSR >ZDC43 BCS ZD79F LDX >CURFCB LDD $13,X ZD7C8 JSR >ZD620 BCS ZD79F LDX >CURFCB LDD $40,X PSHS B,A BSR ZD787 PULS B,A STD ,X BNE ZD7E7 CLR $02,X CLR $03,X CLR $04,X CLR $05,X BRA ZD7EF ZD7E7 LDY $04,X LEAY -$01,Y STY $04,X ZD7EF CLRA LDX >CURFCB INC $21,X BNE ZD7FB INC $20,X ZD7FB CLRB ZD7FC STA $40,X LEAX $01,X DECB BNE ZD7FC LDX >CURFCB LDD $20,X STD $42,X ANDCC #$FE RTS * ** OPEN SYSTEM INFO. RECORD * OPNREC CLRB PSHS B LDB #$03 BRA ZD825 LDX >ZD415 STX >ZD413 OPNDIR LDB >ZD413 PSHS B LDB >ZD414 ZD825 LDX >CURFCB STB $41,X PULS B STB $40,X CLR >ZD418 CLRB STB $22,X RTS * ** GET INFO RECORD * GETREC LDX >CURFCB LDB $22,X BNE ZD85D JSR >ZD60C BCS ZD875 LDX >CURFCB TST >ZD418 BNE ZD852 LDD <Z0044 STD >ZD418 ZD852 LDA #$10 STA $22,X LDD $1E,X STD $2F,X ZD85D LDA $22,X STA $31,X LDB #$18 ZD865 PSHS X,B JSR >ZD5F5 PULS X,B STA $04,X LEAX $01,X DECB BNE ZD865 ANDCC #$FE ZD875 RTS * ** PUT INFORMATION RECORD * PUTREC LDX >CURFCB LDA $31,X STA $22,X LDB #$18 ZD881 PSHS X,B LDA $04,X JSR >ZD714 PULS X,B LEAX $01,X DECB BNE ZD881 JMP >WRSECT ZD892 LDX >CURFCB LDA $03,X STA $23,X LDA >ZD417 TST >ZD41A BNE ZD8D3 STA $03,X LDX >ZD415 STX >ZD413 ZD8AA CMPX #Z0005 BEQ ZD8BB BSR ZD8D3 BLS ZD8EA LDX >ZD418 STX >ZD413 BRA ZD8AA ZD8BB LDX >CURFCB LDA $23,X STA $03,X BPL ZD8D3 ZD8C5 JSR >NXTDRV BCS ZD900 BSR ZD8D3 BLS ZD8EA JSR >ZDDAD BRA ZD8C5 ZD8D3 LDX >CURFCB CLR >ZD41A JSR >ZD549 JSR >OPNDIR ZD8DF JSR >GETREC BCC ZD8EB CMPB #$08 BEQ ZD900 ORCC #$01 ZD8EA RTS ZD8EB LDX >CURFCB LDA $04,X BEQ ZD8FE BPL ZD8F6 BSR ZD905 ZD8F6 JSR >ZD559 BNE ZD8DF ANDCC #$FE RTS ZD8FE BSR ZD905 ZD900 ANDCC #$FB ANDCC #$FE RTS ZD905 LDA $33,X BNE ZD916 LDD $2F,X STD $32,X LDA $31,X STA $34,X ZD916 RTS ZD917 JSR >ZD787 BNE ZD933 BSR ZD936 BCS ZD935 LDB #$06 LDY >CURFCB LDX >ZD41B ZD929 LDA $5D,Y LEAY $01,Y STA ,X+ DECB BNE ZD929 ZD933 ANDCC #$FE ZD935 RTS ZD936 JSR >OPNREC JSR >ZD60C BCS ZD946 LDX >CURFCB LDB #$10 STB $22,X ZD946 RTS ZD947 JSR >ZD787 BSR ZD936 BCS ZD946 LDB #$06 LDY >CURFCB LDX >ZD41B ZD957 LDA ,X+ STA $5D,Y LEAY $01,Y DECB BNE ZD957 JSR >WRSECT BCC ZD946 JMP >ZDBC1 * ** * RESV1 LDX >CURFCB LDA #$02 STA $02,X LDD $2F,X STD $1E,X JSR >RDSECT BCS ZD983 JSR >PUTREC BCC ZD985 JMP >ZDBC1 ZD983 LDB #$0A ZD985 RTS * ** OPEN FOR READ * OPENRD JSR >ZD4FA BCS ZD9C8 JSR >ZD892 BCS ZD9C8 BNE ZD9CD LDX >CURFCB TST >ZD41A BEQ ZD9A0 LDA $0F,X BITA #$20 BNE ZD9C9 ZD9A0 JSR >ZDCC0 BCS ZD9CF LDD $11,X STD $40,X JSR >ZDA76 LDB $17,X BEQ ZD9C6 ZD9B3 PSHS B JSR >ZD60C PULS B BCS ZD9C8 DECB BNE ZD9B3 LDX >CURFCB CLRB STB $22,X ZD9C6 ANDCC #$FE ZD9C8 RTS ZD9C9 LDB #$11 BRA ZD9CF ZD9CD LDB #$04 ZD9CF PSHS B JSR >ZD50C PULS B ORCC #$01 RTS OPENWR LDX >CURFCB TST $03,X BPL ZD9E8 JSR >NXTDRV BCC ZD9E8 LDB #$10 RTS ZD9E8 JSR >ZD4FA BCS ZD9CF JSR >ZD537 JSR >ZD917 BCS ZD9CF JSR >ZD892 BCS ZD9CF BNE ZDA00 LDB #$03 BRA ZD9CF ZDA00 JSR >ZDCC0 BCS ZD9CF LDX >CURFCB LDB #$0A ZDA0A CLR $0F,X LEAX $01,X DECB BNE ZDA0A LDX >CURFCB LDD $32,X BEQ ZDA40 STD $2F,X LDA $34,X STA $31,X LDD >DATERG STD $19,X LDA >YEAR STA $1B,X JSR >ZDDAD JSR >RESV1 BCS ZD9CF BSR ZDA76 LDA #$04 STA $22,X ANDCC #$FE RTS ZDA40 LDX >CURFCB CLR $17,X INC $12,X LDD $2F,X JSR >ZD620 BCS ZDA5E JSR >ZD772 BCS ZDA5E JSR >WRSECT BCC ZDA61 JSR >ZDBC1 ZDA5E JMP >ZD9CF ZDA61 LDX >CURFCB LDD $1E,X STD $32,X LDA #$10 STA $34,X JSR >ZD947 BCS ZDA5E BRA ZDA00 ZDA76 LDX >CURFCB LDA ,X STA $02,X CLR ,X CLR $3B,X CLRA STA $22,X RTS * ** READ/WRITE NEXT SECTOR * NXTSEC BSR ZDAB1 BCS ZDA99 CLR ,X LSRA LBCS ZD60C LDB #$04 STB $22,X ANDCC #$FE ZDA99 RTS ZDA9A LDX >CURFCB LDA $02,X CMPA #$83 BNE ZDAAE LDA #$03 STA $02,X ZDAA7 JSR >WRSECT LBCS ZDBC1 ZDAAE ANDCC #$FE RTS ZDAB1 BSR ZDA9A BCS ZDAC2 LDX >CURFCB LDA $02,X CMPA #$03 BLS ZDAAE LDB #$12 ORCC #$01 ZDAC2 RTS CLOSE BSR ZDAB1 BCS ZDAF8 CMPA #$02 BEQ ZDAD3 ZDACB LDX >CURFCB CLR $02,X JMP >ZD50C ZDAD3 LDA $12,X BNE ZDADD JSR >ZDBA7 BRA ZDAF6 ZDADD BSR ZDAA7 BCS ZDAF8 LDX >CURFCB TST $17,X BEQ ZDAEE JSR >ZDC98 BCS ZDAF8 ZDAEE JSR >RESV1 BCS ZDAF8 JSR >ZD947 ZDAF6 BCC ZDACB ZDAF8 RTS * ** OPEN FOR UPDATE * OPENUD JSR >OPENRD BCS ZDB26 JSR >ZD60C BCS ZDB26 LDA #$03 BRA ZDB1F * ** * RESV3 JSR >OPENRD BCS ZDB26 LDX >CURFCB LDA $0F,X BITA #$80 BNE ZDB27 LDD $13,X JSR >ZD620 BCS ZDB26 LDA #$02 ZDB1F LDX >CURFCB STA $02,X ANDCC #$FE ZDB26 RTS ZDB27 LDB #$0B ORCC #$01 RTS * ** RENAME FILE * RENAME BSR ZDB63 JSR >ZD892 BCS ZDB5D BEQ ZDB59 LDX >CURFCB LDB #$0B ZDB3A LDA $24,X STA $04,X LEAX $01,X DECB BNE ZDB3A BSR ZDB93 BCS ZDB5D LDX >CURFCB LDA $0F,X BITA #$80 BNE ZDB27 BITA #$60 BNE ZDB5E BSR ZDB63 BRA ZDBAE ZDB59 LDB #$03 ORCC #$01 ZDB5D RTS ZDB5E LDB #$0C ORCC #$01 RTS ZDB63 LDX >CURFCB LDA #$0B STA >ZD411 ZDB6B LDA $04,X LDB $35,X STA $35,X STB $04,X LEAX $01,X DEC >ZD411 BNE ZDB6B LDX >CURFCB LDA $0C,X BNE ZDB8F LDB #$03 ZDB85 LDA $3D,X STA $0C,X LEAX $01,X DECB BNE ZDB85 ZDB8F LDX >CURFCB RTS ZDB93 BSR ZDB63 ZDB95 JSR >ZD892 BCS ZDBA1 BNE ZDBA2 LDX >CURFCB ANDCC #$FE ZDBA1 RTS ZDBA2 LDB #$04 ORCC #$01 RTS ZDBA7 LDX >CURFCB LDA #$FF STA $04,X ZDBAE JSR >RESV1 LDX >CURFCB LDA #$00 STA $02,X RTS ZDBB9 STD $40,X JSR >WRSECT BCC ZDBD5 ZDBC1 BITB #$40 BNE ZDBCD BITB #$80 BEQ ZDBD3 LDB #$10 BRA ZDBD3 ZDBCD LDB #$0B BRA ZDBD3 LDB #$0A ZDBD3 ORCC #$01 ZDBD5 RTS * ** DELETE FILE * DELETE JSR >ZD917 BCS ZDC39 BSR ZDB95 BCS ZDC39 LDX >CURFCB LDA $0F,X BITA #$80 BNE ZDC3A BITA #$60 BNE ZDC3E JSR >ZD787 LDX >ZD41B LDD $02,X BNE ZDC05 LDX >CURFCB LDD $11,X BEQ ZDC31 LDX >ZD41B STD ,X BRA ZDC19 ZDC05 LDX >CURFCB JSR >ZD620 BCS ZDC39 LDX >CURFCB LDD $11,X BEQ ZDC31 BSR ZDBB9 BCS ZDC39 ZDC19 LDX >CURFCB LDD $13,X LDX >ZD41B STD $02,X LDX >CURFCB LDD $15,X LDX >ZD41B ADDD $04,X STD $04,X ZDC31 JSR >ZDBA7 BCS ZDC39 JSR >ZD947 ZDC39 RTS ZDC3A LDB #$0B BRA ZDC40 ZDC3E LDB #$0C ZDC40 ORCC