Jump to content

uyjulian

6502
  • Content Count

    84
  • Joined

  • Last visited

Recent Profile Visitors

361 profile views
  1. uyjulian

    GCC on A/UX?

    Binutils does not require any patches. The version used is 2.10.1. The last version of Binutils to support m68k-coff format is 2.16.1. GCC requires patches. I ported the patch to 2.7.2.3 in unified format. Retro68 exists, but it creates applications for the Macintosh environment, not the UNIX environment. https://github.com/autc04/Retro68
  2. uyjulian

    GCC on A/UX?

    If I remember correctly, GCC is pre-installed on this image: https://github.com/unxmaal/aux_sdcard Be aware that it is an older GCC based on the 2.7 series. I planned to port GCC 10 but other things took my time. You cannot use the GCC patch as-is when cross-compiling, since it requires the native assembler instead of the one from GNU Binutils. It would be nice to use QEMU userspace emulation to run the programs from A/UX…
  3. uyjulian

    RaSCSI Development Thread

    I think it would be possible for terminator power. However, as mentioned before, the Raspberry Pi needs to be up first before the Mac. Powering the Raspberry Pi using the terminator power would be possible if the Mac has a lot of RAM, and thus takes a while doing the RAM check, giving time for the Raspberry Pi to start up.
  4. uyjulian

    RaSCSI Development Thread

    A SCSI Manager API shim on the Pi side would be nice so you don't have to learn 2 different APIs… https://developer.apple.com/library/archive/documentation/mac/pdf/Devices/SCSI_Manager.pdf // Constants enum { /* TIB instruction opcodes */ scInc = 1, /* transfer data, increment buffer pointer */ scNoInc = 2, /* transfer data, don’t increment pointer */ scAdd = 3, /* add long to address */ scMove = 4, /* move long to address */ scLoop = 5, /* decrement counter and loop if > 0 */ scNop = 6, /* no operation */ scStop = 7, /* stop TIB execution */ scComp = 8, /* compare SCSI data with memory */ /* signature values */ sbSIGWord = 0x4552, /* driver descriptor map signature */ pMapSIG = 0x504D /* partition map signature */ }; // Data Types struct SCSIInstr { unsigned short scOpcode; /* operation code */ unsigned long scParam1; /* first parameter */ unsigned long scParam2; /* second parameter */ }; typedef struct SCSIInstr SCSIInstr; struct Block0 { unsigned short sbSig; /* device signature */ unsigned short sbBlkSize; /* block size of the device*/ unsigned long sbBlkCount; /* number of blocks on the device*/ unsigned short sbDevType; /* reserved */ unsigned short sbDevId; /* reserved */ unsigned long sbData; /* reserved */ unsigned short sbDrvrCount; /* number of driver descriptor entries */ unsigned long ddBlock; /* first driver’s starting block */ unsigned short ddSize; /* driver’s size, in 512-byte blocks */ unsigned short ddType; /* operating system type (MacOS = 1) */ unsigned short ddPad[243]; /* additional drivers, if any */ }; typedef struct Block0 Block0; Partition { unsigned short pmSig; /* partition signature */ unsigned short pmSigPad; /* reserved */ unsigned long pmMapBlkCnt; /* number of blocks in partition map */ unsigned long pmPyPartStart; /* first physical block of partition */ unsigned long pmPartBlkCnt; /* number of blocks in partition */ unsigned char pmPartName[32];/* partition name */ unsigned char pmParType[32]; /* partition type */ unsigned long pmLgDataStart; /* first logical block of data area */ unsigned long pmDataCnt; /* number of blocks in data area */ unsigned long pmPartStatus; /* partition status information */ unsigned long pmLgBootStart; /* first logical block of boot code */ unsigned long pmBootSize; /* size of boot code, in bytes */ unsigned long pmBootAddr; /* boot code load address */ unsigned long pmBootAddr2; /* reserved */ unsigned long pmBootEntry; /* boot code entry point */ unsigned long pmBootEntry2; /* reserved */ unsigned long pmBootCksum; /* boot code checksum */ unsigned char pmProcessor[16]; /* processor type */ unsigned short pmPad[188]; /* reserved */ }; typedef struct Partition Partition; // Functions pascal OSErr SCSIReset (void); pascal OSErr SCSIGet (void); pascal OSErr SCSISelect (short targetID); pascal OSErr SCSISelAtn (short targetID); pascal OSErr SCSICmd (Ptr buffer, short count); pascal OSErr SCSIMsgIn (short *message); pascal OSErr SCSIMsgOut (short message); pascal OSErr SCSIRead (Ptr tibPtr); pascal OSErr SCSIRBlind (Ptr tibPtr); pascal OSErr SCSIWrite (Ptr tibPtr); pascal OSErr SCSIWBlind (Ptr tibPtr); pascal OSErr SCSIComplete (short *stat, short *message, unsigned long wait); pascal short SCSIStat (void);
  5. The Unarchiver already exists. For something written in C, this project was made to extract System 6 disk images, based on The Unarchiver sources: https://www.gryphel.com/c/minivmac/extras/ua608d/index.html
  6. uyjulian

    C Compiler & 68k asm

    https://github.com/autc04/Retro68#apple-universal-interfaces-vs-multiversal-interfaces
  7. uyjulian

    C Compiler & 68k asm

    Retro68 has assembler and C compiler targeting classic Mac OS.
  8. uyjulian

    RaSCSI Development Thread

    For the ethernet driver, someone developed some hardware that can be used with existing driver: I wonder how portable it is to RaSCSI… I haven't taken a look at the sources
  9. uyjulian

    Stuffit Magic Numbers

    I would recommend that you check out unar source code, which can extract Stuffit files (including resfork): https://cdn.theunarchiver.com/downloads/TheUnarchiverSource.zip
  10. uyjulian

    SCSI to Ethernet Adapter on New Hardware

    Source code is up, so you can start manufacturing your own now. https://github.com/saybur/scuznet
  11. If you connect to another computer using a crossover cable or network card that supports MDI-X, you can disable auto negotiation to allow the link to work.
  12. uyjulian

    SCSI to Ethernet Adapter on New Hardware

    Source code is already up, so you can manufacture your own. https://github.com/saybur/scuznet
  13. uyjulian

    SCSI to Ethernet Adapter on New Hardware

    It may be possible to do offloading similar to how A/ROSE did it. However, you would need to write a new INIT and/or adev for it.
  14. uyjulian

    SCSI to Ethernet Adapter on New Hardware

    I'm curious if it's possible to make a SCSI port multiplier, or if it's daisy chain only. There's also the Scuzzygraph, which provides a display through SCSI. A device similar to that would be nice to easily add more displays. --- I'm curious if some processing is offloaded (similar to the Apple Ethernet NB card).
  15. uyjulian

    SCSI to Ethernet Adapter on New Hardware

    Would this be any faster than serial?
×