Compare commits

...

142 Commits

Author SHA1 Message Date
Wayne Warthen
9d9018b455 Finalize Release 2.8.2
Minor correction to VGA3 timing parameters
2017-07-18 16:15:16 -07:00
Wayne Warthen
eb460e885a Finalize Release v2.8.1 2017-07-11 18:53:35 -07:00
Wayne Warthen
8ca34eb81f UNA Update
Update to current version of UNA and fix FDISK80 breakage.
2017-07-06 18:03:18 -07:00
Wayne Warthen
f509b0fa01 Finalize Release v2.8.0 2017-07-04 15:35:01 -07:00
Wayne Warthen
75282a33c9 Fix Filename Case 2017-06-30 21:55:30 -07:00
Wayne Warthen
db89164e1e Fix Filename Case 2017-06-30 21:55:00 -07:00
Wayne Warthen
fb6b1fd54a Add VGA3 Support 2017-06-30 21:50:10 -07:00
Wayne Warthen
939a822f65 More BPBIOS Cleanup 2016-11-28 21:19:22 -08:00
Wayne Warthen
4ab1cadfad BPBIOS and Date Stamping Cleanups
- Improved BPBIOS compatibility
- Enhanced STAMPS.DAT w/ NZT stamp
2016-11-27 20:15:12 -08:00
Wayne Warthen
97c36c0efc BPBIOS Related Fixes 2016-11-23 19:31:57 -08:00
Wayne Warthen
8d02b02ab4 Cleanup 2016-10-03 15:27:18 -07:00
Wayne Warthen
f1ada661c1 Additional directory cleanup 2016-09-30 20:00:13 -07:00
Wayne Warthen
90d7b9673c Revamp directory structure 2016-09-30 18:07:16 -07:00
Wayne Warthen
5e6196d541 Update Doc build process 2016-09-29 17:01:46 -07:00
Wayne Warthen
e350aa0672 Interrupt framework implementation
- Interrupt framework
- Documentation in progress w/ Latex conversion
2016-07-10 21:55:00 -07:00
Wayne Warthen
c478a04b48 Prerelease 5 2016-06-03 18:13:15 -07:00
Wayne Warthen
928a64147c Bug Fixes 2016-06-03 17:56:22 -07:00
Wayne Warthen
a57736ef2b Minor cleanup 2016-06-01 21:20:59 -07:00
Wayne Warthen
62641ba4a6 Prerelease 4 2016-05-29 16:52:28 -07:00
Wayne Warthen
5f205dd90b Boot and Bank Layout Cleanup
Revised hbios.asm to compile in 3 modes (ROM/APP/IMG boot).  Updated and
simplified ROM bank assignments.
2016-05-29 07:56:01 -07:00
Wayne Warthen
5115684dc2 Fix Compilation Error in XIO.ASM 2016-05-22 07:59:42 -07:00
Wayne Warthen
a2566d4de5 Revise Serial Driver Initialization
- Implement PREINIT
- Use detected CPU speed for initialization
2016-05-22 07:52:13 -07:00
Wayne Warthen
68c9813390 Bump Version 2016-04-26 16:18:02 -07:00
Wayne Warthen
0653a42984 Fix Delay Initialization 2016-04-25 22:12:13 -07:00
Wayne Warthen
a7d4459a01 Preserve Partition Table in SYSCOPY
Updated FLASH to latest version
2016-04-24 21:51:37 -07:00
Wayne Warthen
7da6c582a0 Bug Fixes 2016-04-22 15:45:10 -07:00
Wayne Warthen
684f59a73c Bug Fixes in ASSIGN Command 2016-04-21 13:16:41 -07:00
Wayne Warthen
97a09a6e33 Revised Serial Device Config Routines 2016-04-20 22:06:32 -07:00
Wayne Warthen
9e5a1ea41b UART Config Changes 2016-04-19 15:06:06 -07:00
Wayne Warthen
07d833473c Bug Fixes 2016-04-14 17:29:45 -07:00
Wayne Warthen
31f5388f9e Implement HBIOS Reset Function 2016-04-10 17:24:27 -07:00
Wayne Warthen
521af19e50 VDA Device Initialization Flow Cleanup 2016-04-10 16:21:29 -07:00
Wayne Warthen
9605d80b99 Code Cleaning 2016-04-08 18:04:06 -07:00
Wayne Warthen
67ede23694 Clean Up Drive Assignment Code 2016-04-07 22:56:46 -07:00
Wayne Warthen
5154713644 Config Files Overhaul 2016-04-06 18:14:14 -07:00
Wayne Warthen
5bb7bd6c44 Revise BPBIOS Prototype
Revise BPBIOS source to accommodate recent changes in HBIOS API.
2016-03-30 22:18:54 -07:00
Wayne Warthen
8fe3526ecd API Revisions / Cleanup
- Improved banked copy size and performance
- Revised API for SETCPY, BNKCPY, SETBNK, and GETBNK
2016-03-30 17:10:08 -07:00
Wayne Warthen
f9c7f30d2d Bug Fixes 2016-03-25 23:06:18 -07:00
Wayne Warthen
8aedfbb7f3 Add Device Summary Display 2016-03-25 21:20:05 -07:00
Wayne Warthen
b4fc05acfb Incorporate FDISK80 2016-03-21 17:05:57 -07:00
Wayne Warthen
5adbef5f68 Revised Emulation Services 2016-03-19 21:21:17 -07:00
Wayne Warthen
b63dfdf587 Revised Disk API 2016-03-10 17:44:42 -08:00
Wayne Warthen
6354bd300d Revised disk API 2016-03-04 20:09:47 -08:00
Wayne Warthen
53a74f78d7 HBIOS driver and BPBIOS refinements
- Refined sd, ide, and ppide drivers to improve hardware compatibility
- Improved BPBIOS build process
2016-02-01 14:50:58 -08:00
Wayne Warthen
b67106889e Add HBIOS Heap Memory
- New heap memory functions
- Restructured new disk I/O functions
2016-01-10 16:01:33 -08:00
Wayne Warthen
25974843e3 Storage Driver Refactoring 2015-12-06 20:10:00 -08:00
Wayne Warthen
6d8c2283b9 ParPortProp Driver Refactoring 2015-11-25 15:43:07 -08:00
Wayne Warthen
df74f73d5b PROPIO Driver Refactoring 2015-11-21 13:16:23 -08:00
Wayne Warthen
099172e44e IDE and PPIDE driver refactoring 2015-11-07 16:50:58 -08:00
Wayne Warthen
4626695b52 Overhaul PPIDE driver and sync with IDE driver 2015-11-05 19:37:49 -08:00
Wayne Warthen
8fbeb6eecc Continued cleanup of SD and IDE driver code 2015-10-24 12:52:27 -07:00
Wayne Warthen
d90c4dfed2 Correct capacity and geometry functions in sd and hsdk drivers 2015-10-04 12:22:45 -07:00
Wayne Warthen
803bb6a87d Refactor SD driver 2015-10-04 08:08:00 -07:00
Wayne Warthen
31d58909ce Refactor IDE driver
- Dynamic detection of devices
- Significant code clean up
2015-09-07 20:25:21 -07:00
Wayne Warthen
522b061fe6 Start of new geometry/capacity functions in HBIOS 2015-09-05 15:35:06 -07:00
Wayne Warthen
63c0289e28 Handle Output directory better
Git refuses to store empty directories.  So, build scripts modified to
create Output directory as needed.
2015-08-21 20:57:48 -07:00
Wayne Warthen
a0cc974323 Refactor Loader Code
Move loader code to an include file and create separate wrappers for
each of the loader functions.
2015-08-21 19:59:45 -07:00
Wayne Warthen
20f874d146 Create .gitattributes 2015-08-19 20:06:58 -07:00
wwarthen
de52c4f560 Reintegrate wbw -> trunk 2015-08-19 17:34:42 +00:00
wwarthen
c754fcdb99 Reintegrate wbw -> trunk 2015-04-08 04:09:08 +00:00
wwarthen
2148c3e1f7 Reintegrate wbw -> trunk 2015-04-03 06:02:14 +00:00
wwarthen
cc51d012de Reintegrate wbw -> trunk 2015-03-23 01:50:45 +00:00
wwarthen
ea547a012b Reintegrate wbw -> trunk 2015-03-16 01:37:54 +00:00
wwarthen
8e535d53f4 Reintegrate wbw26 -> trunk 2014-10-26 03:02:33 +00:00
wwarthen
5e08740456 Reintegrate wbw26 -> trunk 2014-10-18 19:02:13 +00:00
wwarthen
72dc548e6e Reintegrate wbw26 -> trunk 2014-10-14 03:20:39 +00:00
wwarthen
594ae07aa6 Reintegrate wbw26 -> trunk 2014-10-13 15:47:16 +00:00
wwarthen
a8491cc5e0 Reintegrate wbw26 -> trunk 2014-10-13 15:24:20 +00:00
wwarthen
74b80aaeeb Reintegrate wbw -> trunk 2014-09-08 04:11:55 +00:00
wwarthen
09da338d05 Reintegrate wbw -> trunk 2014-08-30 20:50:48 +00:00
wwarthen
3396ba3513 Reintegrate wbw -> trunk 2014-08-30 20:09:07 +00:00
wwarthen
d211dc2222 Reintegrate wbw -> trunk 2014-05-04 23:19:46 +00:00
wwarthen
2e4eb2fb1b Reintegrate wbw -> trunk 2014-03-02 02:37:34 +00:00
wwarthen
63b624fa0c Reintegrate wbw -> trunk 2014-01-21 02:09:03 +00:00
wwarthen
7c547f515a Reintegrate wbw -> trunk 2013-11-22 23:16:39 +00:00
wayne
762f325e10 Fix 2013-09-30 06:05:14 +00:00
wayne
b030913abd Reintegrate wbw -> trunk 2013-09-30 04:44:49 +00:00
wayne
ff5bf3c669 Reintegrate wbw -> trunk 2013-06-25 23:54:23 +00:00
wayne
bf778fafe3 Reintegrate wbw -> trunk 2013-06-23 04:52:57 +00:00
wayne
513b4c615a Reintegrate wbw -> trunk 2013-06-22 04:24:27 +00:00
wayne
5bd0f69467 Reintegrate wbw -> trunk 2013-06-15 00:28:15 +00:00
wayne
82351f2c5f Reintegrate wbw -> trunk 2013-06-08 04:58:34 +00:00
wayne
f5c27ce732 Reintegrate wbw -> trunk 2013-05-25 06:08:10 +00:00
wayne
7c2a1b447b Reintegrate wbw -> trunk 2013-05-17 18:42:24 +00:00
wayne
f5f4892f81 Reintegrate wbw -> trunk 2013-05-17 04:05:28 +00:00
wayne
91dafd7191 Reintegrate wbw -> trunk 2013-05-11 03:36:41 +00:00
wayne
a010260c8c Reintegrate wbw -> trunk 2013-05-10 02:38:16 +00:00
wayne
ce1fa57cb1 Reintegrate wbw -> trunk 2013-04-10 04:13:47 +00:00
wayne
a11f38fdbd Reintegrate wbw -> trunk 2013-04-07 06:17:07 +00:00
wayne
6ee79e5a7e Reintegrate wbw -> trunk 2013-04-04 05:00:45 +00:00
wayne
4ee7491267 Reintegrate wbw -> trunk 2013-04-03 04:05:13 +00:00
wayne
4c81851727 Reintegrate wbw -> trunk 2013-04-01 01:00:11 +00:00
wayne
aa44b9de69 Reintegrate dwg -> trunk 2013-04-01 00:39:56 +00:00
wayne
faf62adfe3 Reintegrate dwg -> trunk 2013-04-01 00:37:12 +00:00
wayne
9c4df8fa38 Fixing SVN 2013-04-01 00:34:04 +00:00
wayne
01b68baf68 Reintegrate dwg -> trunk 2013-04-01 00:20:45 +00:00
wayne
d80c43d83b Reintegrate wbw -> trunk 2013-03-31 00:49:34 +00:00
wayne
4356167cbc Reintegrate wbw -> trunk 2013-03-19 21:25:25 +00:00
wayne
8f4e110ebe Reintegrate dwg -> trunk 2013-03-19 21:14:17 +00:00
wayne
21ef5a3121 Reintegrate wbw -> trunk 2013-03-19 16:18:23 +00:00
wayne
9eb8a751dc Reintegrate wbw -> trunk 2013-03-19 03:52:24 +00:00
wayne
7b2085be52 Reintegrate wbw -> trunk 2013-02-19 05:13:44 +00:00
wayne
ad4c680dff Reintegrate s100 -> trunk 2013-02-19 04:52:58 +00:00
wayne
9f565ecebc Reintegrate dwg -> trunk 2013-02-19 04:50:18 +00:00
wayne
284983a81b Reintegrate dwg -> trunk 2013-02-19 04:34:23 +00:00
wayne
85fe28c43e Reintegrate dwg -> trunk 2013-02-16 06:42:29 +00:00
wayne
9e2bdf762b Reintegrate wbw -> trunk 2013-01-30 05:51:28 +00:00
wayne
8b9af0e7f3 Reintegrate s100 -> trunk 2013-01-30 05:41:50 +00:00
wayne
4fd572558e Reintegrate wbw -> trunk 2013-01-24 00:16:10 +00:00
wayne
202e23d6d9 Reintegrate s100 -> trunk 2013-01-23 15:23:07 +00:00
wayne
804ee6f3d8 Finalize 2.3 2013-01-17 05:46:00 +00:00
wayne
6577b5f96b Reintegrate dwg -> trunk 2013-01-17 05:34:43 +00:00
wayne
7beb054122 Reintegrate dwg -> trunk 2013-01-16 04:55:30 +00:00
wayne
c24a04300c Reintegrate wbw -> trunk 2013-01-16 04:50:59 +00:00
wayne
d1b74430c6 Reintegrate wbw -> trunk 2013-01-02 00:28:36 +00:00
wayne
b86d2c66de Reintegrate wbw -> trunk 2012-12-30 07:39:51 +00:00
wayne
a4920532bf Reintegrate wbw -> trunk 2012-12-30 07:01:37 +00:00
wayne
8450dca0b9 Reintegrate dwg -> trunk 2012-12-30 06:12:39 +00:00
wayne
4cfa164f1f Reintegrate wbw -> trunk 2012-11-30 19:11:13 +00:00
wayne
d545100ce4 Reintegrate dwg -> trunk 2012-11-30 19:08:50 +00:00
wayne
e984d5899f Reintegrate wbw -> trunk 2012-11-25 20:13:42 +00:00
wayne
8f5fd86169 Reintegrate wbw -> trunk 2012-11-23 14:21:38 +00:00
wayne
f510da9d46 Reintegrate dwg -> trunk 2012-11-23 14:05:57 +00:00
wayne
bba3b237b8 Reintegrate wbw -> trunk 2012-11-18 22:36:17 +00:00
wayne
ed8b513dc3 Reintegrate dwg -> trunk 2012-11-18 22:28:31 +00:00
wayne
5434a2eea8 Reintegrate wbw -> trunk 2012-11-16 20:03:24 +00:00
wayne
1d562b16bd Reintegrate dwg -> trunk 2012-11-16 20:02:42 +00:00
wayne
993deef13a Reintegrate dwg -> trunk 2012-11-16 15:34:46 +00:00
wayne
164dda5f51 Reintegrate wbw -> trunk 2012-11-16 09:03:19 +00:00
wayne
f7f27213d9 Reintegrate wbw -> trunk 2012-11-11 22:07:10 +00:00
wayne
aecf9aa283 Reintegrate dwg -> trunk 2012-11-09 15:03:24 +00:00
wayne
95d2a73b7d Reintegrate wbw -> trunk 2012-11-09 09:34:33 +00:00
wayne
b6b216aee5 Reintegrate wbw -> trunk 2012-11-05 09:54:47 +00:00
wayne
ef44b0d7ad Reintegrate wbw -> trunk 2012-11-03 16:58:54 +00:00
wayne
6e1bce4587 Rollback inadventent changes to config_n8_2312.asm 2012-11-02 07:12:56 +00:00
wayne
938935314d Reintegrate dwg -> trunk 2012-11-01 20:32:51 +00:00
wayne
7f0e89003d Reintegrate dwg -> trunk 2012-10-27 11:19:57 +00:00
wayne
3969e15fd6 Reintegrate dwg -> trunk 2012-10-25 07:14:29 +00:00
wayne
d1aa9f4054 Reintegrate wbw -> trunk 2012-10-23 21:38:39 +00:00
wayne
21e2ff7989 Reintegrate dwg -> trunk 2012-10-23 10:46:31 +00:00
wayne
0791fde5c4 Reintegrate wbw -> trunk 2012-10-23 10:25:28 +00:00
wayne
191f08cc46 Bringing trunk up to status of old "current" 2012-10-23 08:19:24 +00:00
1633 changed files with 243981 additions and 24715 deletions

2
.gitattributes vendored Normal file
View File

@@ -0,0 +1,2 @@
# Leave all line endings alone!
* -text

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1,20 +0,0 @@
/****************************/
/* applvers.h dwg - 2.0.0.0 */
/****************************/
#define A_RMJ 2
#define A_RMN 0
#define A_RUP 0
#define A_RTP 0
#define A_MONTH 6
#define A_DAY 10
#define A_YEAR 2012
#define A_YR 12
/********************/
/* eof - applvers.h */
/********************/


View File

@@ -1,67 +0,0 @@
; asmiface.asm 6/4/2012 dwg -
extrn .begin,.chl,.swt
extrn csave,cret,.move
global xrega_,1
global xregbc_,2
global xregde_,2
global xreghl_,2
PUBLIC asmif_
asmif_: lxi d,.2
call csave
LXI H,8-.2 ; pick up 1st parm "function address"
DAD SP
MOV E,M
INX H
MOV D,M
xchg
shld callad+1
LXI H,10-.2
DAD SP
MOV E,M
INX H
MOV D,M ; DE = parm
xchg
shld xregbc_
LXI H,12-.2
DAD SP
MOV E,M
INX H
MOV D,M
xchg
shld xregde_
LXI H,14-.2
DAD SP
MOV E,M
INX H
MOV D,M
xchg
shld xreghl_
lhld xregbc_
mov b,h
mov c,l ; setup B&C
lhld xregde_
xchg ; setup D&E
lhld xreghl_ ; setup H&L
callad: call 0e639h ; setlu
sta xrega_
shld xreghl_
xchg
shld xregde_
mov l,c
mov h,b
shld xregbc_
RET ; HL has return value
.2 EQU 0
END


View File

@@ -1,14 +0,0 @@
/*****************************/
/* asmiface.H 6/4/2012 dwg - */
/*****************************/
extern char xrega;
extern unsigned int xregbc;
extern unsigned int xregde;
extern unsigned int xreghl;
extern asmif(); /* asmif(0xe60,bc,de,hl); */
/********************/
/* eof - asmiface.h */
/********************/


View File

@@ -1,71 +0,0 @@
; bdoscall.asm 3/10/2012 dwg - bdos binding for Aztec C
global drega_,1
global dregbc_,2
global dregde_,2
global dreghl_,2
PUBLIC lurst_
lurst_:
push b
push d
push h
push psw
mvi c,37
lxi d,127
lxi b,127
call 5
pop psw
pop h
pop d
pop b
RET
PUBLIC bdoscall_
bdoscall_:
push b
push d
push h
push psw
lhld dregbc_
mov b,h
mov c,l
lhld dregde_
mov d,h
mov e,l
lhld dreghl_
lda drega_
call 5
sta drega_
shld dreghl_
mov l,e
mov h,d
shld dregde_
mov l,c
mov h,b
shld dregbc_
pop psw
pop h
pop d
pop b
RET
END


View File

@@ -1,8 +0,0 @@
/* bdoscall.h 3/10/2012 dwg - header file for bdoscall */
extern char drega;
extern unsigned int dregbc;
extern unsigned int dregde;
extern unsigned int dreghl;
extern bdoscall();


Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1,80 +0,0 @@
; bioscall.asm 3/10/2012 dwg - bios binding for Aztec C
global irega_,1
global iregbc_,2
global iregde_,2
global ireghl_,2
public getmeta_
getmeta_:
push psw
push b
push d
push h
lxi b,4
lxi d,0
call 0e61bh
lxi d,0
call 0e61eh
lxi d,11
call 0e621h
lxi d,80h
call 0e624h
call 0e627h
pop h
pop d
pop b
pop psw
ret
PUBLIC bioscall_
bioscall_:
push b
push d
push h
push psw
lhld iregbc_
mov b,h
mov c,l
lhld iregde_
mov d,h
mov e,l
lhld ireghl_
shld mycall+1
lda irega_
mycall: call 5
sta irega_
shld ireghl_
mov l,e
mov h,d
shld iregde_
mov l,c
mov h,b
shld iregbc_
pop psw
pop h
pop d
pop b
RET
END


View File

@@ -1,8 +0,0 @@
/* bioscall.h 3/10/2012 dwg - header file for bdoscall */
extern char irega;
extern unsigned int iregbc;
extern unsigned int iregde;
extern unsigned int ireghl;
extern bioscall();


View File

@@ -1,41 +0,0 @@
/* cbanner.c 3/12/2012 dwg - */
#include "portab.h"
#include "globals.h"
#include "applvers.h"
char * lines = "----------------------------------------";
char * line1 = "12345678.123 mm/dd/yyyy Version x.x.x.x";
char * line2 = "S/N CPM80-DWG-654321 Licensed under GPL3";
char * line3 = "Copyright (C) 2011-12 Douglas W. Goodall";
sbanner(program)
char *program;
{
char szTemp[128];
printf("%s ",program);
printf("%2d/%2d/%4d ",A_MONTH,A_DAY,A_YEAR);
printf("Version %d.%d.%d.%d ",A_RMJ,A_RMN,A_RUP,A_RTP);
printf("COPR Douglas Goodall Licensed w/GPLv3\n");
}
banner(program)
char *program;
{
char szTemp[128];
printf("%s\n",lines);
strcpy(szTemp,program);
while(12 > strlen(szTemp)) {
strcat(szTemp," ");
}
printf("%s ",szTemp);
printf("%2d/%2d/%4d ",A_MONTH,A_DAY,A_YEAR);
printf("Version %d.%d.%d.%d\n",A_RMJ,A_RMN,A_RUP,A_RTP);
printf("%s\n",line2);
printf("%s\n",line3);
printf("%s\n",lines);
}


View File

@@ -1 +0,0 @@

View File

@@ -1,133 +0,0 @@
/* chars.c 6/7/2012 dwg - test command line arguments */
#include "stdio.h"
#include "portab.h"
#include "globals.h"
#include "std.h"
#include "cpm80.h"
#include "cpmappl.h"
#include "applvers.h"
#define TOP 0
#define LEFT 4
char map[256] =
{
/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, /* 0 */
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, /* 1 */
1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 2 */
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 3 0 - 9 */
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 4 A - O */
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 5 P - Z */
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 6 a - o */
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, /* 7 p - z */
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 8 */
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 9 */
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* A */
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* B 0 - 9 */
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* C A - O */
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* D P - Z */
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* E a - o */
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 /* F p - z */
};
char attroff[] = { 27, '[', 'm', 0 };
char attrbold[] = { 27, '[', '1', 'm', 0 };
char attrlow[] = { 27, '[', '2', 'm', 0 };
char attrundr[] = { 27, '[', '4', 'm', 0 };
char attrblnk[] = { 27, '[', '5', 'm', 0 };
char attrrevs[] = { 27, '[', '7', 'm', 0 };
char attrinvs[] = { 27, '[', '8', 'm', 0 };
char graphon[] = { 27, 'F', 0 };
char graphoff[] = { 27, 'G', 0 };
char atreset[] = "0";
char atbold[] = "1";
char atdim[] = "2";
char atundrscr[] = "4";
char atblink[] = "5";
char atrevs[] = "7";
char athidden[] = "8";
char fgblack[] = "30";
char fgred[] = "31";
char fggreen[] = "32";
char fgyellow[] = "33";
char fgblue[] = "34";
char fgmagenta[] = "35";
char fgcyan[] = "36";
char fgwhite[] = "37";
char bgblack[] = "40";
char bgred[] = "41";
char bggreen[] = "42";
char bgyellow[] = "43";
char bgblue[] = "44";
char bgmagenta[] = "45";
char bgcyan[] = "46";
char bgwhite[] = "47";
dispattr(attr,fg,bg)
char * attr;
char * fg;
char * bg;
{
printf("%c[%s;%s;%sm",27,attr,fg,bg);
}
int main(argc,argv)
int argc;
char *argv[];
{
int i,j,k;
int x,y;
if(1 < argc) {
for(i=1;i<argc;i++) {
printf("%c",atoi(argv[i]));
}
} else {
crtinit();
crtclr();
crtlc(0,0);
dispattr(atbold,fggreen,bgblack);
banner("CHARS");
printf("%s",attroff);
dispattr(atbold,fgcyan,bgblack);
for(x=0;x<16;x++) {
crtlc(TOP+6,LEFT+(x*4)+5);
printf("[%x]",x);
}
printf("%s",attroff);
for(y=0;y<16;y++) {
crtlc(TOP+y+7,LEFT+0);
dispattr(atbold,fgcyan,bgblack);
printf("[%x]",y);
printf("%s",attroff);
for(x=0;x<16;x++) {
crtlc(TOP+y+7,LEFT+(x*4)+6);
if(1 == map[(y*16)+x]) {
printf(".");
} else {
printf("%c",(y*16)+x);
}
}
dispattr(atbold,fgcyan,bgblack);
printf(" [%x]",y);
printf("%s",attroff);
}
}
return 0;
}


View File

@@ -1,57 +0,0 @@
/* clogical.c 6/4/2012 dwg - */
#include "portab.h"
#include "cpmbios.h"
#include "asmiface.h"
lugcur(drive)
{
asmif(pGETLU,drive,0,0);
return xregde;
}
lugnum(drive)
{
asmif(pGETLU,drive,0,0);
return xreghl;
}
lugdu(drive)
{
asmif(pGETLU,drive,0,0);
return xregbc>>8;
}
luscur(drive,lunum)
{
asmif(pGETLU,drive,0,0);
/* A = Result 0=OK */
/* B = devunit */
/* DE = current */
/* HL = numlu */
/* BC = devunit*256+drive */
/* DE = current */
/* HL = numlu */
asmif(pSETLU,xregbc,lunum,xreghl);
}
lusnum(drive,numlu)
{
asmif(pGETLU,drive,0,0);
/* A = Result 0=OK */
/* B = devunit */
/* DE = current */
/* HL = numlu */
/* BC = devunit*256+drive */
/* DE = current */
/* HL = numlu */
asmif(pSETLU,xregbc,xregde,numlu);
}
/********************/
/* eof - clogical.c */
/********************/


View File

@@ -1,18 +0,0 @@
/*****************************/
/* clogical.H 6/4/2012 dwg - */
/*****************************/
#define METATRK 0
#define METASEC 11
extern lugdu();
extern lugcur();
extern luscur();
extern lugnum();
extern lusnum();
/********************/
/* eof - clogical.h */
/********************/


View File

@@ -1,53 +0,0 @@
/* cmemory.c 3/13/2012 dwg - */
#include "portab.h"
/* #include "cpmbind.h" */
memcmp(xptr,yptr,count)
u8 * xptr;
u8 * yptr;
int count;
{
u8 * x;
u8 * y;
int i;
x = xptr;
y = yptr;
for(i=0;i<count;i++) {
if(*x++ != *y++) return FALSE;
}
return TRUE;
}
memcpy(dstptr,srcptr,count)
u8 * dstptr;
u8 * srcptr;
int count;
{
u8 * s;
u8 * d;
int i;
s = srcptr;
d = dstptr;
for(i=0;i<count;i++) {
*d++ = *s++;
}
}
memset(dstptr,data,count)
u8 * dstptr;
u8 data;
u16 count;
{
u8 * p;
int i;
p = dstptr;
for(i=0;i<count;i++) {
*p++ = data;
}
}


View File

@@ -1,108 +0,0 @@
/* cnamept1.c 5/24/2012 dwg - added bootlu */
#include "stdio.h"
#include "stdlib.h"
#include "portab.h"
#include "std.h"
#include "cnfgdata.h"
#include "syscfg.h"
extern pager();
char cache[17];
cnamept1(syscfg)
struct SYSCFG * syscfg;
{
strcpy(cache,"syscfg->cnfgdata");
printf("syscfg->jmp jp 0%04xh",syscfg->jmp.address);
pager();
printf("syscfg->cnfloc .dw 0%04xh",syscfg->cnfloc);
pager();
printf("syscfg->tstloc .dw 0%04xh",syscfg->tstloc);
pager();
printf("syscfg->varloc .dw 0%04xh",syscfg->varloc);
pager();
printf("%s.rmj = %d",cache,syscfg->cnfgdata.rmj);
pager();
printf("%s.rmn = %d",cache,syscfg->cnfgdata.rmn);
pager();
printf("%s.rup = %d",cache,syscfg->cnfgdata.rup);
pager();
printf("%s.rtp = %d",cache,syscfg->cnfgdata.rtp);
pager();
printf("%s.diskboot = ",cache);
switch(syscfg->cnfgdata.diskboot) {
case TRUE: printf("TRUE"); break;
case FALSE: printf("FALSE"); break;
}
pager();
printf("%s.devunit = 0x%02x",cache,
syscfg->cnfgdata.devunit);
pager();
printf("%s.bootlu = 0x%04x",cache,
syscfg->cnfgdata.bootlu);
pager();
printf("%s.freq = %dMHz",cache,syscfg->cnfgdata.freq);
pager();
printf("%s.platform = ",cache);
switch(syscfg->cnfgdata.platform) {
case PLT_N8VEM: printf("N8VEM"); break;
case PLT_ZETA: printf("ZETA"); break;
case PLT_N8: printf("N8"); break;
}
pager();
printf("%s.dioplat = ",cache);
switch(syscfg->cnfgdata.dioplat) {
case DPNONE: printf("DIOPLT_NONE"); break;
case DPDIO: printf("DIOPLT_DISKIO"); break;
case DPZETA: printf("DIOPLT_ZETA"); break;
case DPDIDE: printf("DIOPLT_DIDE"); break;
case DPN8: printf("DIOPLT_N8"); break;
case DPDIO3: printf("DIOPLT_DISKIO3"); break;
default: printf("Unknown"); break;
}
pager();
printf("%s.vdumode = ",cache);
switch(syscfg->cnfgdata.vdumode) {
case VPNONE: printf("VDUPLT_NONE"); break;
case VPVDU: printf("VDUPLT_VDU"); break;
case VPVDUC: printf("VDUPLT_VDUC"); break;
case VPPROPIO: printf("VDUPLT_PROPIO"); break;
case VPN8: printf("VDUPLT_VPN8"); break;
default: printf("Unknown!!"); break;
}
pager();
printf("%s.romsize = %d",cache,
syscfg->cnfgdata.romsize);
pager();
printf("%s.ramsize = %d",cache,
syscfg->cnfgdata.ramsize);
pager();
}
/********************/
/* eof - cnamecp1.c */
/********************/


View File

@@ -1,113 +0,0 @@
/* cnamept2.c 5/24/2012 dwg - */
#include "stdio.h"
#include "stdlib.h"
#include "portab.h"
#include "std.h"
#include "cnfgdata.h"
#include "syscfg.h"
extern pager();
char cache[17];
cnamept2(syscfg)
struct SYSCFG * syscfg;
{
strcpy(cache,"syscfg->cnfgdata");
printf("%s.clrramdk = ",cache);
switch(syscfg->cnfgdata.clrramdk) {
case CLRNEV: printf("CLR_NEVER"); break;
case CLRAUTO: printf("CLR_AUTO"); break;
case CLRALLW: printf("CLR_ALLWAYS"); break;
}
pager();
printf("%s.dskyenable = ",cache);
switch(syscfg->cnfgdata.dskyenable) {
case TRUE: printf("TRUE"); break;
case FALSE: printf("FALSE"); break;
}
pager();
printf("%s.uartenable = ",cache);
switch(syscfg->cnfgdata.uartenable) {
case TRUE: printf("TRUE"); break;
case FALSE: printf("FALSE"); break;
}
pager();
printf("%s.vduenable = ",cache);
switch(syscfg->cnfgdata.vduenable) {
case TRUE: printf("TRUE"); break;
case FALSE: printf("FALSE"); break;
}
pager();
printf("%s.fdenable = ",cache);
switch(syscfg->cnfgdata.fdenable) {
case TRUE: printf("TRUE"); break;
case FALSE: printf("FALSE"); break;
}
pager();
if(TRUE == syscfg->cnfgdata.fdenable) {
printf("%s.fdtrace = ",cache);
switch(syscfg->cnfgdata.fdtrace) {
case 0: printf("Silent"); break;
case 1: printf("Fatal Errors"); break;
case 2: printf("All Errors"); break;
case 3: printf("Everything"); break;
default: printf("Unknown!!"); break;
}
pager();
printf("%s.fdmedia = ",cache);
switch(syscfg->cnfgdata.fdmedia) {
case FDM720: printf("FDM720");
printf(" 3.5 720KB 2-sided 80 Trks 9 Sectors");
break;
case FDM144: printf("FDM144");
printf(" 3.5 1.44MB 2-sided 80 Trks 18 Sectors");
break;
case FDM360: printf("FDM360");
printf(" 5.25 360KB 2-sided 40 Trks 9 Sectors");
break;
case FDM120: printf("FDM120");
printf(" 3.5 1.2MB 2-sided 80 Trks 15 Sectors");
break;
default: printf("Unknown!!");
break;
}
pager();
printf("%s.fdmediaalt = ",cache);
switch(syscfg->cnfgdata.fdmediaalt) {
case FDM720: printf("FDM720");
printf(" 3.5 720KB 2-sided 80 Trks 9 Sectors");
break;
case FDM144: printf("FDM144");
printf(" 3.5 1.44MB 2-sided 80 Trks 18 Sectors");
break;
case FDM360: printf("FDM360");
printf(" 5.25 360KB 2-sided 40 Trks 9 Sectors");
break;
case FDM120: printf("FDM120");
printf(" 3.5 1.2MB 2-sided 80 Trks 15 Sectors");
break;
}
pager();
}
}
/********************/
/* eof - cnamept2.c */
/********************/


View File

@@ -1,216 +0,0 @@
/* cnamept2.c 5/24/2012 dwg - */
#include "stdio.h"
#include "stdlib.h"
#include "portab.h"
#include "std.h"
#include "cnfgdata.h"
#include "syscfg.h"
extern pager();
char cache[17];
cnamept3(syscfg)
struct SYSCFG * syscfg;
{
strcpy(cache,"syscfg->cnfgdata");
printf("%s.fdmauto = ",cache);
switch(syscfg->cnfgdata.fdmauto) {
case TRUE: printf("TRUE");
break;
case FALSE: printf("FALSE");
break;
}
pager();
printf("%s.ideenable = ",cache);
switch(syscfg->cnfgdata.ideenable) {
case TRUE: printf("TRUE");
break;
case FALSE: printf("FALSE");
break;
}
pager();
if(TRUE == syscfg->cnfgdata.ideenable) {
printf("%s.idetrace = ",cache);
switch(syscfg->cnfgdata.idetrace) {
case 0: printf("SILENT");
break;
case 1: printf("ERRORS");
break;
case 2: printf("EVERYTHING");
break;
default: printf("Unknown!!");
break;
}
pager();
printf("%s.de8bit = ",cache);
switch(syscfg->cnfgdata.ide8bit) {
case TRUE: printf("TRUE");
break;
case FALSE: printf("FALSE");
break;
default: printf("Unknown!!");
break;
}
pager();
printf("%s.idecapacity = %dMB",cache,
syscfg->cnfgdata.idecapacity);
pager();
}
printf("%s.ppideenable = ",cache);
switch(syscfg->cnfgdata.ppideenable) {
case TRUE: printf("TRUE");
break;
case FALSE: printf("FALSE");
break;
}
pager();
if(TRUE == syscfg->cnfgdata.ppideenable) {
printf("%s.ppidetrace = ",cache);
switch(syscfg->cnfgdata.ppidetrace) {
case 0: printf("SILENT");
break;
case 1: printf("ERRORS");
break;
case 2: printf("EVERYTHING");
break;
default: printf("Unknown!!");
break;
}
pager();
printf("%s.ppide8bit = ",cache);
switch(syscfg->cnfgdata.ppide8bit) {
case TRUE: printf("TRUE");
break;
case FALSE: printf("FALSE");
break;
default: printf("Unknown!!");
break;
}
pager();
printf("%s.ppidecapacity = %dKB",cache,
syscfg->cnfgdata.ppidecapacity);
pager();
printf("%s.ppideslow = ",cache);
switch(syscfg->cnfgdata.ppideslow) {
case TRUE: printf("TRUE");
break;
case FALSE: printf("FALSE");
break;
default: printf("Unknown!!");
break;
}
pager();
}
printf("%s.boottype = ",cache);
switch(syscfg->cnfgdata.boottype) {
case BTMENU: printf("BT_MENU");
break;
case BTAUTO: printf("BT_AUTO");
break;
}
pager();
printf("%s.boottimeout = %d seconds",cache,
syscfg->cnfgdata.boottimeout);
pager();
printf("%s.bootdefault = %c:",cache,
syscfg->cnfgdata.bootdefault);
pager();
printf("%s.baudrate = %u (0x%04x) Baud",cache,
syscfg->cnfgdata.baudrate,syscfg->cnfgdata.baudrate);
pager();
if(PLT_N8 == syscfg->cnfgdata.platform) {
printf("%s.ckdiv = %d",cache,
syscfg->cnfgdata.ckdiv);
pager();
printf("%s.memwait = 0x%02x",cache,
syscfg->cnfgdata.memwait);
pager();
printf("%s.iowait = 0x%02x",cache,syscfg->cnfgdata.iowait);
pager();
printf("%s.cntlb0 = 0x%02x",cache,syscfg->cnfgdata.cntlb0);
pager();
printf("%s.cntlb1 = 0x%02x",cache,syscfg->cnfgdata.cntlb1);
pager();
printf("%s.sdenable = ",cache);
switch(syscfg->cnfgdata.sdenable) {
case TRUE: printf("TRUE");
break;
case FALSE: printf("FALSE");
break;
default: printf("Unknown!!");
break;
}
pager();
printf("%s.sdtrace = ",cache);
switch(syscfg->cnfgdata.sdtrace) {
case TRUE: printf("TRUE");
break;
case FALSE: printf("FALSE");
break;
default: printf("Unknown!!");
break;
}
pager();
}
}
/********************/
/* eof - cnamept3.c */
/********************/
/*
unsigned char ckdiv;
unsigned char memwait;
unsigned char iowait;
unsigned char cntlb0;
unsigned char cntlb1;
unsigned char sdenable;
unsigned char sdtrace;
unsigned int sdcapacity;
unsigned char sdcsio;
unsigned char sdcsiofast;
unsigned char defiobyte;
unsigned char termtype;
unsigned int revision;
unsigned char prpsdenable;
unsigned char prpsdtrace;
unsigned int prpsdcapacity;
unsigned char prpconenable;
unsigned int biossize;
*/


View File

@@ -1,198 +0,0 @@
/* cnamept2.c 5/24/2012 dwg - */
#include "stdio.h"
#include "stdlib.h"
#include "portab.h"
#include "std.h"
#include "cnfgdata.h"
#include "syscfg.h"
extern pager();
char cache[17];
cnamept4(syscfg)
struct SYSCFG * syscfg;
{
strcpy(cache,"syscfg->cnfgdata");
if(PLT_N8 == syscfg->cnfgdata.platform) {
printf("%s.sdcapacity = %uKB",cache,
syscfg->cnfgdata.sdcapacity);
pager();
printf("%s.sdcsio = ",cache);
switch(syscfg->cnfgdata.sdcsio) {
case TRUE: printf("TRUE");
break;
case FALSE: printf("FALSE");
break;
default:
printf("Unknown!!");
break;
}
pager();
printf("%s.sdcsiofast = ",cache);
switch(syscfg->cnfgdata.sdcsiofast) {
case TRUE: printf("TRUE");
break;
case FALSE: printf("FALSE");
break;
default: printf("Unknown!!");
break;
}
pager();
}
printf("%s.defiobyte = 0x%02x",cache,
syscfg->cnfgdata.defiobyte);
pager();
printf("%s.termtype = ",cache);
switch(syscfg->cnfgdata.termtype) {
case TERM_TTY: printf("TERM_TTY");
break;
case TERM_ANSI: printf("TERM_ANSI");
break;
case TERM_WYSE: printf("TERM_WYSE");
break;
case TERM_VT52: printf("TERM_VT52");
break;
default: printf("Unknown!!");
break;
}
pager();
printf("%s.revision = %d",cache,
syscfg->cnfgdata.revision);
pager();
printf("%s.prpenable = ",cache);
switch(syscfg->cnfgdata.prpenable) {
case TRUE: printf("TRUE");
break;
case FALSE: printf("FALSE");
break;
default: printf("Unknown!!");
break;
}
pager();
if(TRUE == syscfg->cnfgdata.prpenable) {
printf("%s.prpsdenable = ");
switch(syscfg->cnfgdata.prpsdenable) {
case TRUE: printf("TRUE");
break;
case FALSE: printf("FALSE");
break;
default: printf("Unknown!!");
break;
}
pager();
if(TRUE == syscfg->cnfgdata.prpsdenable) {
printf("%s.prpsdtrace = ",cache);
switch(syscfg->cnfgdata.prpsdtrace) {
case 0: printf("SILENT");
break;
case 1: printf("ERRORS");
break;
case 2: printf("EVERYTHING");
break;
default: printf("Unknown!!");
break;
}
pager();
printf("%s.prpsdcapacity = ",cache);
pager();
printf("%s.prpconenable = ",cache);
switch(syscfg->cnfgdata.prpconenable) {
case TRUE: printf("TRUE");
break;
case FALSE: printf("FALSE");
break;
default: printf("Unknown!!");
break;
}
pager();
}
}
printf("%s.biossize = %d",cache,
syscfg->cnfgdata.biossize);
pager();
printf("%s.pppenable = ",cache);
switch(syscfg->cnfgdata.pppenable) {
case TRUE: printf("TRUE");
break;
case FALSE: printf("FALSE");
break;
default: printf("Unknown!!");
break;
}
pager();
if(TRUE == syscfg->cnfgdata.pppenable) {
printf("%s.pppsdenable = ",cache);
switch(syscfg->cnfgdata.pppsdenable) {
case TRUE: printf("TRUE");
break;
case FALSE: printf("FALSE");
break;
default: printf("Unknown!!");
break;
}
pager();
printf("%s.pppsdtrace = ",cache);
switch(syscfg->cnfgdata.pppsdtrace) {
case 0: printf("SILENT");
break;
case 1: printf("ERRORS");
break;
case 2: printf("EVERYTHING");
break;
default: printf("Unknown!!");
break;
}
pager();
printf("%s.pppcapacity = %d",cache,
syscfg->cnfgdata.prpsdcapacity);
pager();
printf("%s.pppconenable = ",cache);
switch(syscfg->cnfgdata.pppconenable) {
case TRUE: printf("TRUE");
break;
case FALSE: printf("FALSE");
break;
default: printf("Unknown!!");
break;
}
pager();
}
}
/********************/
/* eof - cnamept4.c */
/********************/


View File

@@ -1,73 +0,0 @@
/* cnfgdata.h 6/04/2012 dwg - */
struct CNFGDATA {
unsigned char rmj;
unsigned char rmn;
unsigned char rup;
unsigned char rtp;
unsigned char diskboot;
unsigned char devunit;
unsigned int bootlu;
unsigned char hour;
unsigned char minute;
unsigned char second;
unsigned char month;
unsigned char day;
unsigned char year;
unsigned char freq;
unsigned char platform;
unsigned char dioplat;
unsigned char vdumode;
unsigned int romsize;
unsigned int ramsize;
unsigned char clrramdk;
unsigned char dskyenable;
unsigned char uartenable;
unsigned char vduenable;
unsigned char fdenable;
unsigned char fdtrace;
unsigned char fdmedia;
unsigned char fdmediaalt;
unsigned char fdmauto;
unsigned char ideenable;
unsigned char idetrace;
unsigned char ide8bit;
unsigned int idecapacity;
unsigned char ppideenable;
unsigned char ppidetrace;
unsigned char ppide8bit;
unsigned int ppidecapacity;
unsigned char ppideslow;
unsigned char boottype;
unsigned char boottimeout;
unsigned char bootdefault;
unsigned int baudrate;
unsigned char ckdiv;
unsigned char memwait;
unsigned char iowait;
unsigned char cntlb0;
unsigned char cntlb1;
unsigned char sdenable;
unsigned char sdtrace;
unsigned int sdcapacity;
unsigned char sdcsio;
unsigned char sdcsiofast;
unsigned char defiobyte;
unsigned char termtype;
unsigned int revision;
unsigned char prpsdenable;
unsigned char prpsdtrace;
unsigned int prpsdcapacity;
unsigned char prpconenable;
unsigned int biossize;
unsigned char pppenable;
unsigned char pppsdenable;
unsigned char pppsdtrace;
unsigned int pppsdcapacity;
unsigned char pppconenable;
unsigned char prpenable;
};
/********************/
/* eof - cnfgdata.h */
/********************/

View File

@@ -1,196 +0,0 @@
/* cpmbios.h 3/11/2012 dwg - added CURDRV */
/*************************/
/* BIOS Memory Locations */
/*************************/
#define CURDRV 0x00004
#define BIOSAD 0x0e600
#define pBOOT 0x0E600
#define pWBOOT 0x0E603
#define pCONST 0x0E606
#define pCONIN 0x0E609
#define pCONOUT 0x0E60C
#define pLIST 0x0E60F
#define pPUNCH 0x0E612
#define pREADER 0x0E615
#define pHOME 0x0E618
#define pSELDSK 0x0E61B
#define pSETTRK 0x0E61E
#define pSETSEC 0x0E621
#define pSETDMA 0x0E624
#define pREAD 0x0E627
#define pWRITE 0x0E62A
#define pLISTST 0x0E62D
#define pSECTRN 0x0E630
#define pBNKSEL 0x0E633
#define pGETLU 0x0E636
#define pSETLU 0x0E639
#define pGETINFO 0x0E63C
struct JMP {
unsigned char opcode;
unsigned int address;
};
struct BIOS {
struct JMP boot;
struct JMP wboot;
struct JMP const;
struct JMP conin;
struct JMP conout;
struct JMP list;
struct JMP punch;
struct JMP reader;
struct JMP home;
struct JMP seldsk;
struct JMP settrk;
struct JMP setsec;
struct JMP setdma;
struct JMP read;
struct JMP write;
struct JMP listst;
struct JMP sectrn;
struct JMP bnksel;
struct JMP getlu;
struct JMP setlu;
struct JMP getinfo;
struct JMP rsvd1;
struct JMP rsvd2;
struct JMP rsvd3;
struct JMP rsvd4;
char diskboot;
char bootdrive;
char devunit;
char rmj;
char rmn;
char rup;
char rtp;
};
struct DPH {
unsigned int xlt;
unsigned int rv1;
unsigned int rv2;
unsigned int rv3;
unsigned int dbf;
unsigned int dpb;
unsigned int csv;
unsigned int alv;
unsigned char sigl;
unsigned char sigu;
unsigned int current;
unsigned int number;
};
struct DPB {
unsigned int spt;
unsigned char bsh;
unsigned char blm;
unsigned char exm;
unsigned int dsm;
unsigned int drm;
unsigned char al0;
unsigned char al1;
unsigned int cks;
unsigned int off;
};
/* bioscall.h 3/10/2012 dwg - header file for bdoscall */
extern char irega;
extern unsigned int iregbc;
extern unsigned int iregde;
extern unsigned int ireghl;
extern bioscall();
/* bdoscall.h 3/10/2012 dwg - header file for bdoscall */
extern char drega;
extern unsigned int dregbc;
extern unsigned int dregde;
extern unsigned int dreghl;
extern bdoscall();
/* diagnose.h 5/23/2012 dwg - */
extern char hrega;
extern unsigned int hregbc;
extern unsigned int hregde;
extern unsigned int hreghl;
extern diagnose();
/* ctermcap.h 3/11/2012 dwg - declarations for termal capability */
extern crtinit();
extern crtclr();
extern crtlc();
/* cpmbdos.h */
#define TERMCPM 0
#define CONIN 1
#define CWRITE 2
#define DIRCONIO 6
#define PRINTSTR 9
#define RDCONBUF 10
#define GETCONST 11
#define RETVERNUM 12
#define RESDISKSYS 13
#define SELECTDISK 14
#define FOPEN 15
#define FCLOSE 16
#define SEARCHFIRST 17
#define SEARCHNEXT 18
#define FDELETE 19
#define FREADSEQ 20
#define FWRITESEQ 21
#define FMAKEFILE 22
#define FRENAME 23
#define RETLOGINVEC 24
#define RETCURRDISK 25
#define SETDMAADDR 26
#define GETALLOCVEC 27
#define WRPROTDISK 28
#define GETROVECTOR 29
#define FSETATTRIB 30
#define GETDPBADDR 31
#define SETGETUSER 32
#define FREADRANDOM 33
#define FWRITERAND 34
#define FCOMPSIZE 35
#define SETRANDREC 36
#define RESETDRIVE 37
#define WRRANDFILL 38
#define DRIVEA 0
/* dphmap.h 5/29/2012 dwg - declaration of DPH MAP structure */
struct DPHMAP {
struct DPH * drivea;
struct DPH * driveb;
struct DPH * drivec;
struct DPH * drived;
struct DPH * drivee;
struct DPH * drivef;
struct DPH * driveg;
struct DPH * driveh;
} * pDPHMAP;
struct DPHMAP * pDPHVEC[MAXDRIVE];
/******************/
/* eof - dphmap.h */
/******************/
/*****************/
/* eof - cpm80.h */
/*****************/


Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1,8 +0,0 @@
#ifndef NDEBUG
#ifndef stderr
#include <stdio.h>
#endif
#define assert(x) if (!(x)) {fprintf(stderr,"Assertion failed: x, file %s, line %d\n",__FILE__,__LINE__); exit(1);}
#else
#define assert(x)
#endif

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1,26 +0,0 @@
/* Copyright (C) 1983 by Manx Software Systems */
#define TIOCGETP 0 /* read contents of tty control structure */
#define TIOCSETP 1 /* set contents of tty control structure */
#define TIOCSETN 1 /* ditto only don't wait for output to flush */
/* special codes for MSDOS 2.x only */
#define TIOCREAD 2 /* read control info from device */
#define TIOCWRITE 3 /* write control info to device */
#define TIOCDREAD 4 /* same as 2 but for drives */
#define TIOCDWRITE 5 /* same as 3 but for drives */
#define GETISTATUS 6 /* get input status */
#define GETOSTATUS 7 /* get output status */
struct sgttyb {
short sg_flags; /* control flags */
char sg_erase; /* ignored */
char sg_kill; /* ignored */
};
/* settings for flags */
#define RAW 0x20 /* no echo or mapping of input/output BDOS(6) */
/* Refer to the MSDOS technical reference for detailed information on
* the remaining flags.
*/

View File

@@ -1,29 +0,0 @@
extern int errno;
extern char *sys_errlist[];
extern int sys_nerr;
/* MsDos return codes */
#define EINVAL 1
#define ENOENT 2
#define ENOTDIR 3
#define EMFILE 4
#define EACCES 5
#define EBADF 6
#define EARENA 7
#define ENOMEM 8
#define EFAULT 9
#define EINVENV 10
#define EBADFMT 11
#define EINVACC 12
#define EINVDAT 13
#define ENODEV 15
#define ERMCD 16
#define EXDEV 17
#define ENOMORE 18
/* additional codes used by Aztec C */
#define EEXIST 19
#define ENOTTY 20
/* used by the math library */
#define ERANGE 21
#define EDOM 22

Binary file not shown.

View File

@@ -1,16 +0,0 @@
main()
{
char buffer[100];
/* set to 25 row x 80 column monochrome mode 6 (HIRES) */
mode('H');
printf("Please enter your name: ");
gets(buffer);
/* set to 25 row x 40 column 4-color mode 4 (MEDRES) */
mode('M');
printf("Hello %s!\nWelcome to the growing family of\nAZTEC C users...\n",
buffer);
getchar();
/* set to 25 row x 80 column color text mode 3 (LOWRES) */
mode('L');
}

Binary file not shown.

Binary file not shown.

View File

@@ -1,4 +0,0 @@
main()
{
printf("Hello Woprd!!");
}

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1,210 +0,0 @@
nlist
; Copyright (C) 1985 by Manx Software Systems, Inc.
; :ts=8
ifndef MODEL
MODEL equ 0
endif
if MODEL and 1
largecode
FARPROC equ 1
FPTRSIZE equ 4
else
FPTRSIZE equ 2
endif
if MODEL and 2
LONGPTR equ 1
endif
;this macro to be used on returning
;restores bp and registers
pret macro
if havbp
pop bp
endif
ret
endm
internal macro pname
public pname
pname proc
endm
intrdef macro pname
public pname
ifdef FARPROC
pname label far
else
pname label near
endif
endm
procdef macro pname, args
public pname&_
ifdef FARPROC
_arg = 6
pname&_ proc far
else
_arg = 4
pname&_ proc near
endif
ifnb <args>
push bp
mov bp,sp
havbp = 1
decll <args>
else
havbp = 0
endif
endm
entrdef macro pname, args
public pname&_
ifdef FARPROC
_arg = 6
pname&_:
else
_arg = 4
pname&_:
endif
ifnb <args>
if havbp
push bp
mov bp,sp
else
error must declare main proc with args, if entry has args
endif
decll <args>
endif
endm
;this macro equates 'aname' to arg on stack
decl macro aname, type
;;'byte' or anything else
havtyp = 0
ifidn <type>,<byte>
aname equ byte ptr _arg[bp]
_arg = _arg + 2
havtyp = 1
endif
ifidn <type>,<dword>
aname equ dword ptr _arg[bp]
_arg = _arg + 4
havtyp = 1
endif
ifidn <type>,<cdouble>
aname equ qword ptr _arg[bp]
_arg = _arg + 8
havtyp = 1
endif
ifidn <type>, <ptr>
ifdef LONGPTR
aname equ dword ptr _arg[bp]
_arg = _arg + 4
else
aname equ word ptr _arg[bp]
_arg = _arg + 2
endif
havtyp = 1
endif
ifidn <type>, <fptr>
ifdef FARPROC
aname equ dword ptr _arg[bp]
_arg = _arg + 4
else
aname equ word ptr _arg[bp]
_arg = _arg + 2
endif
havtyp = 1
endif
ifidn <type>, <word>
aname equ word ptr _arg[bp]
_arg = _arg + 2
havtyp = 1
endif
ife havtyp
error -- type is unknown.
endif
endm
;this macro loads an arg pointer into DEST, with optional SEGment
ldptr macro dest, argname, seg
ifdef LONGPTR
ifnb <seg> ;;get segment if specified
ifidn <seg>,<es>
les dest,argname
else
ifidn <seg>,<ds>
lds dest,argname
else
mov dest, word ptr argname
mov seg, word ptr argname[2]
endif
endif
else
ifidn <dest>,<si> ;;si gets seg in ds
lds si, argname
else
ifidn <dest>,<di> ;;or, es:di
les di, argname
else
garbage error: no seg for long pointer
endif
endif
endif
else
mov dest, word ptr argname ;;get the pointer
ENDIF
ENDM
decll macro list
IRP i,<list>
decl i
ENDM
ENDM
pend macro pname
pname&_ endp
endm
retptrm macro src,seg
mov ax, word ptr src
ifdef LONGPTR
mov dx, word ptr src+2
endif
endm
retptrr macro src,seg
mov ax,src
ifdef LONGPTR
ifnb <seg>
mov dx, seg
endif
endif
endm
retnull macro
ifdef LONGPTR
sub dx,dx
endif
sub ax,ax
endm
pushds macro
ifdef LONGPTR
push ds
endif
endm
popds macro
ifdef LONGPTR
pop ds
endif
endm
finish macro
codeseg ends
endm
list
codeseg segment byte public 'code'
assume cs:codeseg

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1,8 +0,0 @@
hello.cmd: hello.c
cc hello
ln -o hello.cmd hello.o -lc
clean:
erase hello.cmd

View File

@@ -1 +0,0 @@
z:mount i /Users/doug/Downloads/azcpm32d

View File

@@ -1,11 +0,0 @@
double sin(), cos(), tan(), cotan();
double asin(), acos(), atan(), atan2();
double ldexp(), frexp(), modf();
double floor(), ceil(), fabs();
double log(), log10(), exp(), sqrt(), pow();
double sinh(), cosh(), tanh();
#define HUGE_VAL 1.79e+308
#define LOGHUGE 709.778
#define TINY_VAL 2.2e-308
#define LOGTINY -708.396

View File

@@ -1,2 +0,0 @@
extern char *memcpy(), *memchr(), *memcpy(), memset();
extern int memcmp();

Binary file not shown.

Binary file not shown.

View File

@@ -1,55 +0,0 @@
/* regs.h for aztec.c (C) Copyright Bill Buckels 2008. All rights reserved. */
#ifndef REGS_DEFINED
/* word registers */
/* different than M$oft so don't mix the two */
struct WORDREGS {
unsigned int ax;
unsigned int bx;
unsigned int cx;
unsigned int dx;
unsigned int si;
unsigned int di;
unsigned int ds;
unsigned int es;
};
/* byte registers */
/* I made these the same as M$oft since
the first 6 word regs are the same between the two */
struct BYTEREGS {
unsigned char al, ah;
unsigned char bl, bh;
unsigned char cl, ch;
unsigned char dl, dh;
};
/* general purpose registers union -
* overlays the corresponding word and byte registers.
*/
union REGS {
struct WORDREGS x;
struct BYTEREGS h;
};
/* segment registers */
/* different than M$oft so don't mix the two */
struct SREGS {
unsigned int cs;
unsigned int ss;
unsigned int ds;
unsigned int es;
};
/* the following makes it a little easier
to port code from M$soft and Turbo C
over to Aztec C unless you want to be
an Aztec C purist */
#define int86(x,y,z) sysint(x,y,z)
#define REGS_DEFINED 1
#endif

Binary file not shown.

View File

@@ -1,5 +0,0 @@
typedef int VISIT;
#define preorder 1
#define postorder 2
#define endorder 3
#define leaf 4

View File

@@ -1,15 +0,0 @@
/* Copyright (C) 1985 by Manx Software Systems, Inc. */
#define SIG_DFL ((void (*)())0)
#define SIG_IGN ((void (*)())1)
#define SIG_ERR ((void (*)())-1)
#define SIGINT 1
#define SIGTERM 2
#define SIGABRT 3
#define SIGFPE 4
#define SIGILL 5
#define SIGSEGV 6
#define _NUMSIG 6
#define _FSTSIG 1

Binary file not shown.

View File

@@ -1,29 +0,0 @@
/* Copyright (C) 1984 by Manx Software Systems */
struct stat {
char st_attr;
long st_mtime;
long st_size;
};
/* settings of the st_attr field */
#define ST_RDONLY 0x01 /* read only file */
#define ST_HIDDEN 0x02 /* hidden file */
#define ST_SYSTEM 0x04 /* system file */
#define ST_VLABEL 0x08 /* volume label */
#define ST_DIRECT 0x10 /* file is a sub-directory */
#define ST_ARCHIV 0x20 /* set when file has been written and closed */
/* the format of the st_mtime field is:
< year > < month> < day > < hours > < minutes > < sec/2 >
3 3 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0
1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0
where:
year is from 0-119 for 1980-2099
month is 1-12
day is 1-31
hours is 0-23
minutes is 0-59
sec/2 is 0-29
*/

View File

@@ -1,45 +0,0 @@
/* Copyright (C) 1982, 1984 by Manx Software Systems */
#define fgetc getc
#define fputc putc
#define NULL (void *)0
#define EOF -1
#define BUFSIZ 1024
#define MAXSTREAM 20
#define _BUSY 0x01
#define _ALLBUF 0x02
#define _DIRTY 0x04
#define _EOF 0x08
#define _IOERR 0x10
#define _TEMP 0x20 /* temporary file (delete on close) */
typedef struct {
char *_bp; /* current position in buffer */
char *_bend; /* last character in buffer + 1 */
char *_buff; /* address of buffer */
char _flags; /* open mode, etc. */
char _unit; /* token returned by open */
char _bytbuf; /* single byte buffer for unbuffer streams */
int _buflen; /* length of buffer */
char *_tmpname; /* name of file for temporaries */
} FILE;
extern FILE Cbuffs[];
FILE *fopen();
long ftell();
#define stdin (&Cbuffs[0])
#define stdout (&Cbuffs[1])
#define stderr (&Cbuffs[2])
#define getchar() agetc(stdin)
#define putchar(c) aputc(c, stdout)
#define feof(fp) (((fp)->_flags&_EOF)!=0)
#define ferror(fp) (((fp)->_flags&_IOERR)!=0)
#define clearerr(fp) ((fp)->_flags &= ~(_IOERR|_EOF))
#define fileno(fp) ((fp)->_unit)
#define fflush(fp) flsh_(fp,-1)
#define P_tmpdir ""
#define L_tmpnam 40

Some files were not shown because too many files have changed in this diff Show More