CP/M-Forum

Registrieren || Einloggen || Hilfe/FAQ || Suche || Memberlist || Home || Statistik || Kalender || Staff Willkommen Gast!
[ Unofficial CP/M Website ] [ Z80 Family Support Page ] [ Forum-Regeln ] [ Impressum/Kontakt ]

CP/M-Forum » CP/M 3.0 » CPM/3 Plus auf meinem CT180 System » Threadansicht

Autor Thread - Seiten: -1-
000
26.08.2006, 21:07 Uhr
Alfred

Avatar von Alfred

Hallo CP/M Kollegen,

so meldet sich mein aktuelles CP/M 3 Plus System:

CT180 Mon v4.47 05.06 AK
9.x Mhz B-80h MW-1 IOW-3

64
128
192
256
320
384
448
512k RAM Ok

Die Monitorbefehle sind an das MC CP/M System angelehnt,
z.B. Register anschauen:

>x

A F B C D E H L I
00 00 00 00 00 00 00 00 00
A' F' B' C' D' E' H' L' R
00 00 00 00 00 00 00 00 00
SZxHxPNC SP IX IY PC (PC)
00000000 0000 0000 0000 0000 C3 2D F6

oder von Floppy oder Harddisk booten:

>i
1=FD 2=HD: 2 Load ..

BootLDR v1.32

CP/M V3.0 Loader
Copyright (C) 1982, Digital Research

60K TPA

Welcome to CP/M Plus v3.1 E:
IDE HD-Bios v1.04 05.2006 AK

E>setdef *,e:

Drive Search Path:
1st Drive - Default
2nd Drive - E:

E>setdef [order=(sub,com);uk]

Search Order - SUB, COM
Date format used - UK

E>set e:[create=on,update=on]

Label for drive E:

Directory Passwds Stamp Stamp Stamp
Label Reqd Create Access Update
-------------- ------- ------- ------- -------
E:BOOT . off on off on

E>set f:[create=on,update=on]

Label for drive F:

Directory Passwds Stamp Stamp Stamp
Label Reqd Create Access Update
-------------- ------- ------- ------- -------
F:LABEL . off on off on

E>set g:[create=on,update=on]

Label for drive G:

Directory Passwds Stamp Stamp Stamp
Label Reqd Create Access Update
-------------- ------- ------- ------- -------
G:LABEL . off on off on

E>date

Fri 04/08/2006 17:37:53
E>

Die Laufwerke sind so zugeordnet:
A: = 3-1/2" HD/DS 1,4MB
B: = 5-1/4" DD/DS 800KB
C: = 8" SD/SS 243KB
D: = 8" DD/DS 1,4MB
E: = 2-1/2" IDE HDD 8MB logisches Laufwerk
F: = dto.
G: = dto.

Das System läuft bisher sehr stabil :-)

Weiteres folgt...

Viele Grüsse
Alfred
--
Das Leben ist verdammt kurz (meine Meinung)!
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
001
26.08.2006, 21:27 Uhr
HD64180CPM



Hallo Alfred,

kannst Du vielleicht mehr Daten liefern!

Zum Beispiel den Quell-Code von Deinen "CT180 Mon v4.47 05.06 AK".

Gruss
Rolf
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
002
26.08.2006, 21:41 Uhr
Alfred

Avatar von Alfred

Hallo Rolf,

die Sourcen werden den meisten nicht viel bringen, da jeder Monitor eng an die zugehörige Hardware gebunden ist! Anbei aber trotzdem mal die Monitordefiniton:

13F>type mondef.mac

;
; CT180 Monitor - Definitionen
; Filename MONDEF.MAC
;
; 06.03.1987
; 12.03.1989
; 18.12.2005
; 06.01.2006 IDEHD, Cassette
; 07.02.2006 Kosmetik
; 01.05.2006 DRAM Refresh
;

TRUE EQU 0FFFFH
FALSE EQU NOT TRUE

flo1 equ true
mhz18 equ true

;
; Definition der Systemadressen
;

IOBASE EQU 80h ; HD64180 interne I/O
;
if flo1 ; FDC I/O Adresse
FLO EQU 30h ; Flo1/FLOP2
else
FLO EQU 0c0h ; Flo2
endif

MINSTP EQU 0 ; Mini Steprate (0=6ms)
MAXSTP EQU 2 ; Maxi Steprate (0=3ms)
;
EXIT EQU 0 ; Adresse
IOBYTE EQU 3 ; Adresse
INTADR EQU 38H ; Adresse
RST7 EQU 38H ; Adresse
BUFF EQU 80H ; Adresse
BUFFER EQU 0FC00H ; Adresse
RETRY EQU 10 ; Fehlerversuche
;
BELL EQU 7
CLS EQU 1AH
CR EQU 0DH
LF EQU 0AH

;
; cmos ramfloppy
;
;ramflo equ 40h

;
; realtime clock
;
rtc equ 50h

;
; 8255 PIO Druckerport auf ct180
;
lpio equ 60h
pioinit equ 11h
strobe equ 01111111b
lobusy equ 00001000b

;
; 63B50 ACIA
;
ACIA1B EQU 70H
ACIA1S EQU ACIA1B
ACIA1D EQU ACIA1S+1

;
; 8255 IDE Hostadapter
;
pio_ide equ 040h ; PIO I/O Adresse
;
pio_lsb equ 0 + pio_ide ; Port A
pio_msb equ 1 + pio_ide ; Port B
pio_ctl equ 2 + pio_ide ; Port C
pio_cfg equ 3 + pio_ide ; I/O modus
;
pio_rdw equ 10010010b ; Port A+B input, Port C output
pio_wr equ 10000000b ; Port A+B+C output
;
ide_a0 equ 00000001b ; A0 direct to IDE HDD
ide_a1 equ 00000010b ; A1 dto.
ide_a2 equ 00000100b ; A2 dto.
ide_cs0 equ 00001000b ; CS0 to Inverter
ide_cs1 equ 00010000b ; CS1 dto.
ide_wr equ 00100000b ; WR dto.
ide_rd equ 01000000b ; RD dto.
ide_rst equ 10000000b ; RST dto.
;
ide_data equ ide_cs0
ide_err equ ide_cs0 + ide_a0
ide_sec_cnt equ ide_cs0 + ide_a1
ide_sector equ ide_cs0 + ide_a1 + ide_a0
ide_cyl_lsb equ ide_cs0 + ide_a2
ide_cyl_msb equ ide_cs0 + ide_a2 + ide_a0
ide_head equ ide_cs0 + ide_a2 + ide_a1
ide_command equ ide_cs0 + ide_a2 + ide_a1 + ide_a0
ide_status equ ide_cs0 + ide_a2 + ide_a1 + ide_a0
ide_control equ ide_cs1 + ide_a2 + ide_a1
ide_astatus equ ide_cs1 + ide_a2 + ide_a1 + ide_a0
;
ide_cmd_recal equ 010h
ide_cmd_read equ 020h
ide_cmd_write equ 030h
ide_cmd_init equ 091h
ide_cmd_id equ 0ech
ide_cmd_spindn equ 0e0h
ide_cmd_spinup equ 0e1h

;
; hd64180 mode definitionen
;
; mmu

ca equ 11110000b ; f000-ffff - common 1
ba equ 00000000b ; 0000-0000 - common 0
cb equ 0
bb equ 0 ; 10,20,30h...
; = bank 1,2,3...

if mhz18 ; 18,432 mhz

clock equ 9 ; mhz
iostop equ 0
memwait equ 01000000b ; 1 Wait(s)
iowait equ 00100000b ; 3 Wait(s)
refena equ 10000000b ; Enable = 80h
refwait equ 0 ; kein wait
ref40cy equ 00000011b ; 80 states = 10us

; sio

siocntl equ 60h ; rx + tx enable
siomode equ 4 ; 8 daten, 1 stop
sioint equ 0 ; keine interupts
txready equ 2
rxready equ 80h
txempty equ 2

ps equ 20h ; prescaler 0=/10, 20=/30
dr equ 0 ; divide ratio 0=/16, 8=/64

bd0300 equ 6
bd1200 equ 4
bd2400 equ 3
bd4800 equ 2
bd9600 equ 1
bd19200 equ 0

; dma

clrmod equ 0ah
dmamod equ 2
dmacntl equ 0 ; keine waits
takeof equ 40h

else ; 12,288 mhz

clock equ 6 ; mhz
iostop equ 0
iowait equ 0 ; keine waits
memwait equ 0 ; dto.
refena equ 80h
refwait equ 0
ref40cy equ 2

; sio

siocntl equ 60h ; rx + tx enable
siomode equ 4 ; 8 daten, 1 stop
sioint equ 0 ; keine interupts
txready equ 2
rxready equ 80h
txempty equ 2

ps equ 0
dr equ 8 ; 0 = /16, 8 = /64

bd0300 equ 5
bd0600 equ 4
bd1200 equ 3
bd2400 equ 2
bd4800 equ 1
bd9600 equ 0

; dma

clrmod equ 0ah
dmamod equ 2
dmacntl equ 0 ; keine waits
takeof equ 40h

endif

; ende mondef

Grüsse
Alfred
--
Das Leben ist verdammt kurz (meine Meinung)!
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
003
26.08.2006, 22:01 Uhr
HD64180CPM



Hallo Alfred,

danke schon mal für die "mondef.mac".

Ich dachte mehr an eine WINZIP-Datei per E-Mail oder
einen Link auf Deiner Homepage.

Ich habe auch etwas vom c't180 Monitor Version 1.1
in meinen CP/M Rechner Boot-Eprom und eine IFC-Karte.

Nur das erkennen des Diskettenwechsel klappt leider zur Zeit nicht richtig.

Gruss
Rolf
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
004
27.08.2006, 20:54 Uhr
Alfred

Avatar von Alfred

Hallo Rolf,

mein Monitor wird dir leider nichts nützen und auf deinem Board nicht laufen, da ich außer der CPU-Karte eine ganz andere Peripherie als das damalige CT Projekt verwende.
Ich hatte irgendwo noch ein ct'180 Eprom, muß mal schauen welche Version das ist.

Grüsse
Alfred
--
Das Leben ist verdammt kurz (meine Meinung)!
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
005
27.08.2006, 21:13 Uhr
Alfred

Avatar von Alfred

Hallo Rolf,

ich habe auch die Version 1.1 also nichts neueres.
PS: Die IFC-Karte hat vermutlich ein generelles Problem mit der Erkennung eines Diskettenwechsels, habe das mal vor langer Zeit von einem Herrn Weiss gehört.

Grüsse
Alfred
--
Das Leben ist verdammt kurz (meine Meinung)!
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
006
27.08.2006, 21:44 Uhr
HD64180CPM



Hallo Alfred,

es interessiert mich der Quellcode vom Monitor also Boot-Eprom Inhalt
und der Quellcode vom CP/M Plus v3.1 also CPM3.SYS oder wie die
Datei bei Deinen CP/M Plus v3.1 heisst.

Ich weiss natürlich das es auf meinen CP/M Rechner nicht läuft.

Von meinen CP/M 2.2 habe ich leider keinen Quellcode also das CP/M 2.2
von den Boot-Spuren.

Diasssemble habe ich schon versucht muss es mal probieren ob es
funktioniert wenn ich es auf die Boot-Diskette schreibe.

Das problem mit den Diskettenwechsel ist weil eins von den Disketten-Laufwerken nicht mehr laufen wollte aber ein Laufwerk ist halt zu wenig.

Siehe mal folgenden Link.

http://www.hd64180cpm.de/9461.html

Gruss
Rolf

Dieser Post wurde am 27.08.2006 um 21:46 Uhr von HD64180CPM editiert.
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
Seiten: -1-     [ CP/M 3.0 ]  



gaby.de

powered by ThWboard 3 Beta 2.84-php5
© by Paul Baecher & Felix Gonschorek