Jump to content

pokowaka

User
  • Content Count

    12
  • Joined

  • Last visited

About pokowaka

  • Rank
    Pong

Profiel

  • Geslacht
    Man
  • Locatie
    San Francisco
  • Console
    p2000t

Profile Fields

  • Interesses
    Krijg P2000 in mess aan de praat

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Ja, dat is stukken beter!
  2. W00T! Cassette support is nu in Mame! Het is nog niet helemaal perfect: - Soms onverwachte cassette fout L - Soms lukt het niet om van een laad scherm (piraten avontuur, ghosthunt) de juiste file te laden. Dit zijn waarschijnlijk timing gerelateerde problemen. - Ongerelateerd aan de mini cassette, soms hangt mame voor een paar seconden.
  3. Ik heb de checksum code achterhaald: and 001h ;07ac e6 01 ; DE with checksum is active xor e ;07ae ab ; a = written bit. ld e,a ;07af 5f ; e = e ^ (bit written) and 001h ;07b0 e6 01 jr z,l07d3h ;07b2 28 1f ; through a complex web it will jump to chksum (timing) ld a,002h ;07b4 3e 02 xor e ;07b6 ab ld e,a ;07b7 5f ; e = e ^ 0x02 ld a,040h ;07b8
  4. Dat is volgens mij de terugspoel routine. Ik ontdekte dat er in terug blok (0c61) routine iets vreemds aan de hand was. Hier zijn de stukjes: ;; Read the RDA state and set bit 5 in A ;; RDA_state | BET ;; Note when the tape is moving in reverse this actually gets the RDC bit. get_rda: in a,(cas_inp) ;0cee db 20 and 080h ;0cf0 e6 80 set 5,a ;0cf2 cb ef ret ;0cf4 c9 ;; This seems to read a byte when the tape is moving backwards. ;; Note that RDA <-> RDC when moving bac
  5. Nog een leuke ontdekking: De P2000 kan zowel vooruit, als achteruit van de MDCR lezen (en doet dit ook) Als de REV bit hoog is en de cassette terugspoelt dan worden RDC en RDA gewisseld. De reden waarom de Cassette fout B optreed is omdat de P2000 bits telt tijdens het terug spoelen en uiteindelijk het begin van de tape bereikt. Het goede nieuws is dat het nu lijkt of alles werkt!
  6. Ik ben weer een klein stukje verder. Blijkt dat er dus een flip-flop achter de RDC van de cassette recorder zit. (tsk, tsk, had ik gemist). Ik krijg nog een cassette fout B tijdens het lezen, maar blokken beginnen herkend to worden:
  7. Dankzij de gebruiksaanwijzing van de cassette recorder begint het de goede kant uit te gaan. De maintenance module slaagt nog niet maar schrijven en (offline) decoderen gaat al wel goed: De file is gemaakt met Maintenance 2 module als volgt: 9 - 1 >> Nu zit je in de debugger; TB; Spoel tape terug F 7100 400 CC; Fill memory region CC F 7100 10 00 ; Fill memory region 16 bytes of 00 F 7110 10 01; etc.. etc.. TW 7100 400; Schrijf memory region 1kb van vanaf address 7100 File: F7100-400-01-02.ok.txt1 aa 0 0 aa [Sync marker] aa [Pre Am
  8. Pull request is er nu. Ik heb de pdf's van @HAL9000 ook toegevoegd.
  9. Ik geloof dat ik ondertussen documentatie voor de mdcr heb gevonden: https://github.com/pokowaka/documentation/blob/master/hardware/micro-cass.pdf
  10. @HAL9000 bedankt! Wij zijn in ieder geval een stap verder met de bits! @cancom bedankt voor het verwijzen naar de Maintenance module. Die had ik inderdaad gemist. De maintenance module zal het uitzoek werk waarschijnlijk een stuk makkelijker maken! Ik heb al inderdaad al 30 jaar (of meer?) geen P2000 meer. Mijn kleinere ik had ooit een goed plan om het toetsenbord schoon te maken en toen waren er ineens geen toetsen meer
  11. Bedankt! Dat is erg bruikbaar. Ik heb een assembly dump gemaakt van de rom en ben langzaam documentatie aan het toevoegen. Zie hier https://github.com/pokowaka/documentation/blob/master/programming/p2000.asm. Een vork van https://github.com/p2000t/documentation waar veel documentatie is te vinden. Hier is een stukje assembly wat suggereert dat WEN = 1 als write enabled is (stopje present) castest: in a,(cas_inp) ;0b83 db 20 ; read port 20 and 018h ;0b85 e6 18 ; mask CIP WEN (0001 1000) ret z
  12. Ik ben aan het kijken of ik de P2000 cassette emulatie aan de praat kan krijgen in Mess. Het probleem is dat: 1. De documentatie niet lijkt te kloppen, of erg onduidelijk is. 2. Ik geen fysieke P2000 heb. Om alles aan de praat te krijgen moet ik begrijpen wat er allemaal gebeurt in port &H20 (0x20). Volgens verschillende handleidingen ziet de poort er als volgt uit: cas_inp: equ 20h ; input port for cassette ; bit 0 - Printer input ; bit 1 - Printer ready ; bit 2 - Strap N (daisy/matrix) ; bit 3 - Cassette write enabled (WEN)
×
×
  • Create New...