Эмулятор cp/m86

Всевозможные операционные системы от CP/M до Vista

Эмулятор cp/m86

Сообщение ctv » 05 дек 2020, 20:18

Эмулятор cp/m86 для windows

CPMBOX.zip
Полноценный эмулятор cpm86+ некоторые исходники и скреншот программы.
(3.16 Мб) Скачиваний: 337
версия 1.0
Бета тест перед публикацией
Рекомендуемые ос: win xp, vista, 7 x32
scren.PNG
Ver 1.0
scren.PNG (17.75 Кб) Просмотров: 7075
Последний раз редактировалось ctv 30 сен 2023, 23:40, всего редактировалось 6 раз(а).
MS-DOS 6.22 FOR WINDOWS https://мс-дос.рф
MS-DOS BOOT FROM USB https://мс-дос.рф/MSDBFU/
Эмулятор Windows 3.11 https://мс-дос.рф/emuwin3x.php
Аватара пользователя
ctv
Мастер Даунгрейда
 
Сообщения: 368
Зарегистрирован: 20 июл 2018, 14:31
Откуда: Россия, Владимировская обл, Вязниковский район, д.эдон.
Железо: Pentium3

Re: Эмулятор cp/m86

Сообщение APTEMK » 06 дек 2020, 02:15

ctv писал(а):Эмулятор cp/m86 для winxp+, только для 32х битных версий + исходники консоли.
Beta test


Увы, но под Windows 10 я запустить не смог:

errorcpm.jpg
errorcpm.jpg (25.66 Кб) Просмотров: 7340
Последний раз редактировалось APTEMK 30 сен 2023, 23:40, всего редактировалось 2 раз(а).
http://betaoperating.mybb.ru/ - мой форум

Изображение
Аватара пользователя
APTEMK
Мастер Даунгрейда
 
Сообщения: 908
Зарегистрирован: 28 сен 2019, 10:54
Откуда: 10.12.2004 Приморский Край, Надеждинский р-н
Железо: 10.12.04компьютер Fujitsu (Pentium lll 550, 128 мб Озу, видеокарта ,Ati Rage Xl,Hdd 10 Гб, Windows98

Re: Эмулятор cp/m86

Сообщение igor_pc » 06 дек 2020, 02:27

APTEMK писал(а):Увы, но

лучше даже само это ГО***О не запускать, не то, что что-то ПОД ним :) :puk:
ЗЫ XP форева
Последний раз редактировалось igor_pc 30 сен 2023, 23:40, всего редактировалось 1 раз.
igor_pc
 

Re: Эмулятор cp/m86

Сообщение uav » 06 дек 2020, 13:13

Увы, но под Windows 10 я запустить не смог

Так а разрядность какая? Ctv написал, что только для 32-х.
Последний раз редактировалось uav 30 сен 2023, 23:40, всего редактировалось 1 раз.
Аватара пользователя
uav
Мастер Даунгрейда
 
Сообщения: 1913
Зарегистрирован: 22 дек 2008, 14:21

Re: Эмулятор cp/m86

Сообщение ctv » 07 дек 2020, 11:39

На win10 не работает, там слишком урезанный ntvdm.

Начал писать скрипт для комманды dir
Код: Выделить всё
@echo off
Title Dir cpm86 Emu
Set a=
Set ax=a
:Begin
If "%ax%"=="a" set ax=b and goto St
If "%ax%"=="b" set ax=s and goto St
If "%ax%"=="s" set ax=d  and goto St
If "%ax%"=="d" set ax=e and goto St
If "%ax%"=="e" set ax=f and goto St
If "%ax%"=="f" set ax=g and goto St
If "%ax%"=="g" set ax=h and goto St
If "%ax%"=="h" set ax=i and goto St
If "%ax%"=="i" set ax=j and goto St
If "%ax%"=="j" set ax=k and goto St
If "%ax%"=="k" set ax=l and goto St
If "%ax%"=="l" set ax=m and goto St
If "%ax%"=="m" set ax=n and goto St
If "%ax%"=="n" (set ax=o) and goto St
If "%ax%"=="o" (set ax=p) and goto St
If "%ax%"=="p" (set ax=r) and goto St
If "%ax%"=="r" (set ax=c) and goto St
If "%ax%"=="c" (set ax=t) and goto St
If "%ax%"=="t" (set ax=u) and goto St
If "%ax%"=="w" (set ax=x) and goto St
If "%ax%"=="x" (set ax=v) and goto St
If "%ax%"=="v" (set ax=z) and goto St
If "%ax%"=="z" (set ax=aa) and goto St
If "%ax%"=="aa" (set ax=ab) and goto St
If "%ax%"=="ab" (set ax=as) and goto St

Goto prints
:St

If exist "%ax%.cmd" sed a = "%ax%    cmd"
If not "%a%"== "" set sav=1
If not "%a%"== "" goto sav
:Nf1
If exist "%ax%.bas" set a = "%ax%    bas"
If not "%a%"== "" set sav=2
If not "%a%"== "" goto sav
:Nf2
If exist "%ax%.asm" set a = "%ax%    asm"
If not "%a%"== "" set sav=3
If not "%a%"== "" goto sav
:Nf3
If exist "%ax%.obj" set a = "%ax%    obj"
If not "%a%"== "" set sav=4
If not "%a%"== "" goto sav
:Nf4
If exist "%ax%.doc" set a = "%ax%    doc"
If not "%a%"== "" set sav=5
If not "%a%"== "" goto sav
:Nf5
If exist "%ax%.txt" set a = "%ax%    txt"
If not "%a%"== "" set sav=6
If not "%a%"== "" goto sav
:Nf6
If exist "%ax%.l86" set a = "%ax%    l86"
If not "%a%"== "" set sav=7
If not "%a%"== "" goto sav
:Nf7
If exist "%ax%.lib" set a = "%ax%    lib"
If not "%a%"== "" set sav=8
If not "%a%"== "" goto sav
:Nf8
If exist "%ax%.sub" set a = "%ax%    sub"
If not "%a%"== "" set sav=9
If not "%a%"== "" goto sav
:Nf9
If exist "%ax%.sub" set a = "%ax%    sub"
If not "%a%"== "" set sav=10
If not "%a%"== "" goto sav
:Nf10
If exist "%ax%.a86" set a = "%ax%    a86"
If not "%a%"== "" set sav=11
If not "%a%"== "" goto sav
:Nf11
If exist "%ax%.dat" set a = "%ax%    dat"
If not "%a%"== "" set sav=12
If not "%a%"== "" goto sav
:Nf12
If exist "%ax%.sys" set a = "%ax%    sys"
If not "%a%"== "" set sav=13
If not "%a%"== "" goto sav
:Nf13
If exist "%ax%.old" set a = "%ax%    old"
If not "%a%"== "" set sav=14
If not "%a%"== "" goto sav
:Nf14
If exist "%ax%.inp" set a = "%ax%    inp"
If not "%a%"== "" set sav=15
If not "%a%"== "" goto sav
:Nf15
If exist "%ax%.sym" set a = "%ax%    sym"
If not "%a%"== "" set sav=16
If not "%a%"== "" goto sav
:Nf16
If exist "%ax%.def" set a = "%ax%    def"
If not "%a%"== "" set sav=17
If not "%a%"== "" goto sav
:Nf17
If exist "%ax%.h86" set a = "%ax%    h86"
If not "%a%"== "" set sav=18
If not "%a%"== "" goto sav
:Nf18
If exist "%ax%.inc" set a = "%ax%    inc"
If not "%a%"== "" set sav=19
If not "%a%"== "" goto sav
:Nf19
If exist "%ax%.hlp" set a = "%ax%    hlp"
If not "%a%"== "" set sav=20
If not "%a%"== "" goto sav
:Nf20
If exist "%ax%.p" set a = "%ax%    p"
If not "%a%"== "" set sav=21
If not "%a%"== "" goto sav
:Nf21
If exist "%ax%.mcs" set a = "%ax%    mcs"
If not "%a%"== "" set sav=22
If not "%a%"== "" goto sav
:Nf22
If exist "%ax%.dta" set a = "%ax%    dta"
If not "%a%"== "" set sav=23
If not "%a%"== "" goto sav
:Nf23
If exist "%ax%.ovr" set a = "%ax%    ovr"
If not "%a%"== "" set sav=24
If not "%a%"== "" goto sav
:Nf24
If exist "%ax%.201" set a = "%ax%    201"
If not "%a%"== "" set sav=25
If not "%a%"== "" goto sav
:Nf25
If exist "%ax%.dok" set a = "%ax%    dok"
If not "%a%"== "" set sav=26
If not "%a%"== "" goto sav
:Nf26
If exist "%ax%.f77" set a = "%ax%    f77"
If not "%a%"== "" set sav=27
If not "%a%"== "" goto sav
:Nf27
If exist "%ax%.ers" set a = "%ax%    ers"
If not "%a%"== "" set sav=28
If not "%a%"== "" goto sav
:Nf28
If exist "%ax%.me" set a = "%ax%    me"
If not "%a%"== "" set sav=29
If not "%a%"== "" goto sav
:Nf29
If exist "%ax%.err" set a = "%ax%    err"
If not "%a%"== "" set sav=30
If not "%a%"== "" goto sav
:Nf30
If exist "%ax%.sim" set a = "%ax%    sim"
If not "%a%"== "" set sav=31
If not "%a%"== "" goto sav
:Nf31
If exist "%ax%.h" set a = "%ax%    h"
If not "%a%"== "" set sav=32
If not "%a%"== "" goto sav
:Nf32
If exist "%ax%.or1" set a = "%ax%    or1"
If not "%a%"== "" set sav=33
If not "%a%"== "" goto sav
:Nf33
If exist "%ax%.or2" set a = "%ax%    or2"
If not "%a%"== "" set sav=34
If not "%a%"== "" goto sav
:Nf34
If exist "%ax%.or3" set a = "%ax%    or3"
If not "%a%"== "" set sav=35
If not "%a%"== "" goto sav
:Nf35






Goto begin


:sav
If "%ad%"== "" set ad=%a%
Set a=
If "%bd%"== "" set bd=%a%
Set a=
If "%sd%"== "" set sd=%a%
Set a=
If "%dd%"== "" set dd=%a%
Set a=
If "%ed%"== "" set ed=%a%
Set a=
If "%fd%"== "" set fd=%a%
Set a=
If "%gd%"== "" set gd=%a%
Set a=
If "%hd%"== "" set hd=%a%
Set a=
If "%id%"== "" set id=%a%








If %sav%=1 goto Nf1
If %sav%=2 goto Nf2
If %sav%=3 goto Nf3
If %sav%=4 goto Nf4
If %sav%=5 goto Nf5
If %sav%=6 goto Nf6
If %sav%=7 goto Nf7
If %sav%=8 goto Nf8
If %sav%=9 goto Nf9
If %sav%=10 goto Nf10
If %sav%=11 goto Nf11
If %sav%=12 goto Nf12
If %sav%=13 goto Nf13
If %sav%=14 goto Nf14
If %sav%=15 goto Nf15
If %sav%=16 goto Nf16
If %sav%=17 goto Nf17
If %sav%=18 goto Nf18
If %sav%=19 goto Nf19
If %sav%=20 goto Nf20




:prints

If exist %ad% Echo z:\ %ad%  :  %bd%  :  %sd%  :  %dd%

If exist %ed% Echo z:\ %ed%  :  %fd%  :  %gd%  :  %hd%

If exist %id% Echo z:\ %id%  :  %fd%  :  %gd%  :  %hd%



Интерпритатор ком-строки
Код: Выделить всё
@echo off
title   CP/M-86 v1.1 for the columbia Data Products Multi-Personal Computer
echo           Generic Turbo XT Bios 1987
echo              for 8088 or v20 cpu
echo                 (c)Anonymous
echo          Columbia Data Products, Inc
echo          Boot version 1.0
echo          July 2, 1982
type z:\bel.te
echo          CP/M-86 v1.1 for the columbia Data Products Multi-Personal Computer
echo          Copyright (C) 1982, Columbia Data Products, Inc
echo          CDP version 1.7 November 20, 1983
type z:\bel.te 
type z:\bel.te
echo          Hardware Configured:
echo                   memory (kb)    : 640
echo                    Controller    :Xebec
echo           320k floppy disk(s)    :  1

:begin
set "v=z>"
set /p "v=%v%"
:pk
if "%v%"=="dir" (goto dir)
if "%v%"=="DIR" (goto dir)
if "%v%"=="Dir" (goto dir)

if "%v%"=="ver" (goto ver)
if "%v%"=="ver.cmd" (goto ver)
if "%v%"=="VER" (goto ver)
if "%v%"=="VER.CMD" (goto ver)
if "%v%"=="Ver" (goto ver)
if "%v%"=="Ver.cmd" (goto ver)


if "%v%"=="DIR" (goto dir)
if "%v%"=="dir" (goto dir)

if "%v%"=="cls" (goto cls)
if "%v%"=="CLS" (goto cls)


if "%v%"=="cls.cmd" (goto cls)
if "%v%"=="CLS.cmd" (goto cls)
if "%v%"=="CLS.CMD" (goto cls)


if "%v%"=="pause" (goto pause)
if "%v%"=="PAUSE" (goto pause)
if "%v%"=="Pause" (goto pause)



if "%v%"=="pause.cmd" (goto pause)
if "%v%"=="PAUSE.cmd" (goto pause)
if "%v%"=="PAUSE.CMD" (goto pause)
if "%v%"=="Pause.cmd" (goto pause)

if "%v%"=="OPEN" (goto open)
if "%v%"=="Open" (goto open)
if "%v%"=="open" (goto open)
if "%v%"=="open.cmd" (goto open)
if "%v%"=="Open.cmd" (goto open)
if "%v%"=="OPEN.cmd" (goto open)
if "%v%"=="OPEN.CMD" (goto open)

if "%v%"=="ABOUT.CMD" (goto ABOUT)
if "%v%"=="ABOUT" (goto ABOUT)
if "%v%"=="about" (goto ABOUT)
if "%v%"=="about.cmd" (goto ABOUT)
if "%v%"=="About" (goto ABOUT)
if "%v%"=="About.cmd" (goto ABOUT)

if "%v%"=="HELP.CMD" (goto help)
if "%v%"=="HELP" (goto help)
if "%v%"=="help" (goto help)
if "%v%"=="help.cmd" (goto help)
if "%v%"=="Help.cmd" (goto help)



if exist "z:\%v%" (goto api)
if exist "z:\%v%.cmd" (goto api)
if exist "c:\%v%" (goto dc)
if exist "c:\%v%.cmd" (goto dc)
if "%v%"=="z1>" (goto ABOUT)
echo %v%?
goto begin



:ver
echo Porameter
set /p "poo=Porameter:"
echo CP/M86 Version 1.0
goto begin

:dir:
Call dir.exe
goto begin


:cls
echo Porameter
set /p "poo=Porameter:"
cls
goto begin


:pause
echo Porameter
set /p "poo=Porameter:"
echo PAUSE
pause > z:\temp.of
goto begin


:z:
goto begin


:api
echo Porameter
set /p "po=Porameter:"
z:\CPM86.exe %v% %po%
goto begin


:dc
if exist "c:\%v%" copy "c:\%v%" "z:\" > z:\temp.of
if exist "z:\%v%" del "z:\%v%"
if exist "c:\%v%.cmd" copy "c:\%v%.cmd" "z:\" > z:\temp.of
if exist "z:\%v%.cmd" del "z:\%v%.cmd"
goto pk



:open
echo Porameter
set /p "opn=Porameter:"
if "%opn%"=="zip" (goto zip)

set /p "o=Open:"
set /p "n=Name:"
copy %o% "z:\%n%.cmd" > z:\temp.of
set v=%n%.cmd
goto api


:ABOUT
echo Porameter
set /p "poo=Porameter:"
echo Avtor the program Sementsul Maxim 2020
echo Moscow Russian
goto begin



:zip
set /p "opn=Zip file:"
if exist %opn% 7z.exe x %opn% -oz: -y > z:\temp.of
if not exist "%opn%" (goto notf)
echo start file
set /p "str=start:"
set v=%str%
goto api

:notf
echo Not fond
goto begin


:help
echo Porameter
set /p "poo=Porameter:"
:helps
echo helps:
echo Exit to exit command
:hel
echo About  =  Open  =  Ver  =  Help
echo Porameter
set /p "help=Help:"
if "%help%"=="About" (goto ABOUTHELP)
if "%help%"=="about" (goto ABOUTHELP)
if "%help%"=="about.cmd" (goto ABOUTHELP)
if "%help%"=="About.cmd" (goto ABOUTHELP)
if "%help%"=="ABOUT.CMD" (goto ABOUTHELP)

if "%help%"=="help" (goto HELPHELP)
if "%help%"=="HELP" (goto HELPHELP)
if "%help%"=="Help" (goto HELPHELP)
if "%help%"=="HELP.CMD" (goto HELPHELP)
if "%help%"=="help.cmd" (goto HELPHELP)

if "%help%"=="ver" (goto VERHELP)
if "%help%"=="VER" (goto VERHELP)
if "%help%"=="Ver" (goto VERHELP)
if "%help%"=="VER.CMD" (goto VERHELP)
if "%help%"=="ver.cmd" (goto VERHELP)

if "%help%"=="open" (goto OPENHELP)
if "%help%"=="Open" (goto OPENHELP)
if "%help%"=="OPEN" (goto OPENHELP)
if "%help%"=="OPEN.CMD" (goto OPENHELP)
if "%help%"=="open.cmd" (goto OPENHELP)

if "%help%"=="PORAMETER" (goto PORAMETER)
if "%help%"=="porameter" (goto PORAMETER)
if "%help%"=="Porameter" (goto PORAMETER)











if "%help%"=="exit" (goto begin)
goto hel




:ABOUTHELP
echo About the program
echo Press key to next
pause > z:\temp.of
cls
goto helps



:HELPHELP
echo Help the program
echo Press key to next
pause > z:\temp.of
cls
goto helps


:VERHELP
echo Ver the program
echo Press key to next
pause > z:\temp.of
cls
goto helps


:OPENHELP
cls
echo Open local cmd file:
echo z>open
echo Porameter
echo Porameter:
echo Open:c:\Date.cmd
echo Name:Date
echo Porameter
echo Porameter:
echo CP/M-86 emulator for DOS vers 1.3 - 11/30/97
echo Copyright (c) 1985, 1997 Jim Lopushinsky
echo Mon 01/00/78 00:00:00
type z:\bel.te
echo Open cmd file from zip arhive
echo z>open
echo Porameter
echo Porameter:zip
echo Zip file:c:\Date.zip
echo start file
echo start:Date.cmd
echo Porameter
echo Porameter:
echo CP/M-86 emulator for DOS vers 1.3 - 11/30/97
echo Copyright (c) 1985, 1997 Jim Lopushinsky
echo Mon 01/00/78 00:00:00
echo Press key to next
pause > z:\temp.of
cls
goto helps


:PORAMETER
echo Porameters:
echo for OPEN.CMD: zip
echo for ABOUT.CMD: not porameters
echo for VER.CMD: not porameters
echo for HELP.CMD: not porameters
echo Press key to next
pause > z:\temp.of
cls
goto helps



Скрипт ещё не дописан, виртуальный диск будет создан с помощью wmvare think app.
Роль Api будет выполнять cpm86.exe
Последний раз редактировалось ctv 30 сен 2023, 23:40, всего редактировалось 1 раз.
MS-DOS 6.22 FOR WINDOWS https://мс-дос.рф
MS-DOS BOOT FROM USB https://мс-дос.рф/MSDBFU/
Эмулятор Windows 3.11 https://мс-дос.рф/emuwin3x.php
Аватара пользователя
ctv
Мастер Даунгрейда
 
Сообщения: 368
Зарегистрирован: 20 июл 2018, 14:31
Откуда: Россия, Владимировская обл, Вязниковский район, д.эдон.
Железо: Pentium3

Re: Эмулятор cp/m86

Сообщение APTEMK » 07 дек 2020, 11:49

ctv писал(а):На win10 не работает, там слишком урезанный ntvdm.


Думать надо о пользователях десятки!
Последний раз редактировалось APTEMK 30 сен 2023, 23:40, всего редактировалось 1 раз.
http://betaoperating.mybb.ru/ - мой форум

Изображение
Аватара пользователя
APTEMK
Мастер Даунгрейда
 
Сообщения: 908
Зарегистрирован: 28 сен 2019, 10:54
Откуда: 10.12.2004 Приморский Край, Надеждинский р-н
Железо: 10.12.04компьютер Fujitsu (Pentium lll 550, 128 мб Озу, видеокарта ,Ati Rage Xl,Hdd 10 Гб, Windows98

Re: Эмулятор cp/m86

Сообщение Petya_FedoroF » 07 дек 2020, 12:29

APTEMK писал(а):
ctv писал(а):На win10 не работает, там слишком урезанный ntvdm.


Думать надо о пользователях десятки!

Cкорее Microsoft надо думать о пользователях 32-битного ПО, чем Ctv о пользователях Microsoft Windows 10.
Последний раз редактировалось Petya_FedoroF 30 сен 2023, 23:40, всего редактировалось 2 раз(а).
Я агленулся пасматреть ни агленулся ли славарь но он бижал вдоли креча "Помоги!"

Не основное железо: i3-2100, Radeon HD4350; GeForce GT555M, 4GiB DDR3; Mobile Celeron Dual-core 1.1GHz, 4GiB DDR2; GeForce 6100
Аватара пользователя
Petya_FedoroF
Мастер Даунгрейда
 
Сообщения: 244
Зарегистрирован: 18 дек 2018, 08:30
Откуда: Российская Федерация, Приморский Край
Железо: Gigabyte GA-K8N, AMD Athlon 64 3000+, 1024MiB DDR400 GeForce2 MX400 32MB SDRAM

Re: Эмулятор cp/m86

Сообщение APTEMK » 07 дек 2020, 15:01

Petya_FedoroF писал(а):Cкорее Microsoft надо думать о пользователях 32-битного ПО.


Я не про Microsoft, я про ctv сказал так
Последний раз редактировалось APTEMK 30 сен 2023, 23:40, всего редактировалось 1 раз.
http://betaoperating.mybb.ru/ - мой форум

Изображение
Аватара пользователя
APTEMK
Мастер Даунгрейда
 
Сообщения: 908
Зарегистрирован: 28 сен 2019, 10:54
Откуда: 10.12.2004 Приморский Край, Надеждинский р-н
Железо: 10.12.04компьютер Fujitsu (Pentium lll 550, 128 мб Озу, видеокарта ,Ati Rage Xl,Hdd 10 Гб, Windows98

Re: Эмулятор cp/m86

Сообщение ctv » 09 дек 2020, 12:07

Нужна помощь с написанием dir, как в cp/m86
Требования работа в win98
Без отображения папок, показывать только файлы в текущем котологе.
Код: Выделить всё
; FASM code // dir cp/m86
org  100h
jmp  start



prob db '     :     $'
Driv db 'z:$'
crlf    db  13,10, 'z:'           ;
newDTA  db  45 dup('$')          ; область DTA
fName   db  '*.*',0              ; ищем все файлы
noFile  db  13,10,'-----------------------------------'
        db  13,10,'All file printed! Press any key...$'

start:
      mov bx, 0
      mov ax,3
      mov   ah,1ah               ; создать DTA
      mov   dx,newDTA            ;
      int   21h                  ;

      mov   ah,4eh               ; искать файлы,
      mov   cx,10h               ;    ..включая папки.
      mov   dx,fName             ; маска для поиска
      int   21h                  ;
      jc    stop                 ; ошибка?
      call  printName            ; выводим имя на экран

find: mov   ah,4fh               ; искать сл.файл
      mov   dx,newDTA            ;
      int   21h                  ;
      jc    stop                 ;
      call  printName            ;
      jmp   find                 ;

stop: mov   ah,9                 ; нет больше файлов!
      mov   dx,noFile            ;
      int   21h                  ;

exit:                            ;
      xor   ax,ax                ; выход по клавише
      int   16h                  ;
      int   20h                  ;

;нннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннн
printName:                       ;
      mov   ah,9                 ;

add bx,1 ;Прибовляем к bx 1
Cpm ax, 0 ; Если регистр ax равен 0, то присваеваем ему 3.
Mov ax,3
Je dd ; Иначе переходим на метку dd
Dd:
Cmp ax, 3 ; Если регистр равен 3, то переходим на метку dsk.
Je dsk
Je file ; Иначе переходим на метку file



Dsk:
Mov dx, Driv ;Устанавливаем букву  диска
Inc ax ;Уменьшаем ax, на 1
int   21h    ; Выводим на экран букву диска

File:
Mov dx,newDTA+30         ; в DTA+30 хранится имя файла
int   21h                  ; выводим его на экран

Cmp bx,4 ;Если регистр bx равен 4 то переходим на метку per
Je per
Je ff ; Иначе переходим на метку ff

Ff:
Mov dx, prob ;Пробел между файлами как в cpm86
int   21h   ;Выводим на экран пробел
Jmp endf ; Переходим на метку endf



Per:

Mov dx, crlf ;Перенос строки
int   21h  ; Выводим на экран
Mov bx, 0 ;Вносим в регистр bx чесло 0
Jmp endf ; Переходим на метку endf

Endf:

mov   al,'$'               ; очищаем DTA для сл.имени
      mov   cx,13                ; 13 символов
      mov   di,newDTA+30         ;    ..от начала области имени
      rep   stosb                ; записываем маркеры конца для fn(9)
ret                              ;
Последний раз редактировалось ctv 30 сен 2023, 23:40, всего редактировалось 1 раз.
MS-DOS 6.22 FOR WINDOWS https://мс-дос.рф
MS-DOS BOOT FROM USB https://мс-дос.рф/MSDBFU/
Эмулятор Windows 3.11 https://мс-дос.рф/emuwin3x.php
Аватара пользователя
ctv
Мастер Даунгрейда
 
Сообщения: 368
Зарегистрирован: 20 июл 2018, 14:31
Откуда: Россия, Владимировская обл, Вязниковский район, д.эдон.
Железо: Pentium3

Re: Эмулятор cp/m86

Сообщение ctv » 09 дек 2020, 18:52

Народ, у кого есть возможность протестить программу на winxp 32x
Последний раз редактировалось ctv 30 сен 2023, 23:40, всего редактировалось 1 раз.
MS-DOS 6.22 FOR WINDOWS https://мс-дос.рф
MS-DOS BOOT FROM USB https://мс-дос.рф/MSDBFU/
Эмулятор Windows 3.11 https://мс-дос.рф/emuwin3x.php
Аватара пользователя
ctv
Мастер Даунгрейда
 
Сообщения: 368
Зарегистрирован: 20 июл 2018, 14:31
Откуда: Россия, Владимировская обл, Вязниковский район, д.эдон.
Железо: Pentium3

Re: Эмулятор cp/m86

Сообщение APTEMK » 13 дек 2020, 09:39

ctv писал(а):Народ, у кого есть возможность протестить программу на winxp 32x


У меня!
Последний раз редактировалось APTEMK 30 сен 2023, 23:40, всего редактировалось 1 раз.
http://betaoperating.mybb.ru/ - мой форум

Изображение
Аватара пользователя
APTEMK
Мастер Даунгрейда
 
Сообщения: 908
Зарегистрирован: 28 сен 2019, 10:54
Откуда: 10.12.2004 Приморский Край, Надеждинский р-н
Железо: 10.12.04компьютер Fujitsu (Pentium lll 550, 128 мб Озу, видеокарта ,Ati Rage Xl,Hdd 10 Гб, Windows98

Re: Эмулятор cp/m86

Сообщение KPG » 13 дек 2020, 12:50

Исходники CP/M для разных процессоров.
http://www.retroarchive.org/cpm/archive ... ource.html

P.S. Можно дополнить местный архив исходниками.
Последний раз редактировалось KPG 30 сен 2023, 23:40, всего редактировалось 3 раз(а).
KPG
Мастер Даунгрейда
 
Сообщения: 318
Зарегистрирован: 21 окт 2015, 20:53

Re: Эмулятор cp/m86

Сообщение Enrique » 13 дек 2020, 19:01

Ребята. На компьютере старом нужна среда разработчика Borland
и cборщик Tasm.
Поверьте программисту с двадцатилетним стажем и продолжающим
практиковать каждый день.
Последний раз редактировалось Enrique 30 сен 2023, 23:40, всего редактировалось 1 раз.
Аватара пользователя
Enrique
Опытный даунгрейдер
 
Сообщения: 35
Зарегистрирован: 13 дек 2020, 18:25

Re: Эмулятор cp/m86

Сообщение ctv » 24 дек 2020, 19:55

Enrique писал(а):Ребята. На компьютере старом нужна среда разработчика Borland
и cборщик Tasm.
Поверьте программисту с двадцатилетним стажем и продолжающим
практиковать каждый день.

Я предпочитаю fasm, в качестве транслятора, а в качестве отладчика turbo debuger.
Последний раз редактировалось ctv 30 сен 2023, 23:40, всего редактировалось 1 раз.
MS-DOS 6.22 FOR WINDOWS https://мс-дос.рф
MS-DOS BOOT FROM USB https://мс-дос.рф/MSDBFU/
Эмулятор Windows 3.11 https://мс-дос.рф/emuwin3x.php
Аватара пользователя
ctv
Мастер Даунгрейда
 
Сообщения: 368
Зарегистрирован: 20 июл 2018, 14:31
Откуда: Россия, Владимировская обл, Вязниковский район, д.эдон.
Железо: Pentium3


Вернуться в Операционные системы

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 13