Compare commits
3 Commits
63c3167d9f
...
6c549b164c
| Author | SHA1 | Date | |
|---|---|---|---|
| 6c549b164c | |||
| 8bb6058a04 | |||
| dba7b5c43c |
@ -142,6 +142,7 @@ jobs:
|
|||||||
cp -r dist/modules "$root"/ # modules/iec_listener_<kernel_version>.ko
|
cp -r dist/modules "$root"/ # modules/iec_listener_<kernel_version>.ko
|
||||||
cp kernel/selftest.sh "$root"/ # one-shot hardware self-test
|
cp kernel/selftest.sh "$root"/ # one-shot hardware self-test
|
||||||
cp launch.sh "$root"/ # load module -> run frontend -> unload
|
cp launch.sh "$root"/ # load module -> run frontend -> unload
|
||||||
|
chmod +x "$root/launch.sh" "$root/selftest.sh"
|
||||||
# iecpoc Python frontend + its packaging metadata. launch.sh pip-installs
|
# iecpoc Python frontend + its packaging metadata. launch.sh pip-installs
|
||||||
# this on the Pi; the build reads pyproject.toml's readme = "README.md",
|
# this on the Pi; the build reads pyproject.toml's readme = "README.md",
|
||||||
# so README.md must travel with it. __pycache__ is stripped to stay clean.
|
# so README.md must travel with it. __pycache__ is stripped to stay clean.
|
||||||
|
|||||||
@ -286,6 +286,10 @@ static void run_state_machine(void)
|
|||||||
bool eoi;
|
bool eoi;
|
||||||
enum iec_rx rc;
|
enum iec_rx rc;
|
||||||
|
|
||||||
|
if (kthread_should_stop()) {
|
||||||
|
iec_data_release();
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (db_reset_asserted())
|
if (db_reset_asserted())
|
||||||
goto reset;
|
goto reset;
|
||||||
|
|
||||||
@ -313,6 +317,10 @@ static void run_state_machine(void)
|
|||||||
/* LISTENER: data phase */
|
/* LISTENER: data phase */
|
||||||
emit_record(IEC_KIND_EVENT, IEC_EV_ATN_RELEASED, IEC_FLAG_ADDRESSED);
|
emit_record(IEC_KIND_EVENT, IEC_EV_ATN_RELEASED, IEC_FLAG_ADDRESSED);
|
||||||
for (;;) {
|
for (;;) {
|
||||||
|
if (kthread_should_stop()) {
|
||||||
|
iec_data_release();
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (db_reset_asserted())
|
if (db_reset_asserted())
|
||||||
goto reset;
|
goto reset;
|
||||||
if (db_atn_asserted()) {
|
if (db_atn_asserted()) {
|
||||||
|
|||||||
@ -30,7 +30,7 @@
|
|||||||
* confirmed-working reference listener (5 us). sd2iec / the 1571 ROM
|
* confirmed-working reference listener (5 us). sd2iec / the 1571 ROM
|
||||||
* use a comparable few-microsecond debounce. Far shorter than a real IEC bit
|
* use a comparable few-microsecond debounce. Far shorter than a real IEC bit
|
||||||
* (tens of us), so it never smears valid data. */
|
* (tens of us), so it never smears valid data. */
|
||||||
#define IEC_DEBOUNCE_US 10
|
#define IEC_DEBOUNCE_US 5
|
||||||
|
|
||||||
/* Between-bytes minimum hold before the talker releases CLK for the next byte
|
/* Between-bytes minimum hold before the talker releases CLK for the next byte
|
||||||
* (Tbb). We simply wait for the next CLK transition; this is documentary. */
|
* (Tbb). We simply wait for the next CLK transition; this is documentary. */
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user