Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test Pull request for sy2002 #10

Closed
wants to merge 146 commits into from
Closed

Conversation

paich64
Copy link

@paich64 paich64 commented Nov 19, 2022

Amok here :)

sy2002 and others added 30 commits July 11, 2022 13:43
Saves 256 16-bit words, i.e. 512 bytes of QNICE RAM
The roadmap is not in a dedicated file versus being an "appendix" of the revision history. Additionally a new entry for a complete support of the D64 file format was added.
Done by by decreasing the stable time of the signal debouncer
switch QNICE to SD-write/FAT32-write dev. branch and switch C64MEGA65 into debug mode
enhanced "operating system" call table by the new FAT32 "write byte" function
This updates the whole C64 to the very QNICE version that is still WIP but that is able to write to FAT32 formatted SD cards with these constraints: Only write to existing files, only write within the boundaries of exiting files. But this is good enough for writing to D64 files which are always existing and which have a fixed file size.
Solves erratic reset and core start behavior introduced by new new QNICE release (?!)
Milestone! Simple test program in BASIC writes and reads back successfully. Currently, the writing occors only in the RAM-buffered disk image, nothing is written to the SD card.
Only works with very small files because the writing is too slow so that after a while we run into timing problems. Current hypothesis is that fseek is the culprit.
Uses a workaround to flush the disk image cache: You need to unmount the D64 disk image using the SPACE key: only then the write cache/disk image cache is written to the SD card
Place SD card controller in the middle between the left and right FPGA boundary because the output ports are at the opposide edges. This position has proven to be stable when it comes to reading/writing the SD card.
There is still a problem where only the lower 8 bits of each 16-bit word
in the HyperRAM is used. The solution is to make use of the byte-nable
signal.
vdrives interface handles cache, reset prevention works, drive led color can be changed
vdrives supports flushing-start and flushing logic, config.vhd allows to configure the shell's background writing (flushing) behavior, the shell now really supports multiple drives by supporting one open file handle per drive
fixed the location of the HANDLES_FILES table: needs to be in ROM otherwise it will not be initialized upon start-up
The drive led is not blinking any more during normal read/write operations. It behaves now like the real drive led and only blinks on errors.
The new MAX10 driver from the M2M framework shows an erratic reset behavior, people on Discord complained. The old driver used here sometimes shows an erratic core boot behavior, but was also used for Version 3 of C64MEGA65 and nobody complained so it seems to be resonably stable
Trying to counter "ambulance lights" upon core startup
sy2002 and others added 27 commits November 17, 2022 11:55
* C64 Emulator Test Suite V2.15
* sy2002's Disk-Write-Test.d64: Basic program that saves and loads data to test the core's ability to persistently save data to disk images
* AmokPhaze101's demo testrun: The ultimate regression test
While browsing directories with a large amount of subdirectories (e.g. large game libraries): When you entered a subdirectory located on a page other than page one (e.g. by scrolling down quite a bit) and then left this very subdirectory (one level up), then the selection cursor jumped back to page one.
Fixed file browsing bug that still displayed the old SD card's directory when you changed the SD card while the file browser was *not* open. (The bug did not occur when you changed the SD card while the file *was* open.)
@sy2002
Copy link
Collaborator

sy2002 commented Nov 19, 2022

This was just a test. Closing it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants