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
  • Find Resources
  • 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:53 CET 2008
    Subject: [cvs-checkins] MODIFIED: System09 ...
    Top
    Date: 00/08/03 14:16:52

    Added: System09/src/sys09bug SYS09ADS.S19 SYS09B5X.S19 SYS09S3E.S19
    SYS09S3S.S19 SYS09SWT.S19 SYS09XES.S19 opt_ads.txt
    opt_b5x.txt opt_s3e.txt opt_s3s.txt opt_swt.txt
    opt_xes.txt readme.txt sys09ads.lst sys09ads.sh
    sys09ads.txt sys09b5x.aux sys09b5x.lst sys09b5x.sh
    sys09b5x.txt sys09b5x_b4_0.vhd sys09b5x_b4_1.vhd
    sys09b5x_b4_2.vhd sys09b5x_b4_3.vhd sys09bug.txt
    sys09equ.txt sys09ide.txt sys09s3e.aux sys09s3e.lst
    sys09s3e.sh sys09s3e.txt sys09s3e_b16.vhd
    sys09s3s.aux sys09s3s.lst sys09s3s.sh sys09s3s.txt
    sys09s3s_b16.vhd sys09swt.lst sys09swt.sh
    sys09swt.txt sys09xes.aux sys09xes.lst sys09xes.sh
    sys09xes.txt sys09xes_b16_0.vhd sys09xes_b16_1.vhd
    Log:
    Updated software - XSA-3S1000 now runs FLEX on an IDE drive or CF card.


    Revision Changes Path
    1.1 System09/src/sys09bug/SYS09ADS.S19

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

    Index: SYS09ADS.S19
    ===================================================================
    S123F800F822F856FC66FC60FC75FC83FB58FAE7FAE3FF06FE47FE09FE33FCABFCC0FC9844
    S123F820FC858EFE81108EDFC0C610A680A7A05A26F98EE400BFDFD0170142C60C6FE25A86
    S123F84026FB308CDDAF6A86D0A7E41F431704468EFE911703028EFEBA1702871704078468
    S123F8607F810D27F11F8981202C09865E1704131F988B4017040C170407C1602F02C020D2
    S123F8808EFE4BE180270F30028CFE8126F58EFEBC1702C420C0AD9420BC1F343B17033F95
    S123F8A0292D1F128EFEC21702391F211703791703CFA6A41703791703C71703322811819D
    S123F8C00827E1811827DD815E2717810D260F39A7A4A1A427081703A8863F1703A5312107
    S123F8E020C2313F20BE1702761F328EDFC0301F20051702DF29063420ACE12401391F10BE
    S123F900C30010C4F034061F20C4F01F01ACE42705170361270332623934108EFEC2170137
    S123F920C2AEE4170302170356C610A68017030017034E5A26F5170346AEE1C610A6808184
    S123F940202504817E2302862E1703375A26EE20BC17028B291E8CDFC0241A34108EFFFFC3
    S123F9608D553510270FA684813F2709A7A0AFA4863FA78439170309863F160306108EDFC5
    S123F980D3C6088D185A26FB391F43AE4A301F8D262704AF4A8D0617021C16FEB9AE218CF9
    S123F9A0DFC0240AA684813F2604A6A4A78486FFA7A0A7A0A7A039108EDFD3C608A6A0AC4A
    S123F9C0A127045A26F739313D397DE0187FE0148E000030018C000026F9860FB7E0188DDD
    S123F9E037F6E018C50126F98601B7E01A8D29868CB7E0188D228EC0002009C5022705B67B
    S123FA00E01BA780F6E018C50126F0C52C2701398EC000AF4A1F343BC6045A26FD39340417
    S123FA20C6205A26FD3584BDFC9886111702547FDFD2170226815326F917021F8139273D99
    S123FA40813126F11701A83402292617019129213410E6E0EBE0EBE46AE46AE43404170111
    S123FA608E3504290C3402EBE06AE42705A78020EB5F3502C1FF27BA863F17020673DFD29A
    S123FA8086131601FE6FE217014A3430294DAC6225493001AFE4BDFC9886121701E5ECE431
    S123FAA0A3622706108300202302C620E7648EFF0317002FCB031F98170175AE621701688F
    S123FAC0EB62EB63EB84A6801701656A6426F5531F9817015BAF62ACE426C386141701A330
    S123FAE03265398D02207134108EFEB4170069359016018D1600F81600E51700918DF28DE8
    S123FB00F62902AF4A398D618DE78DEB2902AF48398D728DDC8DE02902AF46398D5E8DD1E2
    S123FB208DD52902AF44398D498DC68DC72902A743398D6C8DBB8DBC2902A742398D588DF4
    S123FB40B08DB12902A741398D5F8DA58DA629048A80A7C43917012BA680810426F7398E69
    S123FB60FEC68DF41F311600BF8EFED28DEAAE4820F48EFEE48DE1A6431600B48EFEDE8DB0
    S123FB80D7AE4420E18EFED88DCEAE4620D88EFECC8DC5AE4A20CF8EFEEA8DBCA64120D9BC
    S123FBA08EFEEF8DB3A64220D08EFEF48DAAA6C48EFEFB1600908EFEC217FF278DA18DA971
    S123FBC08DB08DB88DBF8EFEC217FF178DC08DC78DCE20D58D09294D1F12862D1700A48DAF
    S123FBE00E29421F018D08293C3410A76135908D112932484848481F898D0729283404ABD4
    S123FC00E0398D578130251D8139220380303981412512814622038037398161250781665E
    S123FC2022038057391A0239341035028D0235023402444444448D043502840F8B308139DF
    S123FC402F028B07203D3402C608A68068E42502862D8D2F8D2B5A26F135827DDFD2270639
    S123FC608D04847F201D3410BEDFD0A684850127F7A60135903402A69FDFD0850135828DD0
    S123FC800086208D3B3412BEDFD0A684850227FA3502A70135908D13BEDFD08603A7848682
    S123FCA011A7846D0186FFB7DFD2398E0000BFDFEBBFDFEF8EE800BFDFED861B8D028659BC
    S123FCC03416BEDFEDE684C47FE7847DDFF027048D5E2010812024048D152008BEDFEDA7DE
    S123FCE0841700E9BEDFEDE684CA80E7843596810810270027811B10270052810D10270037
    S123FD00B4810A264FFCDFEB5CC110102600AA1600CCFCDFEB5D273C5A16009DB6DFEB273C
    S123FD20334A160091B6DFEB4C81402727160086F6DFF0C13D271E8159102700B881542757
    S123FD405D8145273B8152272C813D2604B7DFF0397FDFF0397DDFEF2604B7DFEF397FDF35
    S123FD60F08020813F22EDF6DFEF7FDFEFC020C10F22E120448D3EF6DFECC10F277A20617A
    S123FD808D33F6DFECC10F27158EEBC0A682A78840A6890400A7890440BCDFED26EEB6DF2A
    S123FDA0EBBEDFEDC620E7890400E7804C814026F57FDFF0394FF6DFECFDDFEB86403DFB85
    S123FDC0DFEB8900C3E800FDDFED1F0139FCDFEB4C814026E44F5CC11026DE5A8DDB8EE86A
    S123FDE000A6890440A7890400A68840A7808CEBC026EE2003BEDFED8620A7890400A780CA
    S123FE008CEC0026F57FDFF0393404CC0C04FDE404C604F7E4045C26FDB7E404862AB7E4B9
    S123FE2007CCFF2EFDE406861B8D0886438D04864235043404F6E406F6E404C51027065DF1
    S123FE402BF6B7E40635847DE4073901FB3D02FB3203FB4804FB2710FAFA15FB0618FB1C65
    S123FE6019FB1142F95145F8F247F89A4CFA2750FA854DF89D52FBB653F8E658F97D44F968
    S123FE80CAF989F89CF89CF89CF89CF989FFFFFFFF0D0A0000005359533039425547203196
    S123FEA02E3420464F52204144533638303920202D20044B0D0A000000043E045748415499
    S123FEC03F04202D2004202053503D04202050433D04202055533D04202049593D042020A6
    S123FEE049583D04202044503D042020413D042020423D04202043433A2004454648494EF4
    S123FF005A56435331043910CEDFC05F53F7DFD216F90F6E9FDFC06E9FDFC46E9FDFC66EB8
    S123FF209FDFC86E9FDFCA1F43AE4AE680AF4A4F5849BEDFCC8CFFFF270F308BBCDFCE22A9
    S114FF40083410ECC4AE446EF1371FEE426E9FDFC22B
    S113FFF0FF13FF27FF17FF1BFF1FFF23FF13FF073D
    S9030000FC



    1.1 System09/src/sys09bug/SYS09B5X.S19

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

    Index: SYS09B5X.S19
    ===================================================================
    S123F800F814F861FC9DFC97FCB5FCCAFB8FFB1EFB1AFA2E8EFE6D108EDFC0C610A680A723
    S123F820A05A26F98EE000BFDFE017015BC60C6FE25A26FB308CDDAF6A86D0A7E41F4317A2
    S123F840049B8EFE7D1703478EDFD04FC60D6D8527038B04195A2AF617040C8EFE9F170392
    S123F8602E8EFEA61702B3170433847F810D27F11F8981202C09865E17044F1F988B4017FC
    S123F8800448170443C1602F02C0208EFE37E180270F30028CFE6D26F58EFEA81702F0208D
    S123F8A0C0AD9420BC1F343B17036B292D1F128EFEAE1702651F211703A517040BA6A4178F
    S123F8C003A517040317035E2811810827E1811827DD815E2717810D260F39A7A4A1A427AF S123F8E0081703E4863F1703E1312120C2313F20BE1702A21F328EDFC0301F200517030BEA S123F90029063420ACE12401391F10C30010C4F034061F20C4F01F01ACE4270517039627DF S123F9200332623934108EFEAE1701EEAEE417032E170392C610A68017032C17038A5A2683 S123F940F5170382AEE1C610A68081202504817E2302862E1703735A26EE20BC1702B72915 S123F9601E8CDFC0241A34108EFFFF8D553510270FA684813F2709A7A0AFA4863FA78439F2 S123F980170345863F160342108EDFE3C6088D185A26FB391F43AE4A301F8D262704AF4ADD S123F9A08D0617024816FEB9AE218CDFC0240AA684813F2604A6A4A78486FFA7A0A7A0A717 S123F9C0A039108EDFE3C608A6A0ACA127045A26F739313D398D4086E0B7E0468D398601AA S123F9E0B7E04186EFB7E0478D2D8601B7E0424FB7E043B7E044B7E0458620B7E0478D17B6 S123FA008EC0008D21B6E040A7808CC20026F48EC000AF4A1F343BB6E047858026F9B6E015 S123FA2047854027F239B6E047850827F9393436A66244444444108EDFD0E6A654545454F6 S123FA40E7E4E6A65358585858A662840FA762EA62E76235B63404C6205A26FD3584BDFC67 S123FA60DF86111702647FDFE2170226815326F917021F8139273D813126F11701A8340208 S123FA80292617019129213410E6E0EBE0EBE46AE46AE4340417018E3504290C3402EBE093 S123FAA06AE42705A78020EB5F3502C1FF27BA863F17021673DFE2861316020E6FE217010F S123FAC04A3430294DAC6225493001AFE4BDFCDF86121701F5ECE4A36227061083002023A9 S123FAE002C620E7648EFEEF17002FCB031F98170175AE62170168EB62EB63EB84A6801725 S123FB0001656A6426F5531F9817015BAF62ACE426C386141701B33265398D0220713410F2 S123FB208EFEA0170069359016019D1600F81600E51700918DF28DF62902AF4A398D618D11 S123FB40E78DEB2902AF48398D728DDC8DE02902AF46398D5E8DD18DD52902AF44398D49E1 S123FB608DC68DC72902A743398D6C8DBB8DBC2902A742398D588DB08DB12902A741398D7C S123FB805F8DA58DA629048A80A7C43917013BA680810426F7398EFEB28DF41F311600BF8A S123FBA08EFEBE8DEAAE4820F48EFED08DE1A6431600B48EFECA8DD7AE4420E18EFEC48D6F S123FBC0CEAE4620D88EFEB88DC5AE4A20CF8EFED68DBCA64120D98EFEDB8DB3A64220D0E0 S123FBE08EFEE08DAAA6C48EFEE71600908EFEAE17FF278DA18DA98DB08DB88DBF8EFEAEF8 S123FC0017FF178DC08DC78DCE20D58D09294D1F12862D1700B48D0E29421F018D08293CE7 S123FC203410A76135908D112932484848481F898D0729283404ABE0398D578130251D81B5 S123FC40392203803039814125128146220380373981612507816622038057391A023934D1 S123FC601035028D0235023402444444448D043502840F8B3081392F028B07204D3402C631 S123FC8008A68068E42502862D8D3F8D3B5A26F135827DDFE227068D04847F202D3410BE02 S123FCA0DFE0A684850126098EE020A684850127EEA60135903402A69FDFE085012605B642 S123FCC0E020850135828D0086208D453412BEDFE0A684850227FA3502A70135908D13BE47 S123FCE0DFE08603A7848611A7846D0186FFB7DFE2398EE030CC0000FDDFFBA702E703E76C S123FD0004FDDFFDC602E7017FDFFE861B8D02865934168EE0307DDFFE27048D74200D81CB S123FD202024048D092005A7841700C53596810810270041811B1027006C811A1027008E4A S123FD40811610270045810D10270099810C1027002C810B10270011810A2651FCDFFB5C36 S123FD60C11910260083160099FCDFFB5D1027003C5A160074B6DFFB27334A160068B6DF6C S123FD80FB4C81501027002516005BCC0000160058F6DFFEC13D271681591027006E8154DE S123FDA02731813D2604B7DFFE397FDFFE397DDFFD2604B7DFFD397FDFFE8020814F22ED73 S123FDC0F6DFFD7FDFFDC020C11822E1201BCC00008D16B6DFFBC620E7844CA702815026BF S123FDE0F77FDFFE394FF6DFFCFDDFFBA702E70339FCDFFB4C815026F04F5CC11926EA5AB8 S123FE008DE7E6045CC11925015FE704F6DFFB8620F7DFFBE702A7845CC15026F4F6DFFC27 S123FE205CC1192708F7DFFCE7035F20E45FF7DFFBE702F7DFFE3901FB7402FB6903FB7FC1 S123FE4004FB5E10FB3115FB3D18FB5319FB4842F95C45F8FD47F8A54CFA5E50FABC4DF852 S123FE60A852FBED53F8F158F98844F9D5F994F8A7F8A7F8A7F8A7F994FFFFFFFF0D0A00CC S123FE800000535953303942554720312E3420464F522042352D5833303020202D20044BD3 S123FEA00D0A000000043E04574841543F04202D2004202053503D04202050433D04202081 S123FEC055533D04202049593D04202049583D04202044503D042020413D042020423D0456 S115FEE0202043433A2004454648494E5A564353310403 S123FF008EFFF0860FA7804A26FB86F0A7848ED0A0108E55AAEE8410AF8410AC84270B30A6 S123FF2089F0008CF0A026ED20D6EF841F104344444444B7FFFD10CEDFC0108EDFD0A72DD9 S123FF406F2E86F0A72F860C6FA64A2AFB3089F0008CF0A02722EE84108E55AA10AF84102E S123FF60AC8426E9EF84108EDFD01F10444444441F89880FA7A520D586F1108EDFD0A72E26 S123FF80860CE6A626054A2AF920146FA6E72C4F1F21E6A627046FA6E7804C810C2DF38E02 S123FFA0FFF0C610A6A0A7805A26F953F7DFE216F8626E9FDFC06E9FDFC46E9FDFC66E9FFC S123FFC0DFC86E9FDFCA1F43AE4AE680AF4A4F5849BEDFCC8CFFFF270F308BBCDFCE2208A0 S113FFE03410ECC4AE446EF1371FEE426E9FDFC294 S113FFF0FFB2FFC6FFB6FFBAFFBEFFC2FFB2FF00EB S9030000FC 1.1 System09/src/sys09bug/SYS09S3E.S19 http://www.opencores.org/cvsweb.shtml/System09/src/sys09bug/SYS09S3E.S19?rev=1.1&content-type=text/x-cvsweb-markup Index: SYS09S3E.S19 =================================================================== S123F800F814F84BFC90FC8AFCA8FCBDFB82FB11FB0DFEE18EFE60108E7FC0C610A680A74A S123F820A05A26F98EE000BF7FD0170145C60C6FE25A26FB308CDDAF6A86D0A7E41F431728 S123F840048E8EFE7017033A1701DE8EFE951702BC17043C847F810D27F11F8981202C0958 S123F860865E1704581F988B4017045117044CC1602F02C0208EFE2AE180270F30028CFE9D S123F8806026F58EFE971702F920C0AD9420BC1F343B170374292D1F128EFE9D17026E1F45 S123F8A0211703AE170414A6A41703AE17040C1703672811810827E1811827DD815E2717EE S123F8C0810D260F39A7A4A1A427081703ED863F1703EA312120C2313F20BE1702AB1F3202 S123F8E08E7FC0301F200517031429063420ACE12401391F10C30010C4F034061F20C4F044 S123F9001F01ACE4270517039F270332623934108EFE9D1701F7AEE417033717039BC6106D S123F920A6801703351703935A26F517038BAEE1C610A68081202504817E2302862E170340 S123F9407C5A26EE20BC1702C0291E8C7FC0241A34108EFFFF8D5B3510270FA684813F2770 S123F96009A7A0AFA4863FA7843917034E863F16034B108E7FD3C6088D1E5A26FB391F43A7 S123F980AE4A301F8D2C2704AF4A8D0C1702518E0000BF7FED16FEB3AE218C7FC0240AA64E S123F9A084813F2604A6A4A78486FFA7A0A7A0A7A039108E7FD3C608A6A0ACA127045A26D1 S123F9C0F739313D3917015F291C1702EE1702392914BF7FEDBE7FC0BF7FEB8EF9E7BF7FFD S123F9E0C01700452020391F438636B7E071B6E0701701ECAE4AA684813F2724BE7FED27C0 S123FA001F301FBF7FED1F34860DB7E0708636B7E071B6E0708636B7E073863FB7E0713BC4 S123FA20BE7FEBBF7FC016FE228632B7E071863AB7E07386FFB7E0708600B7E0728636B74E S123FA40E071863EB7E073393404C6205A26FD3584BDFCD286111702647F7FD217022681C7 S123FA605326F917021F8139273D813126F11701A83402292617019129213410E6E0EBE0E4 S123FA80EBE46AE46AE4340417018E3504290C3402EBE06AE42705A78020EB5F3502C1FFA8 S123FAA027BA863F170216737FD2861316020E6FE217014A3430294DAC6225493001AFE41D S123FAC0BDFCD286121701F5ECE4A3622706108300202302C620E7648EFEDE17002FCB0369 S123FAE01F98170175AE62170168EB62EB63EB84A6801701656A6426F5531F9817015BAF6C S123FB0062ACE426C386141701B33265398D02207134108EFE8F170069359016019D160043 S123FB20F81600E51700918DF28DF62902AF4A398D618DE78DEB2902AF48398D728DDC8D9D S123FB40E02902AF46398D5E8DD18DD52902AF44398D498DC68DC72902A743398D6C8DBB5A S123FB608DBC2902A742398D588DB08DB12902A741398D5F8DA58DA629048A80A7C43917FC S123FB80013BA680810426F7398EFEA18DF41F311600BF8EFEAD8DEAAE4820F48EFEBF8DBF S123FBA0E1A6431600B48EFEB98DD7AE4420E18EFEB38DCEAE4620D88EFEA78DC5AE4A20EE S123FBC0CF8EFEC58DBCA64120D98EFECA8DB3A64220D08EFECF8DAAA6C48EFED616009066 S123FBE08EFE9D17FF278DA18DA98DB08DB88DBF8EFE9D17FF178DC08DC78DCE20D58D098C S123FC00294D1F12862D1700B48D0E29421F018D08293C3410A76135908D112932484848B9 S123FC20481F898D0729283404ABE0398D578130251D81392203803039814125128146226E S123FC400380373981612507816622038057391A0239341035028D023502340244444444A7 S123FC608D043502840F8B3081392F028B07204D3402C608A68068E42502862D8D3F8D3B9C S123FC805A26F135827D7FD227068D04847F202D3410BE7FD0A684850126098EE020A68474 S123FCA0850127EEA60135903402A69F7FD085012605B6E020850135828D0086208D453492 S123FCC012BE7FD0A684850227FA3502A70135908D13BE7FD08603A7848611A7846D018674 S123FCE0FFB77FD2398EE030CC0000FD7FEFA702E703E704FD7FF1C602E7017F7FF2861BBF S123FD008D02865934168EE0307D7FF227048D74200D812024048D092005A7841700C53582 S123FD2096810810270041811B1027006C811A1027008E811610270045810D102700998197 S123FD400C1027002C810B10270011810A2651FC7FEF5CC11910260083160099FC7FEF5D8B S123FD601027003C5A160074B67FEF27334A160068B67FEF4C81501027002516005BCC0008 S123FD8000160058F67FF2C13D271681591027006E81542731813D2604B77FF2397F7FF26A S123FDA0397D7FF12604B77FF1397F7FF28020814F22EDF67FF17F7FF1C020C11822E120EF S123FDC01BCC00008D16B67FEFC620E7844CA702815026F77F7FF2394FF67FF0FD7FEFA74E S123FDE002E70339FC7FEF4C815026F04F5CC11926EA5A8DE7E6045CC11925015FE704F654 S123FE007FEF8620F77FEFE702A7845CC15026F4F67FF05CC1192708F77FF0E7035F20E44D S123FE205FF77FEFE702F77FF23901FB6702FB5C03FB7204FB5110FB2415FB3018FB461913 S123FE40FB3B42F94645F8E747F88F4CFA5150FAAF4DF89252FBE053F8DB58F97254F9C566 S123FE60F97EF891F891F891F891F97EFFFFFFFF0D0A000000535953303942554720312E94 S123FE803420464F522053334520202D20044B0D0A000000043E04574841543F04202D201B S123FEA004202053503D04202050433D04202055533D04202049593D04202049583D042074 S123FEC02044503D042020413D042020423D04202043433A2004454648494E5A564353319F S123FEE0043910CE7FC05F53F77FD216F9266E9F7FC06E9F7FC46E9F7FC66E9F7FC86E9F26 S123FF007FCA1F43AE4AE680AF4A4F5849BE7FCC8CFFFF270F308BBC7FCE22083410ECC440 S10FFF20AE446EF1371FEE426E9F7FC2AC S113FFF0FEEEFF02FEF2FEF6FEFAFEFEFEEEFEE26C S9030000FC 1.1 System09/src/sys09bug/SYS09S3S.S19 http://www.opencores.org/cvsweb.shtml/System09/src/sys09bug/SYS09S3S.S19?rev=1.1&content-type=text/x-cvsweb-markup Index: SYS09S3S.S19 =================================================================== S123F800F814F861FCA1FC9BFCB9FCCEFB8FFB1EFB1AFA2E8EFE74108EDFC0C610A680A70C S123F820A05A26F98EE000BFDFE017015BC60C6FE25A26FB308CDDAF6A86D0A7E41F4317A2 S123F840049F8EFE841703478EDFD04FC60D6D8527038B04195A2AF617040C8EFEA817037E S123F8602E8EFEAF1702B3170437847F810D27F11F8981202C09865E1704531F988B4017EB S123F880044C170447C1602F02C0208EFE3BE180270F30028CFE7426F58EFEB11702F02071 S123F8A0C0AD9420BC1F343B17036B292D1F128EFEB71702651F211703A517040FA6A41782 S123F8C003A517040717035E2811810827E1811827DD815E2717810D260F39A7A4A1A427AB S123F8E0081703E8863F1703E5312120C2313F20BE1702A21F328EDFC0301F200517030BE2 S123F90029063420ACE12401391F10C30010C4F034061F20C4F01F01ACE4270517039A27DB S123F9200332623934108EFEB71701EEAEE417032E170396C610A68017032C17038E5A2672 S123F940F5170386AEE1C610A68081202504817E2302862E1703775A26EE20BC1702B7290D S123F9601E8CDFC0241A34108EFFFF8D553510270FA684813F2709A7A0AFA4863FA78439F2 S123F980170349863F160346108EDFE3C6088D185A26FB391F43AE4A301F8D262704AF4AD5 S123F9A08D0617024816FEB9AE218CDFC0240AA684813F2604A6A4A78486FFA7A0A7A0A717 S123F9C0A039108EDFE3C608A6A0ACA127045A26F739313D398D4086E0B7E0468D398601AA S123F9E0B7E04186EFB7E0478D2D8601B7E0424FB7E043B7E044B7E0458620B7E0478D17B6 S123FA008EC0008D21B6E040A7808CC20026F48EC000AF4A1F343BB6E047858026F9B6E015 S123FA2047854027F239B6E047850827F9393436A66244444444108EDFD0E6A654545454F6 S123FA40E7E4E6A65358585858A662840FA762EA62E76235B63404C6205A26FD3584BDFC67 S123FA60E386111702687FDFE217022A815326F91702238139273D813126F11701A83402F8 S123FA80292617019129213410E6E0EBE0EBE46AE46AE4340417018E3504290C3402EBE093 S123FAA06AE42705A78020EB5F3502C1FF27BA863F17021A73DFE286131602126FE2170107 S123FAC04A3430294DAC6225493001AFE4BDFCE386121701F9ECE4A36227061083002023A1 S123FAE002C620E7648EFEF817002FCB031F98170175AE62170168EB62EB63EB84A680171C S123FB0001656A6426F5531F9817015BAF62ACE426C386141701B73265398D0220713410EE S123FB208EFEA917006935901601A11600F81600E51700918DF28DF62902AF4A398D618D04 S123FB40E78DEB2902AF48398D728DDC8DE02902AF46398D5E8DD18DD52902AF44398D49E1 S123FB608DC68DC72902A743398D6C8DBB8DBC2902A742398D588DB08DB12902A741398D7C S123FB805F8DA58DA629048A80A7C43917013FA680810426F7398EFEBB8DF41F311600BF7D S123FBA08EFEC78DEAAE4820F48EFED98DE1A6431600B48EFED38DD7AE4420E18EFECD8D4B S123FBC0CEAE4620D88EFEC18DC5AE4A20CF8EFEDF8DBCA64120D98EFEE48DB3A64220D0C5 S123FBE08EFEE98DAAA6C48EFEF01600908EFEB717FF278DA18DA98DB08DB88DBF8EFEB7D4 S123FC0017FF178DC08DC78DCE20D58D09294D1F12862D1700B88D0E29421F018D08293CE3 S123FC203410A76135908D112932484848481F898D0729283404ABE0398D5B8130251D81B1 S123FC40392203803039814125128146220380373981612507816622038057391A023934D1 S123FC601035028D0235023402444444448D043502840F8B3081392F028B0720513402C62D S123FC8008A68068E42502862D8D438D3F5A26F135826E9FF0007DDFE227068D04847F202C S123FCA02D3410BEDFE0A684850126098EE020A684850127EEA60135903402A69FDFE085F5 S123FCC0012605B6E020850135828D0086208D453412BEDFE0A684850227FA3502A7013553 S123FCE0908D13BEDFE08603A7848611A7846D0186FFB7DFE2398EE030CC0000FDDFFBA751 S123FD0002E703E704FDDFFDC602E7017FDFFE861B8D02865934168EE0307DDFFE27048D1A S123FD2074200D812024048D092005A7841700C53596810810270041811B1027006C811AED S123FD401027008E811610270045810D10270099810C1027002C810B10270011810A2651A3 S123FD60FCDFFB5CC11910260083160099FCDFFB5D1027003C5A160074B6DFFB27334A1637 S123FD800068B6DFFB4C81501027002516005BCC0000160058F6DFFEC13D27168159102724 S123FDA0006E81542731813D2604B7DFFE397FDFFE397DDFFD2604B7DFFD397FDFFE80200F S123FDC0814F22EDF6DFFD7FDFFDC020C11822E1201BCC00008D16B6DFFBC620E7844CA7D9 S123FDE002815026F77FDFFE394FF6DFFCFDDFFBA702E70339FCDFFB4C815026F04F5CC142 S123FE001926EA5A8DE7E6045CC11925015FE704F6DFFB8620F7DFFBE702A7845CC1502669 S123FE20F4F6DFFC5CC1192708F7DFFCE7035F20E45FF7DFFBE702F7DFFE3901FB7402FBE2 S123FE406903FB7F04FB5E10FB3115FB3D18FB5319FB4842F95C45F8FD47F8A54CFA5E5067 S123FE60FABC4DF8A852FBED53F8F158F98844F9D555FC92F994F8A7F8A7F8A7F8A7F99401 S123FE80FFFFFFFF0D0A000000535953303942554720312E3420464F52205333535441526B S123FEA054455220202D20044B0D0A000000043E04574841543F04202D2004202053503D12 S123FEC004202050433D04202055533D04202049593D04202049583D04202044503D042063 S11EFEE020413D042020423D04202043433A2004454648494E5A564353310495 S123FF008EFFF0860FA7804A26FB86F0A7848ED0A0108E55AAEE8410AF8410AC84270B30A6 S123FF2089F0008CF0A026ED20D6EF841F104344444444B7FFFD10CEDFC0108EDFD0A72DD9 S123FF406F2E86F0A72F860C6FA64A2AFB3089F0008CF0A02722EE84108E55AA10AF84102E S123FF60AC8426E9EF84108EDFD01F10444444441F89880FA7A520D586F1108EDFD0A72E26 S123FF80860CE6A626054A2AF920146FA6E72C4F1F21E6A627046FA6E7804C810C2DF38E02 S123FFA0FFF0C610A6A0A7805A26F953F7DFE216F8626E9FDFC06E9FDFC46E9FDFC66E9FFC S123FFC0DFC86E9FDFCA1F43AE4AE680AF4A4F5849BEDFCC8CFFFF270F308BBCDFCE2208A0 S113FFE03410ECC4AE446EF1371FEE426E9FDFC294 S113FFF0FFB2FFC6FFB6FFBAFFBEFFC2FFB2FF00EB S9030000FC 1.1 System09/src/sys09bug/SYS09SWT.S19 http://www.opencores.org/cvsweb.shtml/System09/src/sys09bug/SYS09SWT.S19?rev=1.1&content-type=text/x-cvsweb-markup Index: SYS09SWT.S19 =================================================================== S123F800F814F861FD25FD1FFD34FD42FC17FBA6FBA2FAB68EFD9F108EDFC0C610A680A7C6 S123F820A05A26F98EE000BFDFE017015BC60C6FE25A26FB308CDDAF6A86D0A7E41F4317A2 S123F84005118EFDAF1703CF8EDFD04FC60D6D8527038B04195A2AF61704948EFDCF1703AB S123F860B68EFDD617033B1704BB847F810D27F11F8981202C09865E1704C71F988B4017BC S123F88004C01704BBC1602F02C0208EFD66E180270F30028CFD9F26F58EFDD81703782086 S123F8A0C0AD9420BC1F343B1703F3292D1F128EFDDE1702ED1F2117042D170483A6A4174F S123F8C0042D17047B1703E62811810827E1811827DD815E2717810D260F39A7A4A1A42726 S123F8E00817045C863F170459312120C2313F20BE17032A1F328EDFC0301F2005170393E7 S123F90029063420ACE12401391F10C30010C4F034061F20C4F01F01ACE42705170415275F S123F9200332623934108EFDDE170276AEE41703B617040AC610A6801703B41704025A26C9 S123F940F51703FAAEE1C610A68081202504817E2302862E1703EB5A26EE20BC17033F299C S123F9601E8CDFC0241A34108EFFFF8D553510270FA684813F2709A7A0AFA4863FA78439F2 S123F9801703BD863F1603BA108EDFE3C6088D185A26FB391F43AE4A301F8D262704AF4AED S123F9A08D061702D016FEB9AE218CDFC0240AA684813F2604A6A4A78486FFA7A0A7A0A78F S123F9C0A039108EDFE3C608A6A0ACA127045A26F739313D397DE0187FE0148E0000300160 S123F9E08C000026F9860FB7E0188D37F6E018C50126F98601B7E01A8D29868CB7E0188D41 S123FA00228EC0002009C5022705B6E01BA780F6E018C50126F0C52C2701398EC000AF4A1B S123FA201F343BC6045A26FD3986DEB7F02486FFB7F014B7F010B7F015B7F0167DF0108612 S123FA40D8B7F020170096B6F0202BFB8609B7F020170089B6F020850126F9851026CA8EF6 S123FA60C0008D528A10B7F0401F104353FDF0008EFEFFBFF00286FFB7F01086FEB7F014F9 S123FA808601B7F022868CB7F0208D515F34045F7DF0102A0A5A26F835045A26F0208A35B4 S123FAA004B6F020851C270139C6DEF7F0248EC000AF4A1F343B3436A66244444444108ED2 S123FAC0DFD0E6A654545454E7E4E6A65358585858A662840FA762EA62E76235B63404C66B S123FAE0205A26FD3584BDFD5386111702547FDFE2170226815326F917021F8139273D8152 S123FB003126F11701A83402292617019129213410E6E0EBE0EBE46AE46AE4340417018E43 S123FB203504290C3402EBE06AE42705A78020EB5F3502C1FF27BA863F17020673DFE286D1 S123FB40131601FE6FE217014A3430294DAC6225493001AFE4BDFD5386121701E5ECE4A397 S123FB60622706108300202302C620E7648EFE1F17002FCB031F98170175AE62170168EB6B S123FB8062EB63EB84A6801701656A6426F5531F9817015BAF62ACE426C386141701A33228 S123FBA065398D02207134108EFDD0170069359016018D1600F81600E51700918DF28DF648 S123FBC02902AF4A398D618DE78DEB2902AF48398D728DDC8DE02902AF46398D5E8DD18D8B S123FBE0D52902AF44398D498DC68DC72902A743398D6C8DBB8DBC2902A742398D588DB011 S123FC008DB12902A741398D5F8DA58DA629048A80A7C43917012BA680810426F7398EFD5B S123FC20E28DF41F311600BF8EFDEE8DEAAE4820F48EFE008DE1A6431600B48EFDFA8DD7A8 S123FC40AE4420E18EFDF48DCEAE4620D88EFDE88DC5AE4A20CF8EFE068DBCA64120D98EF2 S123FC60FE0B8DB3A64220D08EFE108DAAA6C48EFE171600908EFDDE17FF278DA18DA98D42 S123FC80B08DB88DBF8EFDDE17FF178DC08DC78DCE20D58D09294D1F12862D1700A48D0E52 S123FCA029421F018D08293C3410A76135908D112932484848481F898D0729283404ABE041 S123FCC0398D578130251D813922038030398141251281462203803739816125078166225C S123FCE0038057391A0239341035028D0235023402444444448D043502840F8B3081392F12 S123FD00028B07203D3402C608A68068E42502862D8D2F8D2B5A26F135827DDFE227068D0A S123FD2004847F201D3410BEDFE0A684850127F7A60135903402A69FDFE0850135828D007C S123FD4086203412BEDFE0A684850227FA3502A7013590BEDFE08603A7848611A7846D015F S123FD6086FFB7DFE23901FBFC02FBF103FC0704FBE610FBB915FBC518FBDB19FBD042F9D2 S123FD805C45F8FD47F8A54CFAE650FB444DF8A852FC7553F8F158F98844F9D555FA29F9E2 S123FDA094F8A7F8A7F8A7F8A7F994FFFFFFFF0D0A000000535953303942554720312E3496 S123FDC020464F5220535754504320202D20044B0D0A000000043E04574841543F04202D6A S123FDE02004202053503D04202050433D04202055533D04202049593D04202049583D0435 S123FE00202044503D042020413D042020423D04202043433A2004454648494E5A56435370 S105FE203104A7 S123FF008EFFF0860FA7804A26FB86F0A7848ED0A0108E55AAEE8410AF8410AC84270B30A6 S123FF2089F0008CF0A026ED20D6EF841F104344444444B7FFFD10CEDFC0108EDFD0A72DD9 S123FF406F2E86F0A72F860C6FA64A2AFB3089F0008CF0A02722EE84108E55AA10AF84102E S123FF60AC8426E9EF84108EDFD01F10444444441F89880FA7A520D586F1108EDFD0A72E26 S123FF80860CE6A626054A2AF920146FA6E72C4F1F21E6A627046FA6E7804C810C2DF38E02 S123FFA0FFF0C610A6A0A7805A26F953F7DFE216F8626E9FDFC06E9FDFC46E9FDFC66E9FFC S123FFC0DFC86E9FDFCA1F43AE4AE680AF4A4F5849BEDFCC8CFFFF270F308BBCDFCE2208A0 S113FFE03410ECC4AE446EF1371FEE426E9FDFC294 S113FFF0FFB2FFC6FFB6FFBAFFBEFFC2FFB2FF00EB S9030000FC 1.1 System09/src/sys09bug/SYS09XES.S19 http://www.opencores.org/cvsweb.shtml/System09/src/sys09bug/SYS09XES.S19?rev=1.1&content-type=text/x-cvsweb-markup Index: SYS09XES.S19 =================================================================== S123F000F002AD9FF806847F1F898620AD9FF80AC1602F02C0208EF02CE180270D30028CE2 S123F020F03526F58EF0351602296E9442F03E46F0EA58F2BC57484154203F0A0D048ECDF7 S123F04000AF4A1F343B34308E03E8108E04E2B6E00047250A313F26F6301F26EE35B0B62E S123F060E00135B0343034028E03E8108E04E2B6E0004747250C313F26F5301F26ED3502B6 S123F08035B03502B7E00135B00A0D466F726D6174696E6720494445206469736B2E2E2ECE S123F0A0200A0D4472697665204E756D626572203F040A0D04494445206472697665206E7A S123F0C06F7420616C6C6F63617465642120040A0D466F726D617420436F6D706C65746562 S123F0E0044944454449534B2004BDF4BD8EF089BDF25317FF5024FB17FF69813010250086 S123F100EF8133102200E980301F89F701008E00FDBDF53A8E02004F5FA7805A26FB7F0106 S123F120018601B701028E0200B60101A784B601024C810026046C848601A701B60101F699 S123F1400102BDF5157C0102B60102810026D78601B701027C0101B60101810026C88E02B5 S123F1600086FFC6FFBDF4F18E02006F846F0186FFC6FFBDF5158E02004FC6FFBDF4F18EC7 S123F18002006F846F014FC6FFBDF5158E02004FC603BDF4F18E02006F846F013420108EFC S123F1A0F0E1C610A6A0A7855CC11826F735204FF60100ED881BCC0101ED881D86FFC6FF0B S123F1C0ED881FED8826CCFE01ED88218601A788238607A788248607A788254FC603BDF537 S123F1E0158EF7004FC601B70101F701021703258EF0CF7EF253B6E0008501398603B7E0E4 S123F200008611B7E000398610B701087F01097F010AB6E000850126088578270A8DDD2018 S123F220E6B6E0011CFD397A010A26E67A010926E17A010826DC4F1A02393402B6E0008565 S123F240022608857827F58DB320F13502B7E001398DE7A680810426F8390D0A586D6F64E3 S123F260656D20494445204469736B2055706C6F6164040D0A55706C6F616420436F6D7067 S123F2806C657465040D0A55706C6F6164204572726F72040D0A4472697665204E756D624F S123F2A06572203A040D0A41726520596F752053757265203F2028592F4E29048EF25A172F S123F2C0FF918EF29417FF8B17FF3C29FB17FF6A81301025012E8133102201288030B70163 S123F2E0008EF29417FF6CB601008B3017FF4B8EF2A517FF5E17FF0F29FB17FF3D845F8108 S123F3004E102700FF815926B31701B1CEF42DFF01068601B701048E02004FC601B7010152 S123F320F701021700EA102500E01701871700E0102500D68E0200B60101F601021701D5EA S123F3401701718E0200B60101F601025CB70101F701021700BA102500B01701571700B0E4 S123F360102500A68E0200B60101F601021701A51701418E0200B60101F601025CB7010101 S123F380F7010217008A10250080170127170080102500768E0200A688264CB7010BE68837 S123F3A0275CF7010CB60101F60102170167170103B60101F601025C8E0200B70101F70129 S123F3C00217004C102500421700E9170042102500388E0200B60101F601021701371700E0 S123F3E0D3B60101F601025CF1010C26CBC6014CB1010B26C38EF7004FC601B70101F70135 S123F400021701118EF2737EF2538EF28516FE433440FE010617FDEF280A861517FE1BCE64 S123F420F42D20F1ADC426EDFF010635C081012606CEF44D1CFA3981042608860617FDFABE S123F4401A0539811826031A05391CFA39B101042606CEF4631CFA39861517FDDDCEF42D16 S123F4601CFA3943B1010426EF7F01038680B70105CEF4771CFA393402BB0103B701033578 S123F480027A01052603CEF48EA7801CFA39B10103260B7C0104CEF42D1CFE1A04393404F8 S123F4A01F105AC4801F013504861517FD8CCEF42D1CFA393402860617FD7F3582CC0006CB S123F4C0FDE11ECC0002FDE11ECC00E0FDE10C1602D68D664FC60134024F5AFDE106E6E448 S123F4E0FDE108F60100FDE10AC601FDE1045F35828DE4CC0020FDE10E1702AC3420108E84 S123F50001001702B2FCE100E780313F26F435201702955F398DC0CC0030FDE10E170288DC S123F5203420108E01004F17028DE680FDE100313F26F435201702705F39A603810323014A S10DF5404FB701005F39A6035F39DD S123F700200B000000000000C00000000010CEC0FFEC8CF1FDC300108EC4008D3581022766 S123F72010811626F68D2BA78CDE8D26A78CDA20EA8D1FA78CD48D1AA78CD08D151F895D6B S123F74027D9AE8CC534148D093514A7805A26F520C9108CC400260F8EC300EC84270B8DE5 S123F76026269D108EC304A6A0396E9C9B34024F5AFDE106E6E4FDE108E68C90FDE10AC6F0 S123F78001FDE1045F35828DE4CC0020FDE10E8D173420108E01008D1EFCE100E780313F2D S122F7A026F535208D025F39FCE10EC58026F9FCE10EC54027F239FCE10EC50827F9390D S123F800F814F861FCA1FC9BFCB9FCCEFB8FFB1EFB1AFA2E8EFE74108EDFC0C610A680A70C S123F820A05A26F98EE000BFDFE017015BC60C6FE25A26FB308CDDAF6A86D0A7E41F4317A2 S123F840049F8EFE841703478EDFD04FC60D6D8527038B04195A2AF617040C8EFEA3170383 S123F8602E8EFEAA1702B3170437847F810D27F11F8981202C09865E1704531F988B4017F0 S123F880044C170447C1602F02C0208EFE3BE180270F30028CFE7426F58EFEAC1702F02076 S123F8A0C0AD9420BC1F343B17036B292D1F128EFEB21702651F211703A517040FA6A41787 S123F8C003A517040717035E2811810827E1811827DD815E2717810D260F39A7A4A1A427AB S123F8E0081703E8863F1703E5312120C2313F20BE1702A21F328EDFC0301F200517030BE2 S123F90029063420ACE12401391F10C30010C4F034061F20C4F01F01ACE4270517039A27DB S123F9200332623934108EFEB21701EEAEE417032E170396C610A68017032C17038E5A2677 S123F940F5170386AEE1C610A68081202504817E2302862E1703775A26EE20BC1702B7290D S123F9601E8CDFC0241A34108EFFFF8D553510270FA684813F2709A7A0AFA4863FA78439F2 S123F980170349863F160346108EDFE3C6088D185A26FB391F43AE4A301F8D262704AF4AD5 S123F9A08D0617024816FEB9AE218CDFC0240AA684813F2604A6A4A78486FFA7A0A7A0A717 S123F9C0A039108EDFE3C608A6A0ACA127045A26F739313D39CC0006FDE11ECC0002FDE18D S123F9E01ECC00E0FDE10C8D2ECC0001FDE1045FFDE106FDE108FDE10AC620FDE10E8D175E S123FA008EC0008D21FCE100E7808CC10026F48EC000AF4A1F343BFCE10EC58026F9FCE13A S123FA200EC54027F239FCE10EC50827F9393436A66244444444108EDFD0E6A654545454A1 S123FA40E7E4E6A65358585858A662840FA762EA62E76235B63404C6205A26FD3584BDFC67 S123FA60E386111702687FDFE217022A815326F91702238139273D813126F11701A83402F8 S123FA80292617019129213410E6E0EBE0EBE46AE46AE4340417018E3504290C3402EBE093 S123FAA06AE42705A78020EB5F3502C1FF27BA863F17021A73DFE286131602126FE2170107 S123FAC04A3430294DAC6225493001AFE4BDFCE386121701F9ECE4A36227061083002023A1 S123FAE002C620E7648EFEF317002FCB031F98170175AE62170168EB62EB63EB84A6801721 S123FB0001656A6426F5531F9817015BAF62ACE426C386141701B73265398D0220713410EE S123FB208EFEA417006935901601A11600F81600E51700918DF28DF62902AF4A398D618D09 S123FB40E78DEB2902AF48398D728DDC8DE02902AF46398D5E8DD18DD52902AF44398D49E1 S123FB608DC68DC72902A743398D6C8DBB8DBC2902A742398D588DB08DB12902A741398D7C S123FB805F8DA58DA629048A80A7C43917013FA680810426F7398EFEB68DF41F311600BF82 S123FBA08EFEC28DEAAE4820F48EFED48DE1A6431600B48EFECE8DD7AE4420E18EFEC88D5F S123FBC0CEAE4620D88EFEBC8DC5AE4A20CF8EFEDA8DBCA64120D98EFEDF8DB3A64220D0D4 S123FBE08EFEE48DAAA6C48EFEEB1600908EFEB217FF278DA18DA98DB08DB88DBF8EFEB2E8 S123FC0017FF178DC08DC78DCE20D58D09294D1F12862D1700B88D0E29421F018D08293CE3 S123FC203410A76135908D112932484848481F898D0729283404ABE0398D5B8130251D81B1 S123FC40392203803039814125128146220380373981612507816622038057391A023934D1 S123FC601035028D0235023402444444448D043502840F8B3081392F028B0720513402C62D S123FC8008A68068E42502862D8D438D3F5A26F135826E9FF0007DDFE227068D04847F202C S123FCA02D3410BEDFE0A684850126098EE020A684850127EEA60135903402A69FDFE085F5 S123FCC0012605B6E020850135828D0086208D453412BEDFE0A684850227FA3502A7013553 S123FCE0908D13BEDFE08603A7848611A7846D0186FFB7DFE2398EE030CC0000FDDFFBA751 S123FD0002E703E704FDDFFDC602E7017FDFFE861B8D02865934168EE0307DDFFE27048D1A S123FD2074200D812024048D092005A7841700C53596810810270041811B1027006C811AED S123FD401027008E811610270045810D10270099810C1027002C810B10270011810A2651A3 S123FD60FCDFFB5CC11910260083160099FCDFFB5D1027003C5A160074B6DFFB27334A1637 S123FD800068B6DFFB4C81501027002516005BCC0000160058F6DFFEC13D27168159102724 S123FDA0006E81542731813D2604B7DFFE397FDFFE397DDFFD2604B7DFFD397FDFFE80200F S123FDC0814F22EDF6DFFD7FDFFDC020C11822E1201BCC00008D16B6DFFBC620E7844CA7D9 S123FDE002815026F77FDFFE394FF6DFFCFDDFFBA702E70339FCDFFB4C815026F04F5CC142 S123FE001926EA5A8DE7E6045CC11925015FE704F6DFFB8620F7DFFBE702A7845CC1502669 S123FE20F4F6DFFC5CC1192708F7DFFCE7035F20E45FF7DFFBE702F7DFFE3901FB7402FBE2 S123FE406903FB7F04FB5E10FB3115FB3D18FB5319FB4842F95C45F8FD47F8A54CFA5E5067 S123FE60FABC4DF8A852FBED53F8F158F98844F9D555FC92F994F8A7F8A7F8A7F8A7F99401 S123FE80FFFFFFFF0D0A000000535953303942554720312E3420464F5220584553532020A8 S123FEA02D20044B0D0A000000043E04574841543F04202D2004202053503D042020504366 S123FEC03D04202055533D04202049593D04202049583D04202044503D042020413D042078 S119FEE020423D04202043433A2004454648494E5A56435331045C S123FF008EFFF0860FA7804A26FB86F0A7848ED0A0108E55AAEE8410AF8410AC84270B30A6 S123FF2089F0008CF0A026ED20D6EF841F104344444444B7FFFD10CEDFC0108EDFD0A72DD9 S123FF406F2E86F0A72F860C6FA64A2AFB3089F0008CF0A02722EE84108E55AA10AF84102E S123FF60AC8426E9EF84108EDFD01F10444444441F89880FA7A520D586F1108EDFD0A72E26 S123FF80860CE6A626054A2AF920146FA6E72C4F1F21E6A627046FA6E7804C810C2DF38E02 S123FFA0FFF0C610A6A0A7805A26F953F7DFE216F8626E9FDFC06E9FDFC46E9FDFC66E9FFC S123FFC0DFC86E9FDFCA1F43AE4AE680AF4A4F5849BEDFCC8CFFFF270F308BBCDFCE2208A0 S113FFE03410ECC4AE446EF1371FEE426E9FDFC294 S113FFF0FFB2FFC6FFB6FFBAFFBEFFC2FFB2FF00EB S9030000FC 1.1 System09/src/sys09bug/opt_ads.txt http://www.opencores.org/cvsweb.shtml/System09/src/sys09bug/opt_ads.txt?rev=1.1&content-type=text/x-cvsweb-markup Index: opt_ads.txt =================================================================== * *************************************************** * OPTION SWITCHES *************************************************** * * ** THE CONTROL PORT CAN ONLY BE ONE OF THESE ** NOTE THAT THE ACIA WILL ALWAYS BE PRESET ** FOR LOADING AND SAVING S1 RECORDS * *S3EOPT EQU $FF SPARTAN3E STARTER *S3SOPT EQU $FF SPARTAN3 STARTER FPGA VIDEO & PS2 KEYBOARD *B5XOPT EQU $FF B5-X300 FPGA VIDEO & PS2 KEYBOARD *XESOPT EQU $FF XESS XSA-3S100 & XST-3.0 ADSOPT EQU $FF ADS6809 & DG640 VIDEO DISPAY *SWTOPT EQU $FF SWTP ACIA SERIAL CONTROL PORT * END 1.1 System09/src/sys09bug/opt_b5x.txt http://www.opencores.org/cvsweb.shtml/System09/src/sys09bug/opt_b5x.txt?rev=1.1&content-type=text/x-cvsweb-markup Index: opt_b5x.txt =================================================================== * *************************************************** * OPTION SWITCHES *************************************************** * * ** THE CONTROL PORT CAN ONLY BE ONE OF THESE ** NOTE THAT THE ACIA WILL ALWAYS BE PRESET ** FOR LOADING AND SAVING S1 RECORDS * *S3EOPT EQU $FF SPARTAN3E STARTER *S3SOPT EQU $FF SPARTAN3 STARTER FPGA VIDEO & PS2 KEYBOARD B5XOPT EQU $FF B5-X300 FPGA VIDEO & PS2 KEYBOARD *XESOPT EQU $FF XESS XSA-3S100 & XST-3.0 *ADSOPT EQU $FF ADS6809 & DG640 VIDEO DISPAY *SWTOPT EQU $FF SWTP ACIA SERIAL CONTROL PORT * END 1.1 System09/src/sys09bug/opt_s3e.txt http://www.opencores.org/cvsweb.shtml/System09/src/sys09bug/opt_s3e.txt?rev=1.1&content-type=text/x-cvsweb-markup Index: opt_s3e.txt =================================================================== * *************************************************** * OPTION SWITCHES *************************************************** * * ** THE CONTROL PORT CAN ONLY BE ONE OF THESE ** NOTE THAT THE ACIA WILL ALWAYS BE PRESET ** FOR LOADING AND SAVING S1 RECORDS * S3EOPT EQU $FF SPARTAN3E STARTER *S3SOPT EQU $FF SPARTAN3 STARTER FPGA VIDEO & PS2 KEYBOARD *B5XOPT EQU $FF B5-X300 FPGA VIDEO & PS2 KEYBOARD *XESOPT EQU $FF XESS XSA-3S100 & XST-3.0 *ADSOPT EQU $FF ADS6809 & DG640 VIDEO DISPAY *SWTOPT EQU $FF SWTP ACIA SERIAL CONTROL PORT * END 1.1 System09/src/sys09bug/opt_s3s.txt http://www.opencores.org/cvsweb.shtml/System09/src/sys09bug/opt_s3s.txt?rev=1.1&content-type=text/x-cvsweb-markup Index: opt_s3s.txt =================================================================== * *************************************************** * OPTION SWITCHES *************************************************** * * ** THE CONTROL PORT CAN ONLY BE ONE OF THESE ** NOTE THAT THE ACIA WILL ALWAYS BE PRESET ** FOR LOADING AND SAVING S1 RECORDS * *S3EOPT EQU $FF SPARTAN3E STARTER S3SOPT EQU $FF SPARTAN3 STARTER FPGA VIDEO & PS2 KEYBOARD *B5XOPT EQU $FF B5-X300 FPGA VIDEO & PS2 KEYBOARD *XESOPT EQU $FF XESS XSA-3S100 & XST-3.0 *ADSOPT EQU $FF ADS6809 & DG640 VIDEO DISPAY *SWTOPT EQU $FF SWTP ACIA SERIAL CONTROL PORT * END 1.1 System09/src/sys09bug/opt_swt.txt http://www.opencores.org/cvsweb.shtml/System09/src/sys09bug/opt_swt.txt?rev=1.1&content-type=text/x-cvsweb-markup Index: opt_swt.txt =================================================================== * *************************************************** * OPTION SWITCHES *************************************************** * * ** THE CONTROL PORT CAN ONLY BE ONE OF THESE ** NOTE THAT THE ACIA WILL ALWAYS BE PRESET ** FOR LOADING AND SAVING S1 RECORDS * *S3EOPT EQU $FF SPARTAN3E STARTER *S3SOPT EQU $FF SPARTAN3 STARTER FPGA VIDEO & PS2 KEYBOARD *B5XOPT EQU $FF B5-X300 FPGA VIDEO & PS2 KEYBOARD *XESOPT EQU $FF XESS XSA-3S100 & XST-3.0 *ADSOPT EQU $FF ADS6809 & DG640 VIDEO DISPAY SWTOPT EQU $FF SWTP ACIA SERIAL CONTROL PORT * END 1.1 System09/src/sys09bug/opt_xes.txt http://www.opencores.org/cvsweb.shtml/System09/src/sys09bug/opt_xes.txt?rev=1.1&content-type=text/x-cvsweb-markup Index: opt_xes.txt =================================================================== * *************************************************** * OPTION SWITCHES *************************************************** * * ** THE CONTROL PORT CAN ONLY BE ONE OF THESE ** NOTE THAT THE ACIA WILL ALWAYS BE PRESET ** FOR LOADING AND SAVING S1 RECORDS * *S3EOPT EQU $FF SPARTAN3E STARTER *S3SOPT EQU $FF SPARTAN3 STARTER FPGA VIDEO & PS2 KEYBOARD *B5XOPT EQU $FF B5-X300 FPGA VIDEO & PS2 KEYBOARD XESOPT EQU $FF XESS XSA-3S100 & XST-3.0 *ADSOPT EQU $FF ADS6809 & DG640 VIDEO DISPAY *SWTOPT EQU $FF SWTP ACIA SERIAL CONTROL PORT * END 1.1 System09/src/sys09bug/readme.txt http://www.opencores.org/cvsweb.shtml/System09/src/sys09bug/readme.txt?rev=1.1&content-type=text/x-cvsweb-markup Index: readme.txt =================================================================== System09 Monitor Program ======================== John Kent 3rd February 2008 1. Introduction. System09 is FPGA SOC (System On a Chip) that uses a 6809 instruction compatible FPGA core. The system is based around the old SWTPc (South West Technical Product Computer), the difference being the FPGA version runs witha 25 MHz E Clock where as the SWTPc ran with a 1MHz to 2MHz E clock. 2. Disk Operating Systems The SWTPc ran the FLEX9, OS9 and Uniflex operating systems. 2.1 Flex9 Flex is a single user operating system developed by TSC (Technical Systems Consultants). It was to the Motorola 8 bit microprocessor family what CP/M was to the 8080 and Z80 family. Flex9 typically used SBUG1.8 as the monitor program for providing the terminal drivers and primative debug functions. 2.2 UniFlex UniFlex was TSC's multi tasking version of their Flex operating system. I don't know much about it, other that the fact that much of the code is available on the internet. UniFlex made use of the extended memory, and used thw SWTPc DMAF-2 Floppy Disk Controller. 2.3 OS9 OS9 is a realtime multitasking operating system. It used to come in a basic 64K version called Level 1 and an extended memory version that used the DAT (Dynamic Address Translation) to map in up to 1 MByte of memory and was called level 2. The SWTPc emulator from Evensons Consulting Services uses just the ACIA serial port at $E000, a SWTPc MP-T timer module at $E040 for interrupts and a Western Digital FD1771 or FD179X Floppy disk controller to run OS9 level 1. OS9 had two special 2KByte boot ROMs at resided at $F000 and $F800. These contain the start up code to load OS9 from the disk drive and run it. 3. Monitor Features System09 is based on SBUG1.8, which was typically used for the Flex9 operating system however I have had to strip out some of the functionality to fit video display and PS/2 keyboard drivers. The VDU and PS/2 keyboard operate in parallel with the serial port so that commands may be entered either locally on the FPGA system remotely by the serial port on say a PC running a terminal program such as hyperterm. 3.1 Mass storage SBUG1.8 had two disk boots, one was for a the DC-1 or compatible floppy disk controller that was mapped at $E01X and the other was for the DMAF2 which used the 6844 DMA controller and was mapped at $F000 just below the SBUG1.8 monitor program. In system09 there is no Western Digital Compatible Floppy disk Controller. (At least not yet.) Instead provisons have been made for booting from either a Compact Flash card or an IDE hard drive. The method for interfaceing to an IDE drive or CF card varies from FPGA board to FPGA board. Some FPGA boards such as the Spartan 3 and Spartan 3E starter boards do not have provision for a Compact Flash card or IDE card, although they do have expansion ports that could be used for CF or IDE interfaces. Some FPGA boards, such as the BurchED B5-X300 have a dedicated CF add on module, which allows you to map the CF card in any way you like. The XESS XST-3S1000 and XST-3.0 carrier board on the other hand provides a 16 bit peripheral bus that can be used to access the IDE drive connector, ethernet controller or two expansion connectors. The Trenz TE0141 and TE0140 boards have the CF card mapped into the memory address and data bus, but have done so in such a fashion that it can only be used in 8 bit transfer mode. CF cards can be programmed to run in 8 bit mode or 16 bit mode. 8 Bit mode is handier for interfaceing to 8 bit micros sych as system09, however this mode is not necessarily supported by IDE disk drives. 4. FPGA Cards 4.1 BurchEd B5-X300 The B5-X300 version of Sys09bug is covered by the "FPGAOPT" options flag. It provides text VDU drivers and PS/2 keyboard interface, ACIA serial port, and Compact Flash Bootstrap. The B5-X300 uses a 300Kgate Spartan 2E FPGA which means the Block RAM used to hold the monitor ROMs is only 4Kbits. four Block RAMs are required to implement a 2KByte monitor program. 4.2 Digilent / Xilinx Spartan 3 Starter Board The Xilinx spartan 3 starter board was designed by Digilent. It uses the Spartan 3 FPGA and intially came in a 200K gate version although a 1000KGate version is also available. The Spartan 3 starterboard is fitted wit 256K x 32 bits of RAM, which is mapped as 1M x 8 bits. The Spartan 3 starter board does not have any mass storage interfaces, although it does have expansion sockets that may be used to add external CF or IDE interfaces. The SRAM on the otherhand can be used as a RAM disk, and data can be downloaded via serial link. David Rumball designed his version of system09 called the Microbox 2000 which was based on the spartan 3 starter board. He was able to use a configuration flash loader to load a ROM disk into RAM. He also implemented a RAM disk and a virtual disk that was hosted on a PC using the FLEXNET software. I borrowed some of his work to extend sys09bug on the spartan 3 starter but have yet to get it working. 4.3 Digilent / Xilinx Spartan 3E starter board Digilent produced a Spartan 3e starter board for Xilinx. The big difference between the Spartan 3 board and the spartan 3E board is that the latter uses SDRAM rather than SRAM and is consequently harder to use. The spartan 3E starter was used to verify the operation of the 6809 core, however because of the difficulty implementing the SDRAM controller I used Block RAM instead. The design implemented a PIA interrupt timer that sys09bug could use to single step through instructions one at a time. The S3E version of System09 implements a Trace command that performs a register dump after each instruction is executed. This allowed comparison of the FPGA 6809 core with a reference design using the original chip. Because RAM was limitted in the S3E, System09 also does not implement the DAT so the monitor start up code at the top of memory to test for memory is not implemented in the S3E version. 4.4 XESS XSA-3S1000 / XST-3.0 1.1 System09/src/sys09bug/sys09ads.lst http://www.opencores.org/cvsweb.shtml/System09/src/sys09bug/sys09ads.lst?rev=1.1&content-type=text/x-cvsweb-markup Index: sys09ads.lst =================================================================== Assembler release DWC_2.0 version 2.11 May 6, 2004 (c) Motorola (free ware) 0001 NAM SYS09BUG FOR ADS6809 0000 INCLUDE "opt_ads.txt" 0001 * 0002 *************************************************** 0003 * OPTION SWITCHES 0004 *************************************************** 0005 * 0006 * 0007 ** THE CONTROL PORT CAN ONLY BE ONE OF THESE 0008 ** NOTE THAT THE ACIA WILL ALWAYS BE PRESET 0009 ** FOR LOADING AND SAVING S1 RECORDS 0010 * 0011 *S3EOPT EQU $FF SPARTAN3E STARTER 0012 *S3SOPT EQU $FF SPARTAN3 STARTER FPGA VIDEO & PS2 KEYBOARD 0013 *B5XOPT EQU $FF B5-X300 FPGA VIDEO & PS2 KEYBOARD 0014 *XESOPT EQU $FF XESS XSA-3S100 & XST-3.0 0015 00FF ADSOPT EQU $FF ADS6809 & DG640 VIDEO DISPAY 0016 *SWTOPT EQU $FF SWTP ACIA SERIAL CONTROL PORT 0017 * 0002 END 0000 INCLUDE "sys09equ.txt" 0001 * 0002 *************************************************** 0003 * MEMORY MAP EQUATES * 0004 *************************************************** 0005 E000 MONIO EQU $E000 I/O SPACE 0006 IFD S3EOPT 0007 MONRAM EQU $7FC0 0008 ELSE 0009 DFC0 MONRAM EQU $DFC0 STACK SPACE 0010 ENDIF S3EOPT 0011 F800 MONROM EQU $F800 START OF ROM 0012 IFD S3SOPT 0013 MONEXT EQU $F000 START OF EXTENDED COMMANDS 0014 EXTCMD EQU $00 EXTENDED OFFSET 0015 ENDIF S3SOPT 0015 ENDIF S3SOPT 0016 IFD XESOPT 0017 MONEXT EQU $F000 START OF EXTENDED COMMANDS 0018 EXTCMD EQU $00 EXTENDED OFFSET 0019 ENDIF XESOPT 0019 ENDIF XESOPT 0020 *************************************************** 0021 0022 IFD S3EOPT 0023 * 0024 * DIGILENT SPARTAN 3E STARTER 0025 * 0026 ACIAOPT EQU $FF ACIA AT PORT 0 0027 PS2OPT EQU $FF PS2 KEYBOARD AT $E020 0028 VDUOPT EQU $FF VDU AT $E030 0029 TRAOPT EQU $FF PIA TRACE TIMER 0030 ENDIF S3EOPT 0030 ENDIF S3EOPT 0031 * 0032 IFD S3SOPT 0033 * 0034 * DIGILENT SPARTAN 3 STARTER 0035 * 0036 ACIAOPT EQU $FF ACIA AT PORT 0 0037 PS2OPT EQU $FF PS2 KEYBOARD AT $E020 0038 VDUOPT EQU $FF VDU AT $E030 0039 CF8OPT EQU $FF COMPACT FLASH AT $E040 0040 DATOPT EQU $FF DYNAMIC ADDRESS TRANSLATION 0041 EXTOPT EQU $FF EXTENDED COMMANDS 0042 ENDIF S3SOPT 0042 ENDIF S3SOPT 0043 * 0044 IFD B5XOPT 0045 * 0046 * BURCHED B5-X300 0047 * 0048 ACIAOPT EQU $FF ACIA AT PORT 0 0049 PS2OPT EQU $FF PS2 KEYBOARD AT $E020 0050 VDUOPT EQU $FF VDU AT $E030 0051 CF8OPT EQU $FF COMPACT FLASH AT $E040 0052 DATOPT EQU $FF DYNAMIC ADDRESS TRANSLATION 0053 ENDIF B5XOPT 0053 ENDIF B5XOPT 0054 * 0055 IFD XESOPT 0056 * 0057 * XESS XSA-3S1000 & XST-3.0 0058 * 0059 ACIAOPT EQU $FF ACIA AT PORT 0 0060 PS2OPT EQU $FF PS2 KEYBOARD AT $E020 0061 VDUOPT EQU $FF VDU AT $E030 0062 IDEOPT EQU $FF XESS IDE AT $E100 0063 DATOPT EQU $FF DYNAMIC ADDRESS TRANSLATION 0064 EXTOPT EQU $FF EXTENDED COMMANDS 0065 ENDIF XESOPT 0065 ENDIF XESOPT 0066 * 0067 IFD ADSOPT 0068 * 0069 * ACKERMAN DIGITAL ADS6809 0070 * 0071 00FF DG640OPT EQU $FF DG640 VDU AT $E800 0072 *RTCOPT EQU $FF REAL TIME CLOCK 0073 00FF PRTOPT EQU $FF PRINTER DRIVERS 0074 00FF MFDCOPT EQU $FF MINIFLOPPY 5.25" DISK BOOT 0075 ENDIF ADSOPT 0076 * 0077 IFD SWTOPT 0078 * 0079 * SOUTH WEST TECHNICAL PRODUCTS COMPUTER 0080 * 0081 ACIAOPT EQU $FF ACIA AT PORT 0 0082 DMAFOPT EQU $FF DMAF2 8" FLOPPY DISK BOOT 0083 MFDCOPT EQU $FF MINIFLOPPY 5.25" DISK BOOT 0084 DATOPT EQU $FF DYNAMIC ADDRESS TRANSLATION 0085 ENDIF 0085 ENDIF 0086 * 0087 IFD ACIAOPT 0088 * 0089 *************************************************** 0090 * SERIAL PORT * 0091 *************************************************** 0092 * 0093 ** ACIA SITS ON PORT 0 0094 * 0095 ACIAS EQU MONIO+$00 CONTROL PORT 0096 * 0097 ENDIF ACIAOPT 0097 ENDIF ACIAOPT 0098 IFD MFDCOPT 0099 * 0100 *************************************************** 0101 * MINIFLOPPY DRIVE * 0102 *************************************************** 0103 * 0104 ** FLOPPY DISK CONTROLLER SITS ON PORT 1 0105 * 0106 E014 DRVFDC EQU MONIO+$14 0107 E018 CMDFDC EQU MONIO+$18 0108 E01A SECFDC EQU MONIO+$1A 0109 E01B DATFDC EQU MONIO+$1B 0110 ENDIF MFDCOPT 0111 IFD PS2OPT 0112 * 0113 *************************************************** 0114 * VDU8 PS/2 KEYBOARD PORT * 0115 *************************************************** 0116 * 0117 ** KEYBOARD SITS ON PORT 2 0118 * 0119 PS2KBD EQU MONIO+$20 PS/2 KEYBOARD PORT 0120 ENDIF PS2OPT 0120 ENDIF PS2OPT 0121 IFD VDUOPT 0122 * 0123 *************************************************** 0124 * VDU8 DISPLAY DRIVER EQUATES * 0125 *************************************************** 0126 * 0127 ** VDU8 DISPLAY SITS ON PORT 3 0128 * 0129 VDU EQU MONIO+$30 0130 VDUCHR EQU 0 CHARACTER REGISTER 0131 VDUATT EQU 1 ATTRIBUTE REGISTER 0132 VDUCOL EQU 2 CURSOR COLUMN 0133 VDUROW EQU 3 CURSOR ROW 0134 VDUOFF EQU 4 ROW OFFSET 0135 * 0136 LINLEN EQU 80 LENGTH OF A LINE 0137 NUMLIN EQU 25 NUMBER OF LINES 0138 ENDIF VDUOPT 0138 ENDIF VDUOPT 0139 * 0140 IFD CF8OPT 0141 * 0142 *************************************************** 0143 * COMPACT FLASH EQUATES 8 BIT TRANSFER * 0144 *************************************************** 0145 * 0146 ** COMPACT FLASH SITS AT PORT 4 0147 * 0148 CF_BASE EQU MONIO+$40 0149 CF_DATA EQU CF_BASE+0 0150 CF_ERROR EQU CF_BASE+1 ; read error 0151 CF_FEATURE EQU CF_BASE+1 ; write feature 0152 CF_SECCNT EQU CF_BASE+2 0153 CF_SECNUM EQU CF_BASE+3 0154 CF_CYLLO EQU CF_BASE+4 0155 CF_CYLHI EQU CF_BASE+5 0156 CF_HEAD EQU CF_BASE+6 0157 CF_STATUS EQU CF_BASE+7 ; read status 0158 CF_COMAND EQU CF_BASE+7 ; write command 0159 * 0160 * Command Equates 0161 * 0162 CMDREAD EQU $20 ; Read Single sector 0163 CMDWRITE EQU $30 ; Write Single sector 0164 CMDFEATURE EQU $EF 0165 FEAT8BIT EQU $01 ; enable 8 bit transfers 0166 HEADLBA EQU $E0 0167 * 0168 * Status bit equates 0169 * 0170 BUSY EQU $80 0171 DRDY EQU $40 0172 DRQ EQU $08 0173 ERR EQU $01 0174 * 0175 ENDIF CF8OPT 0175 ENDIF CF8OPT 0176 * 0177 IFD IDEOPT 0178 * 0179 *************************************************** 0180 * COMPACT FLASH EQUATES 16 BIT TRANSFER (XESS) * 0181 *************************************************** 0182 * 0183 ** COMPACT FLASH SITS AT PORT 4 0184 * 0185 CF_BASE EQU MONIO+$0100 0186 CF_DATA EQU CF_BASE+0 0187 CF_ERROR EQU CF_BASE+2 ; read error 0188 CF_FEATURE EQU CF_BASE+2 ; write feature 0189 CF_SECCNT EQU CF_BASE+4 0190 CF_SECNUM EQU CF_BASE+6 0191 CF_CYLLO EQU CF_BASE+8 0192 CF_CYLHI EQU CF_BASE+10 0193 CF_HEAD EQU CF_BASE+12 0194 CF_STATUS EQU CF_BASE+14 ; read status 0195 CF_COMAND EQU CF_BASE+14 ; write command 0196 CF_AUX EQU CF_BASE+30 0197 * 0198 * Command Equates 0199 * 0200 CMDREAD EQU $20 ; Read Single sector 0201 CMDWRITE EQU $30 ; Write Single sector 0202 AUXRESET EQU $06 ; Reset IDE 0203 AUXRSTREL EQU $02 ; Reset release IRQ masked 0204 HEADLBA EQU $E0 0205 * 0206 * Status bit equates 0207 * 0208 BUSY EQU $80 0209 DRDY EQU $40 0210 DRQ EQU $08 0211 ERR EQU $01 0212 * 0213 ENDIF CF8OPT 0213 ENDIF CF8OPT 0214 * 0215 IFD RTCOPT 0216 * 0217 ************************************************** 0218 * MM58167A REAL TIME CLOCK MEMORY MAP: 0219 ************************************************** 0220 * 0221 ** REAL TIME CLOCK SITS ON PORT 4 AND PORT 5 0222 * 0223 CLOCK EQU MONIO+$40 CLOCK BASE ADDRESS AND REGISTERS 0224 * 0225 * COUNTER AND COMPARITOR REGISTERS: 0226 * 0227 * Both the Clock Counter and Clock Comparitor 0228 * consist of 8 registers for holding the time. 0229 * The register offsets from the Counter and 0230 * Comparitor registers are listed above. 0231 * 0232 COUNTR EQU CLOCK+0 0233 CMPRAM EQU CLOCK+8 COMPARITOR REGISTERS 0234 * 0235 * CLOCK REGISTER OFFSETS: 0236 * These register offsets are used for the CLOCK 0237 * and comparitor ram CMPRAM. 0238 * 0239 S10000 EQU 0 TEN THOUNSANDTHS OF SECONDS 0240 S100 EQU 1 HUNDRETHS AND TENTHS OF SECONDS 0241 SECOND EQU 2 0242 MINUIT EQU 3 0243 HOUR EQU 4 0244 WKDAY EQU 5 0245 MTHDAY EQU 6 0246 MONTH EQU 7 0247 * 0248 * INTERRUPT OUTPUT REGISTERS: 0249 * 0250 * An interrupt output may be generated at the 0251 * following rates by setting the appropriate bit 0252 * in the Interrupt Control Register (CINTCR). 0253 * The Interrupt Status Register (CINTSR) must be 0254 * read to clear the interrupt and will return 0255 * the source of the interrupt. 0256 * 0257 * 1/Month Bit 7 0258 * 1/Week Bit 6 0259 * 1/Day Bit 5 0260 * 1/Hour Bit 4 0261 * 1/Minuite Bit 3 0262 * 1/Second Bit 2 0263 * 10/Second Bit 1 0264 * Comparitor Bit 0 0265 * 0266 CINTSR EQU CLOCK+16 INTERRUPT STATUS REGISTER 0267 CINTCR EQU CLOCK+17 INTERRUPT CONTROL REGISTER 0268 * 0269 * COUNTER AND RAM RESETS; GO COMMAND. 0270 * 0271 * The counter and comparitor may be reset 0272 * by writing $FF into CTRRES and CMPRES 0273 * respectivly. 0274 * A write to the Go command register (GOCMND) 0275 * will reset the 1/1000ths, 1/100ths and 1/10ths 0276 * of a second counter. 0277 * 0278 CTRRES EQU CLOCK+18 COUNTER RESET 0279 CMPRES EQU CLOCK+19 COMPARITOR RAM RESET 0280 GOCMND EQU CLOCK+21 GO COMMAND 0281 * 0282 * CLOCK STATUS REGISTER. 0283 * 0284 * The counter takes 61 usec. to rollover for 0285 * every 1KHz clock pulse. If the Status bit is 0286 * set after reading the counter, the counter 0287 * should be re-read to ensure the time is correct. 0288 * 0289 CLKSTA EQU CLOCK+20 STATUS BIT 0290 SBYINT EQU CLOCK+22 STANDBY INTERRUPT 0291 TSTMOD EQU CLOCK+31 TEST MODE REGISTER 0292 ENDIF RTCOPT 0292 ENDIF RTCOPT 0293 * 0294 IFD TRAOPT 0295 * 0296 ************************************************** 0297 * PIA INTERRUPT TIMER 0298 ************************************************** 0299 * 0300 ** PIA INTERRUPT TIMER SITS ON PORT 7 0301 * 0302 ** PIA TIMER FOR SINGLE STEP / TRACE 0303 * 0304 * TADATA = Output = Timer preset register 0305 * TACTRL - CA1 = input = rising edge = NMI 0306 * - CA2 = Output = Timer Reset (Active High) 0307 * TBDATA = Input = Timer read back register 0308 * TBCTRL - CB1 = input = rising edge = FIRQ 0309 * - CB2 = output = strobe low on write to TBDATA = Timer Preset 0310 * 0311 * CRA0 = 0 CA1 IRQ DISAB, CRA0 = 1 CA1 IRQ ENAB 0312 * CRA1 = 1 CA1 Rising edge IRQ 0313 * CRA2 = 0 TADATA = Data Direction, CRA2 = 1 TADATA = I/O Register 0314 * CRA3 = 0 CA2 = 0 output, CRA3 = 1 CA2 = 1 0315 * CRA4 = 1 ] CA2 = Set/Reset output 0316 * CRA5 = 1 ] 0317 * CRA6 = X CA2 Input Interrupt Flag 0318 * CRA7 = X CA1 Interrupt Flag 0319 * 0320 * CRB0 = 0 CB1 IRQ DISAB, CRB0 = 1 CA1 IRQ ENAB 0321 * CRB1 = 1 CB1 Rising edge IRQ 0322 * CRB2 = 0 TBDATA = Data Direction, CRB2 = 1 TBDATA = I/O Register 0323 * CRB3 = 0 CB2 = 0 output, CRB3 = 1 CB2 = 1 0324 * CRB4 = 1 ] CB2 = Set/Reset output 0325 * CRB5 = 1 ] 0326 * CRB6 = X CB2 Input Interrupt Flag 0327 * CRB7 = X CB1 Interrupt Flag 0328 * 0329 * DDRA = 0 TADATA = Input, DDRA = 1 TADATA = Output 0330 * DDRB = 0 TBDATA = Input, DDRB = 1 TBDATA = Output 0331 * 0332 TADATA EQU MONIO+$70 Timer preset port 0333 TACTRL EQU MONIO+$71 0334 TBDATA EQU MONIO+$72 Timer read back port 0335 TBCTRL EQU MONIO+$73 0336 * 0337 TRADEL EQU 13 Number of E cycles for RTI (May need to be fudged) 0338 * 0339 ENDIF TRAOPT 0339 ENDIF TRAOPT 0340 IFD ADSOPT 0341 * 0342 *************************************************** 0343 * SERIAL PORT FOR DG640 * 0344 *************************************************** 0345 * 0346 ** SET UP FOR ACKERMAN DIGITAL ADS6809 0347 ** THE ADS6809 S100 BOAD HAS AN ON BOARD ACIA 0348 * 0349 E400 ACIAS EQU MONIO+$400 CONTROL PORT 0350 * 0351 ENDIF ADSOPT 0352 IFD PRTOPT 0353 * 0354 *************************************************** 0355 * PRINTER INTERFACE * 0356 *************************************************** 0357 * 0358 E404 PADATA EQU MONIO+$404 0359 E405 PACTRL EQU MONIO+$405 0360 E406 PBDATA EQU MONIO+$406 0361 E407 PBCTRL EQU MONIO+$407 0362 * 0363 ** CB1 ACK. I/P 0364 ** CB2 STB. O/P 0365 ** PB0 - PB7 DATA 1 - 8 O/P 0366 ** PORT A BIT ASSIGNMENT 0367 * 0368 0080 PBUSY EQU $80 I/P 0369 0040 PEMPTY EQU $40 I/P 0370 0020 SELECT EQU $20 I/P 0371 0010 PERROR EQU $10 I/P 0372 0004 PRESET EQU %00000100 O/P PA3 = 0 0373 0008 AUTOFD EQU %00001000 O/P PA2 = 0 0374 000C DIRMSK EQU %00001100 0375 ENDIF PRTOPT 0376 IFD DG640OPT 0377 * 0378 *************************************************** 0379 * DG640 MEMORY MAPPED DISPLAY DRIVER VARIABLES * 0380 *************************************************** 0381 * 0382 ** VIDEO DISPLAY DEFINITIONS 0383 * 0384 E800 SCREEN EQU MONIO+$0800 START OF SCREEN MEMORY 0385 0040 LINLEN EQU 64 LENGTH OF A LINE 0386 0010 NUMLIN EQU 16 NUMBER OF LINES 0387 0400 SCNLEN EQU $400 LENGTH OF SCREEN 0388 ENDIF DG640OPT 0389 * 0390 IFD DMAFOPT 0391 * 0392 *************************************************** 0393 * DMAF2 8" DRIVE * 0394 *************************************************** 0395 * 0396 ADDREG EQU $F000 ADDRESS REGISTER 0397 CNTREG EQU $F002 COUNT REGISTER 0398 CCREG EQU $F010 CHANNEL CONTROL REGISTER 0399 PRIREG EQU $F014 DMA PRIORITY REGISTER 0400 AAAREG EQU $F015 ??? 0401 BBBREG EQU $F016 ??? 0402 COMREG EQU $F020 1791 COMMAND REGISTER 0403 SECREG EQU $F022 SECTOR REGISTER 0404 DRVREG EQU $F024 DRIVE SELECT LATCH 0405 CCCREG EQU $F040 ??? 0406 ENDIF DMAFOPT 0406 ENDIF DMAFOPT 0407 IFD DATOPT 0408 ************************************************** 0409 * DYNAMIC ADDRESS TRANSLATION REGISTERS * 0410 ************************************************** 0411 * 0412 IC11 EQU $FFF0 DAT RAM CHIP 0413 TSTPAT EQU $55AA TEST PATTERN 0414 ENDIF DATOPT 0414 ENDIF DATOPT 0415 * 0003 END 0000 INCLUDE "sys09bug.txt" 0001 * NAM SYS09BUG12 SYSTEM09 MONITOR 0002 OPT l sys09bug.txt page 2 0004 * 0005 * MONITOR PROGRAM FOR THE SOUTHWEST TECHNICAL 0006 * PRODUCTS MP-09 CPU BOARD AS COMMENTED BY.... 0007 * 0008 * ALLEN CLARK WALLACE WATSON 0009 * 2502 REGAL OAKS LANE 4815 EAST 97th AVE. 0010 * LUTZ, FLA. 33549 TEMPLE TERRACE, FLA. 33617 0011 * PH. 813-977-0347 PH. 813-985-1359 0012 * 0013 * MODIFIED TO SBUG09 VER 1.8 BY: RANDY JARRETT 0014 * 2561 NANTUCKET DR APT. E 0015 * ATLANTA, GA 30345 0016 * PH. 404-320-1043 0017 * 0018 * MODIFIED TO SYS09BUG VER 1.0 0019 * FOR: SYSTEM09 FPGA SYSTEM 0020 * BY: JOHN KENT 0021 * DATE: 21ST NOVEMBER 2006 0022 * REMOVED: DISK BOOTS 0023 * MEMORY TEST 0024 * ADDED: ADM3A VDU DRIVER 0025 * 0026 * MODIFIED TO SYS09BUG VER 1.1 0027 * FOR: SYSTEM09 FPGA SYSTEM 0028 * BY: JOHN KENT 0029 * DATE: 7TH JANUARY 2007 0030 * ADDED: 'U' USER EXTENTION COMMANDS AT $F000 0031 * CONDITIONAL ASSEMBLY OF FLOPPY BOOTS 0032 * AND REALTIME CLOCK 0033 * 0034 * MODIFIED TO SYS09BUG VER 1.2 0035 * FOR: SYSTEM09 FPGA SYSTEM 0036 * BY: JOHN KENT 0037 * DATE: 21ST MAY 2007 0038 * ADDED: COMPACT FLASH BOOT TO FPGA VERSION 0039 * REMOVED PORT REDIRECTION ON PUNCH & LOAD 0040 * 0041 * Modified to SYS09BUG VER 1.3 0042 * FOR: SYSTEM09 FPGA SYSTEM 0043 * BY: JOHN KENT 0044 * DATE: 8TH JAN 2008 0045 * ADDED: CONDITIONALS FOR SPARTAN3E STARTER BOARD 0046 * WITH ONLY 32K OF RAM 0047 * 0048 * Modified to SYS09BUG VER 1.4 0049 * FOR: SYSTEM09 FPGA SYSTEM 0050 * BY: JOHN KENT 0051 * DATE: 3RD FEB 2008 0052 * ADDED: CONDITIONALS FOR XESS BOARD WITH IDE 0053 * SEPERATE CONDITIONAL FOR S3 STARTER AND B5-X300 0054 * 16 BIT IDE DISK BOOT STRAP ROUTINE 0055 * CHANGED: SEPARARTED OPTIONS EQUATES AND BODY INTO SEPARATE FILES 0056 * 0057 * *** COMMANDS *** 0058 * 0059 * CONTROL A = ALTER THE "A" ACCUMULATOR 0060 * CONTROL B = ALTER THE "B" ACCUMULATOR 0061 * CONTROL C = ALTER THE CONDITION CODE REGISTER 0062 * CONTROL D = ALTER THE DIRECT PAGE REGISTER 0063 * CONTROL P = ALTER THE PROGRAM COUNTER 0064 * CONTROL U = ALTER USER STACK POINTER 0065 * CONTROL X = ALTER "X" INDEX REGISTER 0066 * CONTROL Y = ALTER "Y" INDEX REGISTER 0067 * B hhhh = SET BREAKPOINT AT LOCATION $hhhh 0068 * D = 5.25" MINIFLOPPY BOOT 0069 * E ssss-eeee = EXAMINE MEMORY 0070 * FROM STARTING ADDRESS ssss 0071 * TO ENDING ADDRESS eeee. 0072 * G = CONTINUE EXECUTION FROM BREAKPOINT OR SWI 0073 * L = LOAD TAPE 0074 * M hhhh = EXAMINE AND CHANGE MEMORY LOCATION hhhh 0075 * P ssss-eeee = PUNCH TAPE, START ssss TO END eeee ADDR. 0076 * R = DISPLAY REGISTER CONTENTS 0077 * S = DISPLAY STACK FROM ssss TO $DFC0 0078 * U = 8" DMAF2 FLOPPY BOOT 0079 * U = USER EXTENSION COMMANDS AT $F000 0080 * X = REMOVE ALL BREAKPOINTS 0081 * 0082 * 0083 *************************************************** 0084 * SYS09BUG VARIABLE SPACE 0085 *************************************************** 0086 * 0087 DFC0 ORG MONRAM 0088 DFC0 STACK EQU * TOP OF INTERNAL STACK 0089 DFC0 NMI RMB 2 USER NMI VECTOR 0090 DFC2 SWI3 RMB 2 SOFTWARE INTERRUPT VECTOR #3 0091 DFC4 SWI2 RMB 2 SOFTWARE INTERRUPT VECTOR #2 0092 DFC6 FIRQ RMB 2 FAST INTERRUPT VECTOR 0093 DFC8 IRQ RMB 2 INTERRUPT VECTOR 0094 DFCA SWI RMB 2 SOFTWARE INTERRUPT VECTOR 0095 DFCC SVCVO RMB 2 SUPERVISOR CALL VECTOR ORGIN 0096 DFCE SVCVL RMB 2 SUPERVISOR CALL VECTOR LIMIT 0097 IFD DATOPT 0098 LRARAM RMB 16 LRA ADDRESSES 0099 ENDIF DATOPT 0099 ENDIF DATOPT 0100 DFD0 CPORT RMB 2 RE-VECTORABLE CONTROL PORT 0101 DFD2 ECHO RMB 1 ECHO FLAG 0102 DFD3 BPTBL RMB 24 BREAKPOINT TABLE BASE ADDR 0103 IFD TRAOPT 0104 NMISAV RMB 2 NMI Jump Vector Backup 0105 TRACNT RMB 2 Trace Count 0106 ENDIF TRAOPT 0106 ENDIF TRAOPT 0107 IFD VDUOPT 0108 * 0109 ************************************************** 0110 * VDU8 DISPLAY DRIVER VARIABLES * 0111 ************************************************** 0112 * 0113 **** ALWAYS KEEP COLADX AND ROWADX TOGETHER ****** 0114 COLADX RMB 1 CURSOR COLUMN 0115 ROWADX RMB 1 CURSOR ROW 0116 ************************************************** 0117 * 0118 NEWROW RMB 1 NEW ROW TEMP FOR ESCAPE 0119 ESCFLG RMB 1 ESCAPE SEQUENCE ACTIVE 0120 ENDIF VDUOPT 0120 ENDIF VDUOPT 0121 IFD DG640OPT 0122 * 0123 *************************************************** 0124 * DG640 MEMORY MAPPED DISPLAY DRIVER VARIABLES * 0125 *************************************************** 0126 * 0127 ***** ALWAYS KEEP THESE TWO BYTES TOGETHER ***** 0128 DFEB COLADX RMB 1 CURSOR COLUMN 0129 DFEC ROWADX RMB 1 CURSOR ROW 0130 ************************************************* 0131 DFED CURSOR RMB 2 ABSOLUTE SCREEN ADDRESS 0132 DFEF NEWROW RMB 1 NEW ROW TEMP FOR ESCAPE 0133 DFF0 ESCFLG RMB 1 ESCAPE SEQUENCE ACTIVE 0134 ENDIF DG640OPT 0135 * 0136 * 0137 *************************************************** 0138 * START OF ROM * 0139 *************************************************** 0140 * 0141 F800 ORG MONROM 0142 F800 F8 22 FDB MONITOR 0143 F802 F8 56 FDB NEXTCMD 0144 F804 FC 66 FDB INCH 0145 F806 FC 60 FDB INCHE 0146 F808 FC 75 FDB INCHEK 0147 F80A FC 83 FDB OUTCH 0148 F80C FB 58 FDB PDATA 0149 F80E FA E7 FDB PCRLF 0150 F810 FA E3 FDB PSTRNG 0151 F812 FF 06 FDB LRA 0152 * 0153 IFD ADSOPT 0154 F814 FE 47 FDB PCHK CHECK FOR PRINTER INPUT 0155 F816 FE 09 FDB PINIZ INITIATE PRINTER 0156 F818 FE 33 FDB POUTCH OUTPUT CH. TO PRINTER 0157 F81A FC AB FDB VINIZ 0158 F81C FC C0 FDB VOUTCH 0159 F81E FC 98 FDB ACINIZ 0160 F820 FC 85 FDB AOUTCH 0161 ENDIF ADSOPT 0162 * 0163 * MONITOR 0164 * 0165 * VECTOR ADDRESS STRING IS..... 0166 * $F8A1-$F8A1-$F8A1-$F8A1-$F8A1-$FAB0-$FFFF-$FFFF 0167 * 0168 F822 8E FE 81 MONITOR LDX #RAMVEC POINT TO VECTOR ADDR. STRING 0169 F825 10 8E DF C0 LDY #STACK POINT TO RAM VECTOR LOCATION 0170 F829 C6 10 LDB #$10 BYTES TO MOVE = 16 0171 F82B A6 80 LOOPA LDA ,X+ GET VECTOR BYTE 0172 F82D A7 A0 STA ,Y+ PUT VECTORS IN RAM / $DFC0-$DFCF 0173 F82F 5A DECB SUBTRACT 1 FROM NUMBER OF BYTES TO MOVE 0174 F830 26 F9 BNE LOOPA CONTINUE UNTIL ALL VECTORS MOVED 0175 * 0176 * CONTENTS FROM TO FUNCTION 0177 * $F8A1 $FE40 $DFC0 USER-V 0178 * $F8A1 $FE42 $DFC2 SWI3-V 0179 * $F8A1 $FE44 $DFC4 SWI2-V 0180 * $F8A1 $FE46 $DFC6 FIRQ-V 0181 * $F8A1 $FE48 $DFC8 IRQ-V 0182 * $FAB0 $FE4A $DFCA SWI-V 0183 * $FFFF $FE4C $DFCC SVC-VO 0184 * $FFFF $FE4E $DFCE SVC-VL 0185 * 0186 F832 8E E4 00 LDX #ACIAS 0187 F835 BF DF D0 STX CPORT STORE ADDR. IN RAM 0188 F838 17 01 42 LBSR XBKPNT CLEAR OUTSTANDING BREAKPOINTS 0189 F83B C6 0C LDB #12 CLEAR 12 BYTES ON STACK 0190 F83D 6F E2 CLRSTK CLR ,-S 0191 F83F 5A DECB 0192 F840 26 FB BNE CLRSTK 0193 F842 30 8C DD LEAX MONITOR,PCR SET PC TO SBUG-E ENTRY 0194 F845 AF 6A STX 10,S ON STACK 0195 F847 86 D0 LDA #$D0 PRESET CONDITION CODES ON STACK 0196 F849 A7 E4 STA ,S 0197 F84B 1F 43 TFR S,U 0198 F84D 17 04 46 LBSR IOINIZ INITIALIZE CONTROL PORT 0199 F850 8E FE 91 LDX #MSG1 POINT TO MONITOR MESSAGE 0200 F853 17 03 02 LBSR PDATA PRINT MSG 0201 * 0202 IFD DATOPT 0203 LDX #LRARAM POINT TO LRA RAM STORAGE AREA 0204 CLRA START TOTAL AT ZERO 0205 LDB #13 TOTAL UP ALL ACTIVE RAM MEMORY 0206 FNDREL TST B,X TEST FOR RAM AT NEXT LOC. 0207 BEQ RELPAS IF NO RAM GO TO NEXT LOC. 0208 ADDA #4 ELSE ADD 4K TO TOTAL 0209 DAA ADJ. TOTAL FOR DECIMAL 0210 RELPAS DECB SUB. 1 FROM LOCS. TO TEST 0211 BPL FNDREL PRINT TOTAL OF RAM 0212 LBSR OUT2H OUTPUT HEX BYTE AS ASCII 0213 LDX #MSG2 POINT TO MSG 'K' CR/LF + 3 NULS 0214 LBSR PDATA PRINT MSG 0215 ENDIF DATOPT 0215 ENDIF DATOPT 0216 * 0217 IFD TRAOPT 0218 LBSR TRAINZ 0219 ENDIF TRAOPT 0219 ENDIF TRAOPT 0220 * 0221 ***** NEXTCMD ***** 0222 * 0223 F856 8E FE BA NEXTCMD LDX #MSG3 POINT TO MSG ">" 0224 F859 17 02 87 LBSR PSTRNG PRINT MSG 0225 F85C 17 04 07 LBSR INCH GET ONE CHAR. FROM TERMINAL 0226 F85F 84 7F ANDA #$7F STRIP PARITY FROM CHAR. 0227 F861 81 0D CMPA #$0D IS IT CARRIAGE RETURN ? 0228 F863 27 F1 BEQ NEXTCMD IF CR THEN GET ANOTHER CHAR. 0229 F865 1F 89 TFR A,B PUT CHAR. IN "B" ACCUM. 0230 F867 81 20 CMPA #$20 IS IT CONTROL OR DATA CHAR ? 0231 F869 2C 09 BGE PRTCMD IF CMD CHAR IS DATA, PRNT IT 0232 F86B 86 5E LDA #'^ ELSE CNTRL CHAR CMD SO... 0233 F86D 17 04 13 LBSR OUTCH PRINT "^" 0234 F870 1F 98 TFR B,A RECALL CNTRL CMD CHAR 0235 F872 8B 40 ADDA #$40 CONVERT IT TO ASCII LETTER 0236 F874 17 04 0C PRTCMD LBSR OUTCH PRNT CMD CHAR 0237 F877 17 04 07 LBSR OUT1S PRNT SPACE 0238 F87A C1 60 CMPB #$60 0239 F87C 2F 02 BLE NXTCH0 0240 F87E C0 20 SUBB #$20 0241 * 0242 ***** DO TABLE LOOKUP ***** 0243 * FOR COMMAND FUNCTIONS 0244 * 0245 F880 8E FE 4B NXTCH0 LDX #JMPTAB POINT TO JUMP TABLE 0246 F883 E1 80 NXTCHR CMPB ,X+ DOES COMMAND MATCH TABLE ENTRY ? 0247 F885 27 0F BEQ JMPCMD BRANCH IF MATCH FOUND 0248 F887 30 02 LEAX 2,X POINT TO NEXT ENTRY IN TABLE 0249 F889 8C FE 81 CMPX #TABEND REACHED END OF TABLE YET ? 0250 F88C 26 F5 BNE NXTCHR IF NOT END, CHECK NEXT ENTRY 0251 F88E 8E FE BC LDX #MSG4 POINT TO MSG "WHAT?" 0252 F891 17 02 C4 LBSR PDATA PRINT MSG 0253 F894 20 C0 BRA NEXTCMD IF NO MATCH, PRMPT FOR NEW CMD 0254 F896 AD 94 JMPCMD JSR [,X] JUMP TO COMMAND ROUTINE 0255 F898 20 BC BRA NEXTCMD PROMPT FOR NEW COMMAND 0256 * 0257 * "G" GO OR CONTINUE 0258 * 0259 F89A 1F 34 GO TFR U,S 0260 F89C 3B RTI RTI 0261 * 0262 ***** "M" MEMORY EXAMINE AND CHANGE ***** 0263 * 0264 F89D 17 03 3F MEMCHG LBSR IN1ADR INPUT ADDRESS 0265 F8A0 29 2D BVS CHRTN IF NOT HEX, RETURN 0266 F8A2 1F 12 TFR X,Y SAVE ADDR IN "Y" 0267 F8A4 8E FE C2 MEMC2 LDX #MSG5 POINT TO MSG " - " 0268 F8A7 17 02 39 LBSR PSTRNG PRINT MSG 0269 F8AA 1F 21 TFR Y,X FETCH ADDRESS 0270 F8AC 17 03 79 LBSR OUT4H PRINT ADDR IN HEX 0271 F8AF 17 03 CF LBSR OUT1S OUTPUT SPACE 0272 F8B2 A6 A4 LDA ,Y GET CONTENTS OF CURRENT ADDR. 0273 F8B4 17 03 79 LBSR OUT2H OUTPUT CONTENTS IN ASCII 0274 F8B7 17 03 C7 LBSR OUT1S OUTPUT SPACE 0275 F8BA 17 03 32 LBSR BYTE LOOP WAITING FOR OPERATOR INPUT 0276 F8BD 28 11 BVC CHANGE IF VALID HEX GO CHANGE MEM. LOC. 0277 F8BF 81 08 CMPA #8 IS IT A BACKSPACE (CNTRL H)? 0278 F8C1 27 E1 BEQ MEMC2 PROMPT OPERATOR AGAIN 0279 F8C3 81 18 CMPA #$18 IS IT A CANCEL (CNTRL X)? 0280 F8C5 27 DD BEQ MEMC2 PROMPT OPERATOR AGAIN 0281 F8C7 81 5E CMPA #'^ IS IT AN UP ARROW? 0282 F8C9 27 17 BEQ BACK DISPLAY PREVIOUS BYTE 0283 F8CB 81 0D CMPA #$D IS IT A CR? 0284 F8CD 26 0F BNE FORWRD DISPLAY NEXT BYTE 0285 F8CF 39 CHRTN RTS EXIT ROUTINE 0286 * 0287 * 0288 F8D0 A7 A4 CHANGE STA ,Y CHANGE BYTE IN MEMORY 0289 F8D2 A1 A4 CMPA ,Y DID MEMORY BYTE CHANGE? 0290 F8D4 27 08 BEQ FORWRD $F972 0291 F8D6 17 03 A8 LBSR OUT1S OUTPUT SPACE 0292 F8D9 86 3F LDA #'? LOAD QUESTION MARK 0293 F8DB 17 03 A5 LBSR OUTCH PRINT IT 0294 F8DE 31 21 FORWRD LEAY 1,Y POINT TO NEXT HIGHER MEM LOCATION 0295 F8E0 20 C2 BRA MEMC2 PRINT LOCATION & CONTENTS 0296 F8E2 31 3F BACK LEAY -1,Y POINT TO LAST MEM LOCATION 0297 F8E4 20 BE BRA MEMC2 PRINT LOCATION & CONTENTS 0298 * 0299 * "S" DISPLAY STACK 0300 * HEX-ASCII DISPLAY OF CURRENT STACK CONTENTS FROM 0301 ** CURRENT STACK POINTER TO INTERNAL STACK LIMIT. 0302 * 0303 F8E6 17 02 76 DISSTK LBSR PRTSP PRINT CURRENT STACK POINTER 0304 F8E9 1F 32 TFR U,Y 0305 F8EB 8E DF C0 LDX #STACK LOAD INTERNAL STACK AS UPPER LIMIT 0306 F8EE 30 1F LEAX -1,X POINT TO CURRENT STACK 0307 F8F0 20 05 BRA MDUMP1 ENTER MEMORY DUMP OF STACK CONTENTS 0308 * 0309 * "E" DUMP MEMORY FOR EXAMINE IN HEX AND ASCII 0310 * AFTER CALLING 'IN2ADR' LOWER ADDRESS IN Y-REG. 0311 * UPPER ADDRESS IN X-REG. 0312 * IF HEX ADDRESSES ARE INVALID (V)=1. 0313 * 0314 F8F2 17 02 DF MEMDUMP LBSR IN2ADR INPUT ADDRESS BOUNDRIES 0315 F8F5 29 06 BVS EDPRTN NEW COMMAND IF ILLEGAL HEX 0316 F8F7 34 20 MDUMP1 PSHS Y COMPARE LOWER TO UPPER BOUNDS 0317 F8F9 AC E1 CMPX ,S++ LOWER BOUNDS > UPPER BOUNDS? 0318 F8FB 24 01 BCC AJDUMP IF NOT, DUMP HEX AND ASCII 0319 F8FD 39 EDPRTN RTS ; 0320 * 0321 * ADJUST LOWER AND UPPER ADDRESS LIMITS 0322 * TO EVEN 16 BYTE BOUNDRIES. 0323 * 0324 * IF LOWER ADDR = $4532 0325 * LOWER BOUNDS WILL BE ADJUSTED TO = $4530. 0326 * 0327 * IF UPPER ADDR = $4567 0328 * UPPER BOUNDS WILL BE ADJUSTED TO = $4570. 0329 * 0330 * ENTER WITH LOWER ADDRESS IN X-REG. 0331 * -UPPER ADDRESS ON TOP OF STACK. 0332 * 0333 F8FE 1F 10 AJDUMP TFR X,D GET UPPER ADDR IN D-REG 0334 F900 C3 00 10 ADDD #$10 ADD 16 TO UPPER ADDRESS 0335 F903 C4 F0 ANDB #$F0 MASK TO EVEN 16 BYTE BOUNDRY 0336 F905 34 06 PSHS A,B SAVE ON STACK AS UPPER DUMP LIMIT 0337 F907 1F 20 TFR Y,D $F9A5 GET LOWER ADDRESS IN D-REG 0338 F909 C4 F0 ANDB #$F0 MASK TO EVEN 16 BYTE BOUNDRY 0339 F90B 1F 01 TFR D,X PUT IN X-REG AS LOWER DUMP LIMIT 0340 F90D AC E4 NXTLIN CMPX ,S COMPARE LOWER TO UPPER LIMIT 0341 F90F 27 05 BEQ SKPDMP IF EQUAL SKIP HEX-ASCII DUMP 0342 F911 17 03 61 LBSR INCHEK CHECK FOR INPUT FROM KEYBOARD 0343 F914 27 03 BEQ EDUMP 0344 F916 32 62 SKPDMP LEAS 2,S READJUST STACK IF NOT DUMPING 0345 F918 39 RTS ; 0346 * 0347 * PRINT 16 HEX BYTES FOLLOWED BY 16 ASCII CHARACTERS 0348 * FOR EACH LINE THROUGHOUT ADDRESS LIMITS. 0349 * 0350 F919 34 10 EDUMP PSHS X PUSH LOWER ADDR LIMIT ON STACK 0351 F91B 8E FE C2 LDX #MSG5 POINT TO MSG " - " 0352 F91E 17 01 C2 LBSR PSTRNG PRINT MSG 0353 F921 AE E4 LDX ,S LOAD LOWER ADDR FROM TOP OF STACK 0354 F923 17 03 02 LBSR OUT4H PRINT THE ADDRESS 0355 F926 17 03 56 LBSR OUT2S 2 SPACES 0356 F929 C6 10 LDB #$10 LOAD COUNT OF 16 BYTES TO DUMP 0357 F92B A6 80 ELOOP LDA ,X+ GET FROM MEMORY HEX BYTE TO PRINT 0358 F92D 17 03 00 LBSR OUT2H OUTPUT HEX BYTE AS ASCII 0359 F930 17 03 4E LBSR OUT1S OUTPUT SPACE 0360 F933 5A DECB $F9D1 DECREMENT BYTE COUNT 0361 F934 26 F5 BNE ELOOP CONTINUE TIL 16 HEX BYTES PRINTED 0362 * 0363 * PRINT 16 ASCII CHARACTERS 0364 * IF NOT PRINTABLE OR NOT VALID 0365 * ASCII PRINT A PERIOD (.) 0366 F936 17 03 46 LBSR OUT2S 2 SPACES 0367 F939 AE E1 LDX ,S++ GET LOW LIMIT FRM STACK - ADJ STACK 0368 F93B C6 10 LDB #$10 SET ASCII CHAR TO PRINT = 16 0369 F93D A6 80 EDPASC LDA ,X+ GET CHARACTER FROM MEMORY 0370 F93F 81 20 CMPA #$20 IF LESS THAN $20, NON-PRINTABLE? 0371 F941 25 04 BCS PERIOD IF SO, PRINT PERIOD INSTEAD 0372 F943 81 7E CMPA #$7E IS IT VALID ASCII? 0373 F945 23 02 BLS PRASC IF SO PRINT IT 0374 F947 86 2E PERIOD LDA #'. LOAD A PERIOD (.) 0375 F949 17 03 37 PRASC LBSR OUTCH PRINT ASCII CHARACTER 0376 F94C 5A DECB DECREMENT COUNT 0377 F94D 26 EE BNE EDPASC 0378 F94F 20 BC BRA NXTLIN 0379 * 0380 ***** "B" SET BREAKPOINT ***** 0381 * 0382 F951 17 02 8B BRKPNT LBSR IN1ADR GET BREAKPOINT ADDRESS 0383 F954 29 1E BVS EXITBP EXIT IF INVALID HEX ADDR. 0384 F956 8C DF C0 CMPX #STACK ADDRESS ILLEGAL IF >=$DFC0 0385 F959 24 1A BCC BPERR IF ERROR PRINT (?), EXIT 0386 F95B 34 10 PSHS X $FA82 PUSH BP ADDRESS ON STACK 0387 F95D 8E FF FF LDX #$FFFF LOAD DUMMY ADDR TO TEST BP TABLE 0388 F960 8D 55 BSR BPTEST TEST BP TABLE FOR FREE SPACE 0389 F962 35 10 PULS X POP BP ADDRESS FROM STACK 0390 F964 27 0F BEQ BPERR (Z) SET, OUT OF BP TABLE SPACE 0391 F966 A6 84 LDA ,X GET DATA AT BREAKPOINT ADDRESS 0392 F968 81 3F CMPA #$3F IS IT A SWI? 0393 F96A 27 09 BEQ BPERR IF SWI ALREADY, INDICATE ERROR 0394 F96C A7 A0 STA ,Y+ SAVE DATA BYTE IN BP TABLE 0395 F96E AF A4 STX ,Y SAVE BP ADDRESS IN BP TABLE 0396 F970 86 3F LDA #$3F LOAD A SWI ($3F) 0397 F972 A7 84 STA ,X SAVE SWI AT BREAKPOINT ADDRESS 0398 F974 39 EXITBP RTS ; 0399 * 0400 * INDICATE ERROR SETTING BREAKPOINT 0401 * 0402 F975 17 03 09 BPERR LBSR OUT1S OUTPUT SPACE 0403 F978 86 3F LDA #'? LOAD (?), INDICATE BREAKPOINT ERROR 0404 F97A 16 03 06 LBRA OUTCH PRINT "?" 0405 * 0406 *** "X" CLEAR OUTSTANDING BREAKPOINTS *** 0407 * 0408 F97D 10 8E DF D3 XBKPNT LDY #BPTBL POINT TO BREAKPOINT TABLE 0409 F981 C6 08 LDB #8 LOAD BREAKPOINT COUNTER 0410 F983 8D 18 XBPLP BSR RPLSWI REMOVE USED ENTRY IN BP TABLE 0411 F985 5A DECB $FAAC DECREMENT BP COUNTER 0412 F986 26 FB BNE XBPLP END OF BREAKPOINT TABLE? 0413 F988 39 RTS 0414 * 0415 ***** SWI ENTRY POINT ***** 0416 * 0417 F989 1F 43 SWIE TFR S,U TRANSFER STACK TO USER POINTER 0418 F98B AE 4A LDX 10,U LOAD PC FROM STACK INTO X-REG 0419 F98D 30 1F LEAX -1,X ADJUST ADDR DOWN 1 BYTE. 0420 F98F 8D 26 BSR BPTEST FIND BREAKPOINT IN BP TABLE 0421 F991 27 04 BEQ REGPR IF FOUND, REPLACE DATA AT BP ADDR 0422 F993 AF 4A STX 10,U SAVE BREAKPOINT ADDR IN STACK 0423 F995 8D 06 BSR RPLSWI GO REPLACE SWI WITH ORIGINAL DATA 0424 F997 17 02 1C REGPR LBSR REGSTR GO PRINT REGISTERS 0425 * 0426 IFD TRAOPT 0427 LDX #0 0428 STX TRACNT 0429 ENDIF TRAOPT 0429 ENDIF TRAOPT 0430 * 0431 F99A 16 FE B9 LBRA NEXTCMD GET NEXT COMMAND 0432 * 0433 F99D AE 21 RPLSWI LDX 1,Y LOAD BP ADDRESS FROM BP TABLE 0434 F99F 8C DF C0 CMPX #STACK COMPARE TO TOP AVAILABLE USER MEMORY 0435 F9A2 24 0A BCC FFSTBL GO RESET TABLE ENTRY TO $FF'S 0436 F9A4 A6 84 LDA ,X GET DATA FROM BP ADDRESS 0437 F9A6 81 3F CMPA #$3F IS IT SWI? 0438 F9A8 26 04 BNE FFSTBL IF NOT, RESET TABLE ENTRY TO $FF'S 0439 F9AA A6 A4 LDA ,Y GET ORIGINAL DATA FROM BP TABLE 0440 F9AC A7 84 STA ,X $FAD3 RESTORE DATA AT BP ADDRESS 0441 F9AE 86 FF FFSTBL LDA #$FF LOAD $FF IN A-ACC 0442 F9B0 A7 A0 STA ,Y+ RESET BREAKPOINT TABLE DATA TO $FF'S 0443 F9B2 A7 A0 STA ,Y+ RESET BREAKPOINT TABLE ADDR TO $FF'S 0444 F9B4 A7 A0 STA ,Y+ 0445 F9B6 39 RTS 0446 * 0447 ** SEARCH BREAKPOINT TABLE FOR MATCH ** 0448 * 0449 F9B7 10 8E DF D3 BPTEST LDY #BPTBL POINT TO BREAKPOINT TABLE 0450 F9BB C6 08 LDB #8 LOAD BREAKPOINT COUNTER 0451 F9BD A6 A0 FNDBP LDA ,Y+ LOAD DATA BYTE 0452 F9BF AC A1 CMPX ,Y++ COMPARE ADDRESS, IS IT SAME? 0453 F9C1 27 04 BEQ BPADJ IF SO, ADJUST POINTER FOR TABLE ENTRY 0454 F9C3 5A DECB IF NOT, DECREMENT BREAKPOINT COUNTER 0455 F9C4 26 F7 BNE FNDBP AND LOOK FOR NEXT POSSIBLE MATCH 0456 F9C6 39 RTS ; 0457 * 0458 * 0459 F9C7 31 3D BPADJ LEAY -3,Y MOVE POINTER TO BEGIN OF BP ENTRY 0460 F9C9 39 RTS 0461 * 0462 IFD TRAOPT 0463 * 0464 ** TRACE from address AAAA BB bytes 0465 * 0466 TRACE LBSR ALTPC1 SET UP NEW PC 0467 BVS TREXIT ADDRESS ERROR, EXIT 0468 LBSR OUT1S 0469 LBSR IN1ADR Fetch Byte Count 0470 BVS TREXIT Byte Count error, EXIT 0471 STX TRACNT 0472 * 0473 LDX NMI Save NMI Vector 0474 STX NMISAV 0475 LDX #NMIE Set up NMI for Tracing 0476 STX NMI 0477 LBSR TRAINZ Initialise Hardware 0478 BRA TRACEG Start Trace 0479 TREXIT RTS 0480 * 0481 * CRA0 = 0 CA1 IRQ DISAB, CRA0 = 1 CA1 IRQ ENAB 0482 * CRA1 = 1 CA1 Rising edge IRQ 0483 * CRA2 = 0 TADATA = Data Direction, CRA2 = 1 TADATA = I/O Register 0484 * CRA3 = 0 CA2 = 0 output, CRA3 = 1 CA2 = 1 0485 * CRA4 = 1 ] CA2 = Set/Reset output 0486 * CRA5 = 1 ] 0487 * CRA6 = X CA2 Input Interrupt Flag 0488 * CRA7 = X CA1 Interrupt Flag 0489 * 0490 * CRB0 = 0 CB1 IRQ DISAB, CRB0 = 1 CA1 IRQ ENAB 0491 * CRB1 = 1 CB1 Rising edge IRQ 0492 * CRB2 = 0 TBDATA = Data Direction, CRB2 = 1 TBDATA = I/O Register 0493 * CRB3 = 0 CB2 = 0 output, CRB3 = 1 CB2 = 1 0494 * CRB4 = 1 ] CB2 = Set/Reset output 0495 * CRB5 = 1 ] 0496 * CRB6 = X CB2 Input Interrupt Flag 0497 * CRB7 = X CB1 Interrupt Flag 0498 * 0499 * 0500 ** TRACE NMI ENTRY POINT 0501 * 0502 NMIE TFR S,U 0503 LDA #$36 Disable Interrupt, CA2 Low 0504 STA TACTRL 0505 LDA TADATA Clear Interrupt