Beiträge von funkheld

    Hallo Haranni , du hattest doch mal mit Solder zusammen gearbeitet , wie du oben geschrieben hast.


    Könntest du bitte mit Solder mal Verbindung aufnehmen wegen dem OS96 Sourcecode?

    Wäre dir sehr dankbar dafür und den Erfinder Solder auch.


    Danke.

    Danke für die Info.


    Das TRSE hatte ich vor 2 jahren einmal angeschaut es hat sich vom Spiel her bis heute wenig geändert und wurde wenig erweitert.

    Es wurde sehr wenig umgesetzt für Plus4 , fast nichts,

    Über 15 Systeme sind dort umgesetzt mehr oder weniger schlecht im Programmierstiel.

    Mit dem sogenannten Pascal hat dieses System nichts am Hut.


    Das CC65 kommt da schon besser hin für den Plus4. Aber C lernen ist nicht so einfach.


    Mit welcher Sprache programmierst du bitte?


    Ich Progge mit MadPascal und ASM , ist sehr Systemnah.

    Diese Demo mit dem IRQ zeigt wie Professionell es gemacht wird mit dem System und IRQ-Programme müssen schon Sauber sein im arbeiten damit es

    gut funktioniert ohne Rasterflimmern.


    Danke.

    Oder Raster-IRQ :

    ----------------------------------

    var

    DETIRQSRC : byte absolute $ff09; //detect IRQ source, and clear IRQ flag

    SETIRQSRC : byte absolute $ff0a; //set IRQ source

    RC : byte absolute $ff0b; //raser counter bits 0-7

    BACKGROUND : byte absolute $ff15;

    BORDER : byte absolute $ff19;

    VCOUNT : byte absolute $ff1d; //vertical line bits 0-7

    IRQVEC : word absolute $fffe;


    var

    tmp : byte absolute $ff;


    procedure myRasterIrq; interrupt;

    begin

    asm { phr };


    Inc(BORDER);

    tmp:= VCOUNT + 32; repeat until tmp = VCOUNT;

    Dec(BORDER);


    DETIRQSRC := DETIRQSRC and %01111111;

    asm { plr };

    end;


    begin

    pause;


    asm { sei \ sta $ff3f};


    RC := 204; SETIRQSRC := 2;

    DETIRQSRC := DETIRQSRC and %01111111;


    IRQVEC := word(@myRasterIrq);


    asm { cli };


    repeat until false;

    end.

    ----------------------------------------------------

    Danke für deine Hilfe,


    Ein festes Ziel habe ich noch nicht , muss mich erstmal wieder einspielen.


    Ich programmiere diesen Yape zur Zeit mit MadPascal.

    Dieses MadPascal hat eine tolle Schnelligkeit und die PRG sind sehr klein.


    Wollte alles mal mit ASM machen , aber dieses Madpascal bietet auch eine Mischung an , um direkt mit ASM in das System zu greifen.

    Für mich ist es leichter wenn ich meine eigenen kleinen ASM-Routinen schreibe und dann in Madpascal einbette als das ich alles mal

    in ASM schreibe und dann mit den Sprungsalat nicht mehr durchsteige,




    Gruss


    Die ersten 6 Chars verändern mit Madpascal :

    ----------------------------

    var

    RAMROMSEL : byte absolute $ff12;

    CHBAS : byte absolute $ff13;


    const

    SCREEN_ADDR = $0c00;

    EMPTY = $20;


    fonts: array [0..(8 * 6 - 1)] of byte = (

    24,24,36,36,36,60,102,90, // ship up

    0,3,62,197,197,62,3,0, // ship left

    0,192,124,163,163,124,192,0, // ship right

    90,102,60,36,36,36,24,24, // ship down

    0,60,110,98,70,118,60,0, // obstacle 1

    0,60,118,70,98,110,60,0 // obstacle 2

    );


    procedure initFonts;

    begin

    Move(pointer($d000), pointer($6000), $400);

    Move(fonts, pointer($6000), SizeOf(fonts));


    // set bit 2

    RAMROMSEL := RAMROMSEL and %11111011;


    // 24 = $6000 / $400 on 2-7 bits

    CHBAS := (CHBAS and %11) or 24 shl 2;

    end;


    begin

    initFonts;


    FillChar(pointer(SCREEN_ADDR), 24 * 40, EMPTY);


    poke(3072,0);

    poke(3074,1);

    poke(3076,2);

    poke(3078,3);

    poke(3080,4);

    poke(3082,5);


    poke(3084,6);

    poke(3086,7);


    repeat until false;

    end.

    ------------------------------------------------




    Mit ASM dazwischen spielen mit Madpascal :

    -----------------------------------------------

    var

    SCREEN : pointer;

    GSCREEN : pointer;

    BORDERCOLOR : byte absolute $ff15;

    BGCOLOR : byte absolute $ff19;


    var

    a,b,c : word;

    x,y,z : byte;


    begin

    asm {

    lda #$0d // ausgabe char

    jsr $ffd2

    lda #65

    jsr $ffd2


    lda #$0d

    jsr $ffd2

    lda #66

    jsr $ffd2

    };


    asm {

    lda #$0d

    jsr $ffd2


    ldx #46 // ausgabe integer

    lda #12

    jsr 42079

    };


    // A B in Color

    asm {

    lda #90

    sta 2048

    lda #70

    sta 2049

    lda #1

    sta 3072

    lda #2

    sta 3073

    };


    writeln('');

    a:=$1234;

    writeln(lo(a));

    writeln(hi(a));

    z:=66;

    writeln(#66);


    repeat until false;

    end.

    --------------------------------------

    Hallo, danke für deine Info.


    Der Plus4 ist ein Gerät , welches gute Eigenschaften hat zum Tüfteln mit seinem innneren Aufbau und den einzelnen ROMS die man nutzen kan und erfinden kann.

    Das Yape ist echt Betriebsnah.


    Ich such bitte LösungenTricks für das 256KB-RAM für die Nutzung.


    Ich suche auch bitte eine PDF für die Befehle vom OS96.

    Habe diese Eingebaut im YAPE. Mir fehlen die Befehle dazu bzw die Nutzung vom Hannes-Ram.


    Danke.

    Hallo, guten Tag.

    Nach langer Zeit fange ich wieder mit dem Plus4 Yape an mit 75 Jahren.


    Der PLUS4 gefällt mir sehr zum Programmieren.

    Yape gibt es jetzt 1.2.4 Version.


    Nun habe ich im Yape das Hannes RAM 256kb eingestellt.

    Die Beispiel DSK erkennen das RAM und die DEMOS funktionieren Super.


    Ich nehme jetzt das Mas Pascal zum Programmieren.

    Es wurde gut ausgebaut.


    Einpaar fragen bitte zum Hannes RAM bitte.

    Würde mich freuen wenn es bitte einpaar infos gibt für das Hannes RAM unter Yape.


    MadPascal :

    -----------------------------------

    HANNES : Byte absolut $fd16;

    HANNES:= %11110011 ;

    ----------------------------------

    Die gesamten 64kb des Plus4 gehören nun zu Hannes Bank 3?

    und kann ein Programm starten, das in Bank 3 liegt?


    wenn ich das jetzt schreibe:

    -------------------------------------------------- ----------

    HANNES:= %11110001 ;

    Dann kann ich ein Programm auf dem Plus4 schreiben, das zu Bank 1 gehört?


    HANNES:= %11110000 ;

    Ich bin jetzt also wieder in Bank 0?


    HANNES:= %11110001 ;

    Damit ich dann mein Programm starten kann von Bank 1, was ich oben geschrieben habe?


    Bedeutet das auch, dass eine Bank immer zu Plus4 0-3 gehört?

    HANNES:= %11110000 ;


    Damit gehört der Speicher 0-3fff dem RAM von Hannes und dem Programmierer gemeinsam?

    HANNES:= %11110001 or 8;


    Danke.

    Dieses habe ich mit dem Programm MSDOS und vDOS nicht hinbekommen.


    Sind die Programme MSDOS und vDOS so schnell , weil die den Grafik Modus nicht können?


    10 'This will draw 5 spheres

    20 GOTO 160

    50 IF VERT GOTO 100

    60 CIRCLE (X,Y),R,C,,,.07

    70 FOR I = 1 TO 5

    80 CIRCLE (X,Y),R,C,,,I*.2:NEXT I

    90 IF VERT THEN RETURN

    100 CIRCLE (X,Y),R,C,,,1.3

    110 CIRCLE (X,Y),R,C,,,1.9

    120 CIRCLE (X,Y),R,C,,,3.6

    130 CIRCLE (X,Y),R,C,,,9.8

    140 IF VERT GOTO 60

    150 RETURN

    160 CLS: SCREEN 1: COLOR 0,1: KEY OFF: VERT=0

    170 X=160: Y=100: C=1: R=50: GOSUB 50

    180 X=30: Y=30: C=2: R=30: GOSUB 50

    190 X=30: Y=169: GOSUB 50

    200 X=289: Y=30: GOSUB 50

    210 X=289: Y=169: GOSUB 50

    220 LINE (30,30)-(289,169),1

    230 LINE (30,169)-(289,30),1

    240 LINE (30,169)-(289,30),1,B

    250 Z$=INKEY$: IF Z$="" THEN 250

    -------------------------------------------------------


    Aber mit PCbasic :

    Hallo, guten Tag.

    Spiele mit 69 Jahren mal wieder mit dem CPC6128 , aber nur mit dem EMu JAVACPC.


    Ich spiele mit dem Pasmo auf dem CPC6128.


    Wie komme ich bitte mit ASM für den PASMO in den Grafikmodus für CPM+ bei dem CPC6128?


    Danke.

    Gruss

    Jup danke für die Info.
    Spiele spielen möchte ich nicht.
    Mich interessiert das Programmieren mit Basic und anderen alten Programmiersprachen.
    Auch das innenlebenden der Hardware(im EMU) kennenlernen des Computer.


    Hat man schon einmal eine Verbindung einer seriellen Schnittstelle probiert mit dem Apple und einem PC über RS232?
    Wenn ja, wie funktionieren im Apple die Befehle um eine Verbindung aufzubauen und dann Buchstaben zu übertragen und auch wieder zu empfangen? Der EMU hat so eine Schnittstelle eingebaut.


    Ich hatte vor ca 5 jahren meine komplette Apple//e-Anlage verkauft. Hatte mich nur kurz beschäftigt damit.
    War dann mit den ganzen Steckkarten zuviel geworden. Ich wollte keine Hardware basteln und instandhalten sondern wollte das Innenleben kennenleren. Das Gerät hakte hier und manchmal da, ich wußte dann nicht, lag der Fehler im Gerät oder war es mein Programmierfehler usw.


    Danke.
    Gruss

    Hallo, guten Tag.
    Ich spiele zwar mit dem Microcim, wollte jetzt mal mit dem AppleWin-Emu den Apple //e nachempfinden.
    Was haltet ihr von dem AppleWin um damit den Apple IIe mal kennzulernen ?


    Ist der gut verbreitet hier um auch mal auf Fragen einzugehen, oder würde ich damit allein in der Sceene hier stehen?
    Mit welchen Apple wird dann hier am meisten gespielt, um um Apple mal kennen zulernen ?


    Wo könnte gibt es Hilfen für DOS/Basic usw in PDF?
    Wo findet man bitte DSK für den EMU?



    Danke.
    Gruss

    Hier zb sende ich vom PC ein Byte über die serielle Schnittstelle mit 1200Baud welche vom Micro-Kim empfangen wird.
    Die Hex blinkt nur kurz auf, weil ich ja oben in der Loop den Empfang über die seriell Schnittstelle habe.
    Der Buchstabenwert der ankommt blinkt richtig auf, also der Wert wird richtig empfangen.


    Wie kann jetzt die HEX-Anzeige über einen Timer regelmäßig angesprungen werden beim abfragen der seriellen Routine?:
    -----------------------------


    hex12 .equ $fb ; Hex 1-2
    pc_a .equ $1e5a ; Empfangsroutine


    .org $200
    start
    jsr pc_a
    jsr hex_led
    jmp start


    hex_led
    sta hex12
    jsr $1F1F
    jsr zeit_0
    rts


    zeit_0
    ldy #$00
    warte0
    dey
    bne warte0
    rts
    ---------------------------------------

    Hallo Norbert.
    Vielleicht kannst du mir bitte weiterhelfen.
    Ich habe den Microkim seit einigen Wochen mit der 32KB-Erweiterung von Briel.
    Ich dache mit 65 Jahren kann man wieder auf einer Oltimer-Schiene fahren.


    Ich habe mir ein Programm in Purebasic geschrieben, womit ich meine pap-Programme seriell mit 1200Baud übertrage.
    Klappt wunderbar. Ich benutze den "win2c64 -P..." der mir fertige pap-Programme erstellt, die ich über den Notepad++ compiliere.


    Nun schaffe ich es nicht im ersten Teil des Programmes Daten zu erfassen die dann im Display dargestellt werden, weil es ja, so wie ich gesehen habe immer in einer Loop abläuft, damit die Hex-Anzeige etwas anzeigt.
    Ich möchte eine Taste abfragen im ersten Teil beim Micro-kim und diesen Wert in der Hex-Anzeige anzeigen.
    Klappt nicht eine Taste abfragen, wegen einer erforderliche reglemässigen Loop zur Anzeige.


    Ich habe hier ein ASM welches in einer Schleife läuft und funktioniert.
    Wie kann ich eine Anzeige jetzt auslagern mit einem Timer , der regelmässig das Hex-Display bedient?


    Danke.


    Gruss
    peter


    --------------------


    hex1 .equ $09
    hex2 .equ $0b
    hex3 .equ $0d
    hex4 .equ $0f
    hex5 .equ $11
    hex6 .equ $13


    .org $200


    ldx #$7f
    stx $1741
    loop
    jsr hex_led ; springt zur Hex-Anzeige
    jmp loop


    hex_led
    ldx #hex1
    stx $1742
    ldx wert
    stx $1740
    jsr zeit_1


    ldx #hex2
    stx $1742
    ldx wert+1
    stx $1740
    jsr zeit_1


    ldx #hex3
    stx $1742
    ldx wert+2
    stx $1740
    jsr zeit_1


    ldx #hex4
    stx $1742
    ldx wert+3
    stx $1740
    jsr zeit_1


    ldx #hex5
    stx $1742
    ldx wert+4
    stx $1740
    jsr zeit_1


    ldx #hex6
    stx $1742
    ldx wert+5
    stx $1740
    jsr zeit_1
    rts


    zeit_1
    ldy #$7f
    warte
    dey
    bne warte
    rts


    wert .byte $86 $db $cf $e6 $ed $fd
    ----------------------------------------------------


    das ist die pap:


    ;180200A27F8E4117200B024C0502A2098E4217AE66028E4017206006AE
    ;18021802A20B8E4217AE67028E4017206002A20D8E4217AE68028E0782
    ;1802304017206002A20F8E4217AE69028E4017206002A2118E421706D5
    ;180248AE6A028E4017206002A2138E4217AE6B028E4017206002600761
    ;0C0260A07F88D0FD6086DBCFE6EDFD0942
    ;0000050005

    Nach längeren tüfteln kann ich jetzt alle 6 Hexanzeigen vom Microkim ansteuern.
    Das heisst, jede einzelne Zelle von einer Hexanzeige:



    Einschalten der Hexanzeigen:
    ldx #$7f
    stx $1741
    ----------------------------
    HEX 6 wird jetzt benutzt:
    ldx #$13
    stx $1742
    .........
    HEX 1: $09
    HEX 2: $OB
    HEX 3: $OD
    HEX 4: $OF
    HEX 5: $11
    HEX 6: $13
    ..........
    ---------------------------
    Daten für die Hex 6 ist ein "H":
    ldx #$f6
    stx $1740
    ----------------------------
    A - $f7 L - $b8 g - $ef u - $9c 1 - $86
    B - Sff O - $bf h - $f4 y - $ee 2 - $db
    C - $b9 P - $f3 i - $84 3 - $cf
    D - $bf S - $ed j - $9e 4 - $e6
    E - $f9 U - $be l - $86 5 - $ed
    F - $f1 Y - $ee n - $d4 6 - $fd
    G - $bd b - $fc o - $dc 7 - $87
    H - $f6 c - $d8 p - $f3 8 - $ff
    I - $86 d - $de r - $d0 9 - $ef
    J - $9e f - $f1 t - $f8 0 - $bf
    - - $c0


    --------------------------------------



    .org $200


    ldx #$7f
    stx $1741


    ldx #$13
    stx $1742


    ldx #$f6
    stx $1740
    rts
    -------------------------------


    Compiliert mit dem" win2c64.exe".
    Der macht eine fertige "pap".
    Gruss

    Jup, das Daten übertragen und zurück funktioniert jetzt einwandfrei mit 1200Baud zum PC


    Ich habe mir jetzt ein Programm in Purebasic geschrieben. Ist einfacher als dieses "hyperterminal" für Windows.


    Gruss

    Jup, die Terminalanbindung ist da mit Hyperterminal, ich habe auf 1200Baud eingestellt.
    Wenn ich Reset betätige am KIM dann werden die Daten zum PC gesendet. Und zwar die Adresse die ich dort gerade eingestellt habe.
    Wenn ich dann im Terminal am PC die Returntaste drücke geht die Adresse als Anzeige im Terminal weiter und zeigt mir dafür die Daten an, die gerade da drin sind. Wenn ich dann die Verbindung unterbreche dann kann ich am Microkim die gleiche Adresse sehen wie am PC. Das heisst die Verbindung hin und zurück ist vorhanden.


    Ich wollte einmal wissen wie die Daten übertragen werden, nach dem "L" im Terminal RETURN drücken oder nur "L" und die Daten rübersenden?


    Danke.


    GRuss

    Hallo , guten Tag.
    Mein Microkim von Briel ist heute angekommen. Ein schönes kleines Gerät.
    Die serielle Verbindung steht schon zum Gerät mit 2400Baud.


    Ich weiss jetzt nur noch nicht, wie ich die Daten:
    ;180200A90085F985FA85FBA206BDCE0295E2CA10F8A5E849FF85E80F00


    reinbekome


    So als Text wie es oben steht mit dem ; Zeichen vorne weg?
    Wenn ich jetzt ein "L" sende , kann ich dann die anderen Daten oben gleich hinterher schicken?


    Danke.
    Gruss

    Ich habe diese Demo aus einem Buch:
    -------------------------------------------------



    !to "display.prg",cbm


    *=$200


    begin
    lda #$01
    sta $00fb
    lda #$02
    sta $00fa
    lda #$03
    sta $00f9
    gehe
    jsr $1f1f
    jmp gehe
    rts
    -------------------------------
    Mit ACME compiliert und die Daten in den Simulator gebracht.
    Die Zahlen erscheinen nicht im Display.
    Liegt es jetzt am Code oder am Soft6502Simulator?


    Danke.
    Gruss

    Hmm..., das mit den Befehlen zum Ansprechen vom Hexdisplay ist mir noch nicht klar.


    Irgenwie finde ich die Systemvariablen(Adressen) dafür nicht.
    Ich möchte bitte mal eine Zahl decimal"10" in den Akku laden und die Zahl dann auf alle 4 Displax anzeigen.


    Danke.
    Gruss

    Jup danke.


    Ich habe jetzt mal den Soft6502 installiert.
    Funktioniert wunderbar.


    Meiner wird wohl in den nächsten Wochen kommen.
    Kann man dann die Ergebnisse vom KIM auf einem Terminal am PC empfangen und Auswerten ?


    Danke.

    Jup danke für den Hinweis.


    Hat einer von euch bitte mal etwas geschrieben in ASM?
    Welchen Assembler kann man nehmen der unter Win7 läuft?
    Wie kann man bitte Daten vom PC(Terminal-RS232) nach dem KIM übertragen?


    Ich kann die Auflistung der sogenannnten Systembembefehle vom ROM nicht finden?
    Wie kann ich zb eine Addition als Zahl ausgeben.


    Danke.
    Gruss

    Hallo, guten Tag.
    Ich habe mir heute den KIM bei Briel bestellt mit 65 Jahren.


    Wo findet man bitte eine Befehlsliste in ASM für den KIM um zb eine Addition in ASM auf den Zahlendisplay auszugeben usw.
    Ich habe keinerlei Unterlagen.


    Würde mich freuen , wenn man mir mit Material weiterhelfen könnte.
    Ich programmmiere mit dem ACME.


    Danke.
    Gruss


    Meine Mail : Funkheld@arcor.de

    Versuch mal den AMDOS-Teil in den Ram zu legen , bzw vorher zu manipuieren, dann geht es.


    Also in Wincpc geht es, da habe ich natürlich das AMDOS direkt geändert.


    Das ist das schöne am Wincpc oder andere Cpc-emus, für uns tüftler.... :D