Browse Source

Reintegrate dwg -> trunk

pull/3/head
wayne 13 years ago
parent
commit
8450dca0b9
  1. BIN
      Apps/core/multifmt.com
  2. BIN
      Doc/Ecma-035.pdf
  3. BIN
      Doc/Ecma-048.pdf
  4. 10
      Source/ansi.asm
  5. 27
      Source/config_n8_2312.asm
  6. 29
      Source/n8v.asm
  7. 2
      Source/tty.asm
  8. 4
      XSource/Makefile

BIN
Apps/core/multifmt.com

Binary file not shown.

BIN
Doc/Ecma-035.pdf

Binary file not shown.

BIN
Doc/Ecma-048.pdf

Binary file not shown.

10
Source/ansi.asm

@ -1,4 +1,7 @@
;
; ansi.asm 12/3/2012 dwg - changed polarity of conditional jump for normal processing
; Status: Still very experimental, either doesn't work or is buggy
;==================================================================================================
; ANSI EMULATION MODULE
;==================================================================================================
@ -281,7 +284,7 @@ ANSI_STATE0:
JR Z,ANSI_LF
CP 27 ; ESCAPE ; This is the hook into the escape handler
JR Z,ANSI_NOT_ESC ; go around if not CSI
JR NZ,ANSI_NOT_ESC ; go around if not CSI
LD HL,ANSI_STATE1
LD (ANSI_STATE),HL
XOR A ; setup SUCCESS as return status
@ -290,8 +293,11 @@ ANSI_NOT_ESC:
CP 32 ; COMPARE TO SPACE (FIRST PRINTABLE CHARACTER)
RET C ; SWALLOW OTHER CONTROL CHARACTERS
; A reg has next character from BIOS CONOUT
LD B,BF_VDAWRC
CALL EMU_VDADISP ; SPIT OUT THE RAW CHARACTER
LD A,(ANSI_COL) ; GET CUR COL
INC A ; INCREMENT
LD (ANSI_COL),A ; SAVE IT

27
Source/config_n8_2312.asm

@ -3,21 +3,34 @@
; ROMWBW 2.X CONFIGURATION FOR N8 5/8/2012
;==================================================================================================
;
; About Doug's configuration
;
; The CPU Frequency is specified as 18 (MHz)
; The Platform is PLT_N8
; The default VDA is the TMS9918 (N8V)
; The default emulation is ANSI
; The DSKMAP is DM_PPIDE
; The N8VENABLE is TRUE
; The PPIDEENABLE is TRUE
; The PPIDECAPACITY is 200*9
; The TTYENABLE AND ANSIENABLE ARE TRUE
; BUILD CONFIGURATION OPTIONS
;
CPUFREQ .EQU 20 ; IN MHZ, USED TO COMPUTE DELAY FACTORS
CPUFREQ .EQU 18 ; IN MHZ, USED TO COMPUTE DELAY FACTORS
;
PLATFORM .EQU PLT_N8 ; PLT_N8VEM, PLT_ZETA, PLT_N8
;
DEFCON .EQU CIODEV_UART ; DEFAULT CONSOLE DEVICE (LOADER AND MONITOR): CIODEV_UART, CIODEV_VDU, DIODEV_PRPCON
ALTCON .EQU DEFCON ; ALT CONSOLE DEVICE (USED WHEN CONFIG JUMPER SHORTED)
DEFVDA .EQU VDADEV_N8V ; DEFAULT VDA (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_7220, VDADEV_N8V)
DEFEMU .EQU EMUTYP_TTY ; DEFAULT EMULATION TYPE (EMUTYP_TTY, EMUTYP_ANSI, ...)
DEFEMU .EQU EMUTYP_ANSI ; EMUTYP_TTY ; DEFAULT EMULATION TYPE (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CLRRAMDISK .EQU CLR_AUTO ; CLR_ALWAYS, CLR_NEVER, CLR_AUTO (CLEAR IF INVALID DIR AREA)
;
DSKMAP .EQU DM_RAM ; DM_ROM, DM_RAM, DM_FD, DM_IDE, DM_PPIDE, DM_SD, DM_PRPSD, DM_PPPSD
DSKMAP .EQU DM_PPIDE ; DM_ROM, DM_RAM, DM_FD, DM_IDE, DM_PPIDE, DM_SD, DM_PRPSD, DM_PPPSD
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
;
@ -48,16 +61,16 @@ IDETRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE
IDE8BIT .EQU FALSE ; USE IDE 8BIT TRANSFERS (PROBABLY ONLY WORKS FOR CF CARDS!)
IDECAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
;
PPIDEENABLE .EQU FALSE ; TRUE FOR PPIDE SUPPORT (DO NOT COMBINE WITH DSKYENABLE)
PPIDEENABLE .EQU TRUE ; TRUE FOR PPIDE SUPPORT (DO NOT COMBINE WITH DSKYENABLE)
PPIDEMODE .EQU PPIDEMODE_STD ; PPIDEMODE_STD, PPIDEMODE_DIO3
PPIDETRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF PPIDEENABLE = TRUE)
PPIDE8BIT .EQU FALSE ; USE IDE 8BIT TRANSFERS (PROBABLY ONLY WORKS FOR CF CARDS!)
PPIDECAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
PPIDECAPACITY .EQU 200*9 ; CAPACITY OF DEVICE (IN MB)
PPIDESLOW .EQU FALSE ; ADD DELAYS TO HELP PROBLEMATIC HARDWARE (TRY THIS IF PPIDE IS UNRELIABLE)
;
SDENABLE .EQU TRUE ; TRUE FOR SD SUPPORT
SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE = TRUE)
SDCAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
SDTRACE .EQU 2 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE = TRUE)
SDCAPACITY .EQU 200*9 ; CAPACITY OF DEVICE (IN MB)
SDCSIO .EQU TRUE ; TRUE IF USING THE CSIO PORT (N8 ONLY)
SDCSIOFAST .EQU FALSE ; TRUE IF USING THE LOOKUP TABLE RATHER THAN SHIFTS AND ROTATES (N8 ONLY)
PPISD .EQU FALSE ; TRUE IF USING PPISD MINI-BOARD (DO NOT COMBINE WITH PPIDE)

29
Source/n8v.asm

@ -502,11 +502,10 @@ N8V_OFFSET:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
N8V_VDAWRC:
LD (VDP_POS),HL ; accept curpos from caller in HL
;;; LD (VDP_POS),HL ; accept curpos from caller in HL
PUSH DE
LD hl,row_offs ; hl -> row offset table
LD A,(VDP_ROW) ; pick up cursor row
LD E,A ; place in LO byte of DE
LD d,0 ; make 16 bits
@ -528,24 +527,6 @@ N8V_VDAWRC:
OUT (C),a ; prime the auto incrementer
OUT (C),a ; output the data byte into the name table
; LD A,(VDP_COL)
; INC A
; LD (VDP_COL),A
; CP 40
; JR NZ,N8V_VDAWRC2
; LD A,0
; LD (VDP_COL),A
; LD A,(VDP_ROW)
; INC A
; LD (VDP_ROW),A
; CP 24
; JR NZ, N8V_VDAWRC2
; ; need to scroll up one line
; LD A,1 ; SCROLL ONE LINE
; LD E,A ; NEEDS TO BE IN A
; CALL N8V_VDASCR ; USE SCROLLING FUNCTION
;N8V_VDAWRC2:
XOR A ; set SUCCESS return code
RET ; return from HBIOS call
@ -727,6 +708,14 @@ RECOVER:
VDP_DEVUNIT .DB 0
; The following data items, VDP_COL and VDP_ROW area
; data bytes that can be retrieved together with a
; word fetch using the VDP_POS label. It is generally
; set by a call to VDASCP from the emulation layer.
; It is used by VDAFIL specifically to denote the beginning
; of the fill area not specified in the API of VDAFIL.
VDP_POS:
VDP_COL .DB 0 ; col number 0-39
VDP_ROW .DB 0 ; row number 0-23

2
Source/tty.asm

@ -95,7 +95,7 @@ TTY_DOCHAR:
CP 32 ; COMPARE TO SPACE (FIRST PRINTABLE CHARACTER)
RET C ; SWALLOW OTHER CONTROL CHARACTERS
LD HL,(TTY_POS) ; physical driver needs pos data to write
;;; LD HL,(TTY_POS) ; physical driver needs pos data to write
LD B,BF_VDAWRC
CALL EMU_VDADISP ; SPIT OUT THE RAW CHARACTER

4
XSource/Makefile

@ -147,6 +147,10 @@ endif
endif
all: tasm80.tab tasm85.tab $(OUTDIR)/$(ROMNAME).rom $(OUTDIR)/$(ROMNAME).sys $(OUTDIR)/$(ROMNAME).com
rm -f *.asm
rm -f *.bin
rm -f *.inc *.tab *.tmp
rm -f diskdefs *.exp
tasm80.tab: bin/TASM80.TAB
cp bin/TASM80.TAB tasm80.tab

Loading…
Cancel
Save