English fork of the Japanese RaSCSI project. RaSCSI allows a Raspberry Pi to function as emulated SCSI devices (hard disk, CD-ROM, and others) for vintage SCSI-based computers and devices.
Go to file
Uwe Seimet 119dd55ef0
Cleanup (memory management, STL containers, type safety) based on SonarCloud report (#845)
* Removed static/global variable

* No need for ControllerManager as a singleton

* Updated factory handling

* Replaced loops

* Added const

* Added translations, fixed TODO, simplified operation creation

* Fixed SonarCloud warnings

* Replaced void * by BYTE *

* Added explicit mode_page_datetime struct

* Unit test updates

* Use enum classes

* Upddated file size check

* Use C++ output formatting

* Removed unused code

* Use array for garbage buffer

* Fixed data returned by READ CAPACITY(10)

* For mode pages: Replaced BYTE by std::byte

* Use std::byte for INQUIRY

* Use std::byte for REQUEST SENSE

* Replaced C array by vector

* Replaced C style array

* Replaced BYTE by std::byte

* Replaced DWORD

* Use more byte arreys

* Updated CTapDriver initialization/deletion

* Made status uint32_t instead of DWORD

* Replaced command byte array by vector

* Updated error handling

* Removed obsolete casts

* Improved locality of code

* rw_command has become obsolete

* Dynamically allocate command byte buffer

* Simplified receiving commands

* Use references

* Type safety update, dispatcher update

* Removed macros, replaced BOOL/FALSE/TRUE
2022-09-21 08:27:51 +02:00
.github SonarCloud coverage setup, fixed numerous SonarCloud issues (#840) 2022-09-10 07:59:41 +02:00
doc Added support for .hd1 (SCSI-1) image files (#828) 2022-09-07 21:45:00 -05:00
docker Add Docker environment for development and testing of the web UI 2022-09-08 12:19:30 +01:00
docs Merge Hw 2p4 to develop (#109) 2021-06-08 19:06:29 -05:00
hw Added Schematic PDF file and Step 3D model (#726) 2022-03-13 20:32:28 -05:00
python Merge pull request #819 from nucleogenic/docker-dev-environment 2022-09-08 12:57:48 +01:00
src Cleanup (memory management, STL containers, type safety) based on SonarCloud report (#845) 2022-09-21 08:27:51 +02:00
test/robot Create new test cases for checking that the user can specify the TCP Port number (#154) 2021-07-27 18:40:00 -05:00
_config.yml Set theme jekyll-theme-midnight 2020-07-04 20:39:04 -05:00
.dockerignore Add Docker environment for development and testing of the web UI 2022-09-08 12:19:30 +01:00
.gitignore Add Docker environment for development and testing of the web UI 2022-09-08 12:19:30 +01:00
easyinstall.sh Add Docker environment for development and testing of the web UI 2022-09-08 12:19:30 +01:00
LICENSE Updated copyrights and versions 2021-10-29 21:55:24 -05:00
lido-driver.img improved HD creator with partioning and formatting Drive with HFS. (#51) 2020-11-07 18:10:09 -06:00
README.md Added workflow configurations and README updates (#832) 2022-09-06 08:17:33 +02:00

What is RaSCSI Reloaded?

RaSCSI Reloaded is a virtual SCSI device emulator that runs on a Raspberry Pi. It runs in userspace, and can emulate several SCSI devices at one time. There is a control interface to attach / detach drives during runtime, as well as insert and eject removable media. This project is aimed at users of vintage Macintosh and Atari computers and more (see compatibility list) from the 1980's and 1990's.

Please check out the full story with much more detail on the wiki!

How do I contribute?

RaSCSI Reloaded is using the Gitflow Workflow. A quick overview:

  • The master branch should always reflect the contents of the last stable release
  • The develop branch should contain the latest tested & approved updates. Pull requests should be used to merge changes into develop.
  • The rest of the feature branches are for developing new features
  • A tag will be created for each "release". The releases will be named .. where the release number is incremented for each subsequent release tagged in the same calendar month. The first release of the month of January 2021 is called "21.01.01", the second one in the same month "21.01.02" and so on.

Typically, releases will only be planned every few months.

When you are ready to contribute code to RaSCSI Reloaded, follow the GitHub Forking and Pull Request workflow to create your own fork where you can make changes, and then contribute it back to the project. Please remember to always make Pull Requests against the develop branch.

If you want to add a new translation, or improve upon an existing one, please follow the instructions in the Web Interface README. Once the translation is complete, please use the same workflow as above to contribute it to the project.

I sell on TindieSonarCloud

GitHub Sponsors

Thank you to all of the GitHub sponsors who support the development community!

Special thank you to the Gold level sponsors!

Special thank you to the Silver level sponsors!