This App tests a compact flash card. This should help identify card compatibility issues and also hardware issues.
Not all Compact Flash cards work with typical Z80 bus based Compact Flash interfaces. Read about Compact Flash Reliability here.
Version 1.2 supports Z80 and Z180 processors, and CompactFlash cards at addresses 0x10 and 0x90. It is therefore compatible with RC2014 and Z50Bus systems.
This program is written as an App for the Small Computer Monitor v1.0
and later.
This program writes test data to a compact flash card and verifies it.
For each sector:
Fill sector+0 with 0xFF, 0xFF, 0x00 (repeating)
Fill sector+1 with 0xAA, 0x55, 0xF0 (repeating)
Verify both sectors contain the correct data
Increment sector number
Each sector is only written 2 times during this test, so flash wear should not be a concern.
The program pauses if an error occurs, giving you the choice to continue
or end the test.
The program implements the recommended status checks and also tests for errors reported by the Compact Flash card. As a result, it should be
reliable. It is also informative if problems are detected.
Older version (1.1)
Version 1.1 supports Z80 and Z180 processors, and CompactFlash cards at addresses 0x10 and 0x90. It is therefore compatible with RC2014 and Z50Bus systems.
This program is written as an App for the Small Computer Monitor v1.0
and later.
This program writes test data to a compact flash card and verifies it.
For each sector:
Fill sector+0 with 0x00
Fill sector+1 with 0xFF
Fill sector+2 with 0x55
Fill sector+3 with 0xAA
Verify all 4 sectors contain the correct data
Increment sector number
Each sector is only written 4 times during this test, so flash wear should not be a concern.
The program pauses if an error occurs, giving you the choice to continue
or end the test.
The program implements the recommended status checks and also tests for errors reported by the Compact Flash card. As a result, it should be
reliable. It is also informative if problems are detected.
Older version (1.0)
Recommended for RC2014 and LiNC80 systems |
Requirements: Small Computer Monitor (SCM) v1.0 or later Z80 or Z180 processor Compact flash card at address 0x10 |
SCM_CF_Test_Z80_CFx10_code8000.hex |
Version 1.0 (2022-03-02) |
Recommended for Z50Bus systems |
Requirements: Small Computer Monitor (SCM) v1.0 or later Z80 or Z180 processor Compact flash card at address 0x90 |
SCM_CF_Test_Z80_CFx90_code8000.hex |
Version 1.0 (2022-03-02) |
Source code |
SCM_CF_Test.asm |
Version 1.0 (2022-03-02) |
Below is an example of the terminal output when loading and running the App.
Small Computer Monitor - RC2014 * <<< send hex file here >>> *Ready * *g8000 Compact flash card test v1.1 by Stephen C Cousins Card at address $10: Number of sectors on card: $00007A80 Card size: 16MB Card's self diagnostic test passed WARNING: This will erase all data from the card Do you wish to continue? (Y/N) Sector: $00000000 passed Sector: $00000001 passed Sector: $00000002 passed Sector: $00000003 passed Sector: $00000004 passed Sector: $00000005 passed Sector: $00000006 passed Sector: $00000007 passed Sector: $00000008 passed Sector: $00000009 passed Sector: $0000000A passed Sector: $0000000B passed Sector: $0000000C passed Sector: $0000000D passed Sector: $0000000E passed Sector: $0000000F passed Sector: $00000010 passed Sector: $00000011 passed Sector: $00000012 passed Sector: $00000013 passed Sector: $00000014 passed Sector: $00000015 passed Sector: $00000016 passed Sector: $00000017 passed Sector: $00000018 passed Sector: $00000019 passed Sector: $0000001A passed Sector: $0000001B passed Sector: $0000001C passed Sector: $0000001D passed Sector: $0000001E passed Sector: $0000001F passed Sector: $00000020 passed Sector: $00000021 passed Sector: $00000022 passed Sector: $00000023 passed Sector: $00000024 passed Sector: $00000025 passed Sector: $00000026 passed Sector: $00000027 passed