NEOS-Maus

Aus C64-Wiki
Zur Navigation springenZur Suche springen
NEOS-Maus
Das Modell mit weißen Tasten wurde auch mit blauen Tasten hergestellt.
Typ Maus
Hersteller Nihon Electronics Co. Ltd.
Erscheinungsjahr 1985
Produktionsende 199?
OS auch GEOS-Kompatibel
Sonstiges Enthält das Malprogramm Mouse-Cheese bzw. Neos Cheese Paint.
verschiedene Modelle (Designs)


Die NEOS-Maus wurde 1985 von der Firma Nihon Electronics Co. Ltd. als erste Proportionalmaus für den C64 und C128 angeboten und war ursprünglich eine Entwicklung für MSX-Computer. Diese Maus hat zwei Tasten, Kugel und Lichtschranken sorgen für das Lesen der Bewegung. Mitgeliefert wird auf Kassette das Malprogramm Mouse-Cheese (Version 1.1, Start mit SYS 4096). Die Maus ist kompatibel zu GEOS, jedoch ist dazu ein extra Treiber nötig. Durch einen eingebauten 4-Bit-Mikrocontroller (MB88201A-639L) ist der Proportionalmodus selbst beim VC-20 verwendbar und nicht auf den SID angewiesen.

Die NEOS-Maus lag dem C64-Bundle Commodore C64C Connoisseur's Collection bei, einer limitierten Edition des C64C, die 1990 in England verkauft wurde.

Joystickmodus[Bearbeiten | Quelltext bearbeiten]

Wie bei der Maus 1351 kann auch hier der Joystick-Modus aktiviert werden, um die Verwendung mit Joystick gesteuerter Software zu ermöglichen. Zum Wechsel in den Joystick-Modus muss beim Einschalten des Rechners die linke Maustaste gedrückt werden.

Verpackung und Inhalt[Bearbeiten | Quelltext bearbeiten]

Die Maus liegt zusammen mit dem Handbuch und der Programmkassette in einer Styroporverpackung. Die Kassette enthält das nötige Treiberprogramm für die Maus und das Malprogramm Mouse-Cheese. NeosCheesePaintAnimation.

NEOS-Maus, Verpackung
NEOS-Maus, Inhalt, Modell MS-30


Modelle[Bearbeiten | Quelltext bearbeiten]

  • MS-10 (MSX) - Bild: VZ 1921)
  • MS-10X (MSX)
  • MS-20 (MSX)
  • MS-30 (C64, C128, Atari pinout)
  • NM44-C (PS/2)
  • Sanyo MS-44L (DB9)

Neos Cheese Paint[Bearbeiten | Quelltext bearbeiten]

Die Demobilder A-F

Das Malprogramm "Neos Cheese Paint" wird über die Icons am unteren Bildschirmrand bedient.

Treiber[Bearbeiten | Quelltext bearbeiten]

; da65 V2.15 - Git N/A
; Created:    2015-10-30 20:05:31
; Input file: neos-driver.bin
; Page:       1


        .setcpu "6502"

        ldy     #$3F
LC002:  lda     sprite,y
        sta     $0340,y
        dey
        bpl     LC002
        lda     #$0D
        sta     $07F8
        lda     #$01
        sta     $D015
        lda     #$07
        sta     $D027
        lda     #$7F
        sta     $DC00
        sei
LC020:  jsr     LC100
        lda     #$07
        bcc     LC029
        lda     #$0A
LC029:  sta     $D027
        jsr     LC190
        jsr     LC1D0
        lda     $DC00
        and     #$10
        bne     LC020
        cli
        rts

        brk
        brk
        brk
        brk
        brk
sprite: .byte   $FC
        .byte   $00
        .byte   $00
        .byte   $F0
        .byte   $00
        .byte   $00
        .byte   $F0
        .byte   $00
        .byte   $00
        .byte   $D8
        .byte   $00
        .byte   $00
        .byte   $8C
        .byte   $00
        .byte   $00
        .byte   $86
        .byte   $00
        .byte   $00
        .byte   $03
        .repeat 173
        .byte   $00
        .endrepeat
LC100:  lda     $DC00
        pha
        lda     $DC01
        pha
        lda     $DC02
        pha
        lda     $DC03
        pha
        lda     #$10
        sta     $DC02
        lda     $DC00
        and     #$EF
        sta     $DC00
        ldx     #$08
        jsr     delay
        lda     $DC00
        asl     a
        asl     a
        asl     a
        asl     a
        sta     $19
        lda     $DC00
        ora     #$10
        sta     $DC00
        ldx     #$05
        jsr     delay
        lda     $DC00
        and     #$0F
        ora     $19
        sta     $19
        lda     $DC00
        and     #$EF
        sta     $DC00
        ldx     #$05
        jsr     delay
        lda     $DC00
        asl     a
        asl     a
        asl     a
        asl     a
        sta     $1A
        lda     $DC00
        ora     #$10
        sta     $DC00
        ldx     #$05
        jsr     delay
        lda     $DC00
        and     #$0F
        ora     $1A
        sta     $1A
        lda     $D419
        cmp     #$FF
        pla
        sta     $DC03
        pla
        sta     $DC02
        pla
        sta     $DC01
        pla
        sta     $DC00
        rts

delay:  nop
        nop
        nop
        dex
        bne     delay
        rts

        rts
        rts
        rts
        rts
        brk
        brk

LC190:  nop
        nop
        nop
        lda     $19
        bmi     LC1A2
        sec
        lda     $FE
        sbc     $19
        bcs     LC1AF
        lda     #$00
        beq     LC1AF
LC1A2:  sec
        lda     $FE
        sbc     $19
        bcs     LC1AD
        cmp     #$A0
        bcc     LC1AF
LC1AD:  lda     #$9F
LC1AF:  sta     $FE
        lda     $1A
        bmi     LC1C0
        sec
        lda     $FF
        sbc     $1A
        bcs     LC1CD
        lda     #$00
        beq     LC1CD
LC1C0:  sec
        lda     $FF
        sbc     $1A
        bcs     LC1CB
        cmp     #$C8
        bcc     LC1CD
LC1CB:  lda     #$C7
LC1CD:  sta     $FF
        rts

LC1D0:  lda     $FE
        clc
        adc     #$0C
        asl     a
        pha
        bcc     LC1E0
        lda     $D010
        ora     #$01
        bne     LC1E5
LC1E0:  lda     $D010
        and     #$FE
LC1E5:  sta     $D010
        pla
        sta     $D000
        clc
        lda     $FF
        adc     #$32
        sta     $D001
        rts

Weblinks[Bearbeiten | Quelltext bearbeiten]