Previous Thread
Next Thread
Print Thread
Page 51 of 80 1 2 49 50 51 52 53 79 80
Joined: Mar 2001
Posts: 17,217
Likes: 234
R
Very Senior Member
Offline
Very Senior Member
R
Joined: Mar 2001
Posts: 17,217
Likes: 234
Great. I've checked in a fix that should prevent the debugger from stomping most of the read-activated soft switches.

Joined: Feb 2014
Posts: 1,102
Likes: 173
G
Very Senior Member
Offline
Very Senior Member
G
Joined: Feb 2014
Posts: 1,102
Likes: 173
One of the things I had been lamenting was that the apple II+ keyboard couldn't type all of the characters. Turns out there was a cool device called the Videx Enhancer II that would do this, and in addition, also provide macro keys. There was also a function key strip that would plug into it called the Videx FunctionStrip.

This board would install in between the keyboard and the apple ii.

It had a 6502 processor on board with 1k of memory to monitor the apple 2 keyboard and pass the keystrokes along.

It's cool that there was great documentation providing full source code and schematics.

I wanted to look at the code and figured out by pausing the apple II driver, I could load the rom file into memory at $1800 and use the mame debugger to do the disassembly.

load "Videx Enhancer II ROM - 2716.BIN",1800

dasm "VidexEnhancer.txt",1800,800


The rom file doesn't exactly match up with the assembly listing given in the manual, but it's pretty close.

[Linked Image from i.imgur.com]

Quote
The following are some of the Enhancer ]['s features:
*Full ASCII keyboard (128 ASCII codes)
*The complete printable ASCII character set —including lower case — may be displayed
*User definable keys — with down loading from disc [section: 5.f]
*Type ahead buffer [section: 5.g]*Auto repeat [section: 5.a.3]
*Fast repeat [section: 5.a.3]
*Normal Apple ][ mode [section: 5.d]
*Typewriter like operation [section: 5.e]
*Shift—lock feature [section: 5.e.1]
*Control — Reset protection (section: 5.c.1]
*Simple installation [chapter two]
*Microprocessor controlled (6500 series)
*Self test diagnostics [section: 5.h]
*A 2716 EPROM is used for on board firmware

*Complete firmware listings [appendix Y]
*Complete schematic [appendix Z]

*Dvorak keyboard option


Your new keyboard Enhancer ][ utilizes a sophisticated microprocessor with its own RAM. Although the Enhancer ][ is more sophisticated than it’s predecessor, the Keyboard & Display Enhancer, it is significantly easier to install. The microprocessor extends the features of the Enhancer ][ beyond those of the original Keyboard & Display Enhancer with features such as user definable keys and a type ahead buffer. The caps lock, caps unlock, shift lock and control — reset features are preserved, thus supporting the normal Apple ][ keyboard as well as a typewriter like mode.


Ul—2716 EFROM (Enhancer ][ Firmware)
U2—6504 Microprocessor (6502 instruction set)
U3—2114 1K x 4 RAM
U4—2114 1K x 4 RAM
U5—74LS05Hex inverter, open collector
U6—74LS373Octal D latch
U7—74LS139Dual 2—4 line decoder
U8—74LS05Hex inverter, open collector
U9—74LS373Octal D latch
U10—74LS374Octal D flip—flop
Ull—Keyboard output
2N3904 — Reset logic

Joined: Feb 2004
Posts: 2,598
Likes: 301
Very Senior Member
Offline
Very Senior Member
Joined: Feb 2004
Posts: 2,598
Likes: 301
Why didn't you just use unidasm to disassemble the ROM?

Joined: Mar 2001
Posts: 17,217
Likes: 234
R
Very Senior Member
Offline
Very Senior Member
R
Joined: Mar 2001
Posts: 17,217
Likes: 234
Because, and I might as well give out the secret: unidasm doesn't actually do anything, it just prints usage text no matter what arguments you give.

Or at least that's my experience.

Joined: Feb 2004
Posts: 2,598
Likes: 301
Very Senior Member
Offline
Very Senior Member
Joined: Feb 2004
Posts: 2,598
Likes: 301
Code
./build/mingw-gcc/bin/x64/Debug/unidasm.exe -arch m6805 -skip 0x100 -count 39 -basepc 0x100 roms/Tiger-Heli_with_MCU/68705brian.bin 
100: 9c        rsp
101: a6 ff     lda   #$FF
103: b7 04     sta   $04
105: b7 05     sta   $05
107: b7 01     sta   $01
109: b7 00     sta   $00
10b: a6 00     lda   #$00
10d: b7 06     sta   $06
10f: 15 01     bclr  2, $01
111: a6 73     lda   #$73
113: b7 00     sta   $00
115: 14 01     bset  2, $01
117: 9a        cli
118: 20 fe     bra   $118
11a: 9d        nop
11b: 9d        nop
11c: 9d        nop
11d: 9d        nop
11e: 9d        nop
11f: 9d        nop
120: cd 01 30  jsr   $0130
123: cd 01 50  jsr   $0150
126: 80        rti
Works just fine. As long as you give it a recognised -arch and a filename it will produce disassembly. The usage message tells you you need to give it -arch and a filename.

Joined: Feb 2014
Posts: 1,102
Likes: 173
G
Very Senior Member
Offline
Very Senior Member
G
Joined: Feb 2014
Posts: 1,102
Likes: 173
I tried it and yes, you can get a disassembly with

./unidasm -arch m6502 -basepc 1800 "../../Videx Enhancer II ROM - 2716.BIN" -lower


There are slight differences where you've got the replacement of addresses with labels.


diff -b unidasmlowercase.txt videxlowercase.txt
216c216
< 1981: a4 a5 ldy $a5
---
> 1981: a4 a5 ldy <arg
955c955
< 1f45: 20 00 fa jsr $fa00
---
> 1f45: 20 00 fa jsr f8rom:mnemr
971c971
< 1f62: c5 d8 cmp $d8
---
> 1f62: c5 d8 cmp <errflg

Joined: Feb 2014
Posts: 1,102
Likes: 173
G
Very Senior Member
Offline
Very Senior Member
G
Joined: Feb 2014
Posts: 1,102
Likes: 173
Thanks to quart de pomme I now have a Silentype 3 manual!!! Yes! I've been looking for this for so long and it answers a lot of questions about it such as how to vary the intensity of the thermal print as well as the meaning and subtleties of the ESC codes.


Joined: Jan 2012
Posts: 1,179
Likes: 17
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,179
Likes: 17
It's ... the Albert!

[Linked Image from i.imgur.com]

[Linked Image from i.imgur.com]

[Linked Image from i.imgur.com]


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Joined: Jan 2012
Posts: 1,179
Likes: 17
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,179
Likes: 17
I'm trying to add another Apple II clone mainboard ... if I just re-use another chargen ROM, the text is readable, but this is what I get if I add the ROM that came with the mainboard.

[Linked Image from i.imgur.com]

It looks like the bit order is reversed, and one column is missing.
Is this necessarily a bad dump, or is there a ROM loading parameter that'll correct this presentation of data?


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Joined: Mar 2001
Posts: 17,217
Likes: 234
R
Very Senior Member
Offline
Very Senior Member
R
Joined: Mar 2001
Posts: 17,217
Likes: 234
Different Apple IIs have different font ROM bit orders. The screen_update function for the driver differs in which text update function it calls across different models for that reason. In general, text_update() is IIe/IIc/IIgs order and text_update_orig() is II/II Plus order. For clones, there are IIe clones with II/II Plus video ROMs and vice-versa so things get weird.

Page 51 of 80 1 2 49 50 51 52 53 79 80

Link Copied to Clipboard
Who's Online Now
1 members (AJR), 354 guests, and 5 robots.
Key: Admin, Global Mod, Mod
ShoutChat
Comment Guidelines: Do post respectful and insightful comments. Don't flame, hate, spam.
Forum Statistics
Forums9
Topics9,320
Posts121,944
Members5,074
Most Online1,283
Dec 21st, 2022
Our Sponsor
These forums are sponsored by Superior Solitaire, an ad-free card game collection for macOS and iOS. Download it today!

Superior Solitaire
Forum hosted by www.retrogamesformac.com