Code Monkey home page Code Monkey logo

spectrum4's Issues

Investigate strange (false?) assembly warnings

See warnings in CI:

   552) [0.003s] src/spectrum128k/tests: z80-unknown-elf-as -o test_po_fetch.o test_po_fetch.runner
test_po_fetch.s: Assembler messages:
test_po_fetch.s:44: Warning: 8-bit overflow (-231)
test_po_fetch.s:60: Warning: 8-bit overflow (-163)
test_po_fetch.s:76: Warning: 8-bit overflow (-231)

and later on:

  546) [0.006s] src/spectrum128k/tests: z80-unknown-elf-as -o test_po_store.o test_po_store.runner
test_po_store.s: Assembler messages:
test_po_store.s:26: Warning: 8-bit overflow (-231)
test_po_store.s:48: Warning: 8-bit overflow (-163)
test_po_store.s:71: Warning: 8-bit overflow (-231)

Intermittent hang in FUSE test suites

Sometimes fuse tests don't run, and the process hangs. This is typically resolved by rerunning tup. However,

  1. The tests shouldn't hang, so we should find out what is going on. I think the hang occurs on startup before the individual tests are run, rather than e.g. midway through a test. Need to validate this hypothesis.
  2. There is a rerun mechanism built into fuse-tests.sh that is intended to workaround the issue, yet it doesn't work, for some unknown reason. It implements retries for the test suite, yet if one fails, they all seem to fail. This is curious, since rerunning tup normally fixes it. Perhaps a sleep is needed? In any case, would be better to fix the problem at source.

One reason I've not looked too deeply is that the problem may lie in fuse, tup, bash, or something outside of this code base, and that may be tricky to diagnose.

128k tests to report which sysvar unexpected RAM values relates to

This is the Spectrum 128k runtests.s equivalent change to 149d2ae (where the same feature was implemented for Spectrum +4 in aarch64).

For example, instead of reporting:

FAIL: po_msg_paper_ink_9_1: RAM page 5 offset 0x1c8f changed from 0x38 to 0x13, but should not have changed.

report something like this:

FAIL: po_msg_paper_ink_9_1: System variable ATTR_T changed from 0x38 to 0x13, but should not have changed.

Note: not all system variables are one byte, so some care is needed to generate appropriate output depending on the storage size of the system variable. Also note, space is tight, so routine and data should be as compact as possible.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.