SlideShare a Scribd company logo
1 of 22
A2 Video Streamer
By Alex Lukacz
What is it?
• Hardware that sends Apple IIc or
IIe video serial stream over high
speed USB.
• Software that runs on desktops /
laptops / tablets and shows the
video feed.
The aim was to get a mobile
display for my IIc.
• DVD Player.
• Composite USB streamers.
• Original flat panels.
• LCD panels.
• iPad? What no video in? Arrhhh!!!
•Bulky.
•Not great use of screen space.
•Poor quality.
•Flickering.
•Noise / interference.
•Difficult to customise view size.
•Expensive.
•Hard to find.
•Poor contrast and no back light.
http://www.callapple.org/documentation/technical-notes/apple-c-flat-panel-lcd-conversion/
This will be going on my next Christmas wish list.
•Shows how hard it is to get something
that shows a reasonable picture.
http://quinndunki.com/blondihacks/?p=1998
http://www.eljavo.com/en/la-apple-c-a-color/
•LG Philips LB084S02 panel.
•Interesting option.
What problem do all of these options have in common?
COMPOSITE
Why?
•Not well suited to modern technology.
•Only monochrome on PAL IIc.
•I can go on and on and on …
Why deal with it when you don’t have to?
iPad WiFi or iPad USB?
•Suspect the lag on WiFi would be
too great.
•Streaming via USB is possible.
http://www.redmondpie.com/how-to-monitor-canon-eos-
dslr-camera-from-ipad-video/
http://www.exolabs.com/products.html
Research
http://kaput.retroarchive.org/appleii/appleiidigital.png
http://john.ccac.rwth-
aachen.de:8000/patrick/data/PALcard.pdf
How simple is this?
Cut out the composite part of the
circuit and get a better picture.
How sweet is that?
Understanding the Apple IIe by Jim Sather Page 8-18
contains schematic for PAL video circuit.
IIc video port (serial) to component (YPbPr)
Analysing signals from the IIc video
port.
Checking to see which signals are
going to be ok to send digitally.
Expected to see a square 14M signal
but found a saw wave instead.
Logic Analyser Testing
Clock pulse does not look even but that is because this Logic
Analyser does not have a 14MHz (or multiple of) clock selection.
Will need to use the Apple II clock when streaming data.
Which graphics tool do I use to display the Apple II window?
Needs to be portable.
Knock something up and display a test pattern.
Microcontroller with high speed USB
Cypress EZ-USB FX2LP microcontroller
(CY7C68013A).
14MHz streaming over high speed USB
$10 device
Easy to connect
Lossless signal
No overhead with video protocols
Bypass NTSC / PAL processing
Modes:
‘Ports’ mode
‘Slave FIFO’ mode
GPIF - General Programmable Interface
'Slave FIFO' mode:
Synchronous
AUTOIN
USB side:
EndPoints
BULK, INTERRUPT or ISOCHRONOUS transfers
Buffers
Packet per transfer
Queues
Programming:
RAM
EEPROM
USB from application
Sampling
14MHz -> Clock
WNDW Bit[0] -> Line and page sync
SEROUT Bit[1] -> Data bit
CREF Bit[2] -> Colour reference signal. Needed?
GR Bit[3] -> Graphics mode
Spare Bit[4] -> Maybe for colour - TEXT?
Spare Bit[5] -> Maybe for colour - SEBG?
Spare Bit[6] -> Maybe for colour - LDPS?
Spare Bit[7] -> Spare
Note: For monochrome only the clock and bits 0 and 1 are needed.
Development and Testing
Firmware Software
Keil uVision2 Microsoft Visual C++ 2008
Cypress USB examples are great if you have the professional versions of uVision2
and Visual Studio but if you have the free versions then they are a pain in the butt.
That’s the difference you get when using products from a company that targets the
commercial sector as opposed to the education sector.
if (EndPt->FinishDataXfer(buffers[i], rLen, &inOvLap[i], contexts[i])) {
BytesXferred += len;
for (int iByte = 0; iByte < rLen; iByte++) {
if (!bProcessData) {
if (!(buffers[i][iByte] & 1)) {
if (iDisplayBlank > 8000) {
iDisplayY = 191;
}
else {
if (iDisplayY > 0)
iDisplayY -= 1;
}
// iDisplayX = -7; // 80 column setting.
iDisplayX = -13; // 40 column setting.
iDisplayBlank = 0;
bProcessData = TRUE;
}
else {
iDisplayBlank += 1;
}
}
if (bProcessData) {
if (iDisplayX < 560) {
if (iDisplayX >= 0) {
if (!(buffers[i][iByte] & 2)) {
color[iDisplayY][iDisplayX][0] = 255;
color[iDisplayY][iDisplayX][1] = 255;
color[iDisplayY][iDisplayX][2] = 255;
}
else {
color[iDisplayY][iDisplayX][0] = 0;
color[iDisplayY][iDisplayX][1] = 0;
color[iDisplayY][iDisplayX][2] = 0;
}
}
iDisplayX += 1;
}
else {
bProcessData = FALSE;
}
}
}
}
Take out the Window, OpenGL and USB code and the remaining code is
quite short. The data processing part is very simple.
Results
High Resolution Graphics Double High Resolution Graphics
Note: Page is shifted to the left compared to HGR.
ResultsText
Monochrome
text can be any
colour
including
white, green or
amber.
Colour
display is
still a
work in
progress.
Colour
Will try and match something like AppleWin output.
Normal 50% Scan Lines
Issues
• Still working on getting a colour solution.
• Could only get BULK USB working. Prefer to get ISOCHRONOUS transfers
working.
• 80 Columns starts a character earlier than 40 Columns even though they
both have the same line width.
• Need to crapify (technical word) the picture to make it look more like a
vintage monitor. This is the same issue that emulator developers have.
Extra Information
WNDW signal is good for synchronisation because it changes state just before
the data begins but it can not be used to determine the end of line because
it finishes before the data ends.
LDPS signal can be used to determine if 80 Columns/HGR or 40 Columns/GR
is being used. Pulse is half the size for 80 Columns / HGR.
To determine which graphics mode is selected these signal lines are needed.
Will this be needed for colour processing?
Mode TEXT Mixed GR/TEXT Mixed HGR/TEXTHGR DHGR
GR = 0 5/0 5/0 5 5
TEXT = 5 0/5 0/5 0 5*
SEBG = pulse 5/5 0/0 0 0
* TEXT signal is high in DHGR mode.
Design Note
Using SEROUT and accompanying signals is not difficult. I encourage you to
give it a go. I’ve used this method to build a better streamer but I would like to
see what others can do.
VGA cards like the Guimauve 2000 and Nishida Radio’s VGA options already
process serial data. They use FPGAs to do the processing but what about
using other devices such as a Raspberry Pi or a PSoC or a dedicated VGA
chip?
As screen technology has progressed video adaptors have been built
to take up the slack from dwindling numbers of the original display
solutions. As screen sizes increase the less appealing they for me as
vintage monitor replacements. What sparks my interest is the current
tablet market because the screens are of a similar size to our old
favourites and the high resolutions can be used to reduce pixellation.
I thought that video streaming to the iPad would take one to two days to set up.
It has taken quite a bit longer and I’m only half way there.
To be continued …
http://lukazi.blogspot.com.au/search?q=A2VideoStreamer
Conclusion

More Related Content

What's hot

BeagleBone Black Using Python
BeagleBone Black Using PythonBeagleBone Black Using Python
BeagleBone Black Using PythonSai Viswanath
 
Alessandro Abbruzzetti - Kernal64
Alessandro Abbruzzetti - Kernal64Alessandro Abbruzzetti - Kernal64
Alessandro Abbruzzetti - Kernal64Scala Italy
 
Wi-Fi Modem For the Commodore 64
Wi-Fi Modem For the Commodore 64Wi-Fi Modem For the Commodore 64
Wi-Fi Modem For the Commodore 64Leif Bloomquist
 
Beaglebone And Android
Beaglebone And AndroidBeaglebone And Android
Beaglebone And AndroidLars Gregori
 
Interfacing the Raspberry Pi to the World
Interfacing the Raspberry Pi to the WorldInterfacing the Raspberry Pi to the World
Interfacing the Raspberry Pi to the WorldOmer Kilic
 
Debian & the BeagleBone Black
Debian & the BeagleBone BlackDebian & the BeagleBone Black
Debian & the BeagleBone BlackRaju Vindane
 
Beagle bone black by Boddukuri venkata saiteja
Beagle bone black  by Boddukuri venkata saitejaBeagle bone black  by Boddukuri venkata saiteja
Beagle bone black by Boddukuri venkata saitejaSai Charan
 
Hands On Embedded Linux with BeagleBone Black
Hands On Embedded Linux with BeagleBone BlackHands On Embedded Linux with BeagleBone Black
Hands On Embedded Linux with BeagleBone BlackDaniele Costarella
 
Taking the BeagleBone Cookbook recipes beyond BeagleBone Black
Taking the BeagleBone Cookbook recipes beyond BeagleBone BlackTaking the BeagleBone Cookbook recipes beyond BeagleBone Black
Taking the BeagleBone Cookbook recipes beyond BeagleBone BlackDrew Fustini
 
Connecting Hardware to the Web with the BeagleBone
Connecting Hardware to the Web with the BeagleBoneConnecting Hardware to the Web with the BeagleBone
Connecting Hardware to the Web with the BeagleBoneFrank Hunleth
 
Rdl esp32 development board trainer kit
Rdl esp32 development board trainer kitRdl esp32 development board trainer kit
Rdl esp32 development board trainer kitResearch Design Lab
 
Single board computer options
Single board computer optionsSingle board computer options
Single board computer optionsALTANAI BISHT
 

What's hot (20)

Asus Tinker Board
Asus Tinker BoardAsus Tinker Board
Asus Tinker Board
 
BeagleBone Black Using Python
BeagleBone Black Using PythonBeagleBone Black Using Python
BeagleBone Black Using Python
 
Alessandro Abbruzzetti - Kernal64
Alessandro Abbruzzetti - Kernal64Alessandro Abbruzzetti - Kernal64
Alessandro Abbruzzetti - Kernal64
 
Wi-Fi Modem For the Commodore 64
Wi-Fi Modem For the Commodore 64Wi-Fi Modem For the Commodore 64
Wi-Fi Modem For the Commodore 64
 
Beaglebone And Android
Beaglebone And AndroidBeaglebone And Android
Beaglebone And Android
 
Pandaboard
PandaboardPandaboard
Pandaboard
 
Espressif Introduction
Espressif IntroductionEspressif Introduction
Espressif Introduction
 
Interfacing the Raspberry Pi to the World
Interfacing the Raspberry Pi to the WorldInterfacing the Raspberry Pi to the World
Interfacing the Raspberry Pi to the World
 
Debian & the BeagleBone Black
Debian & the BeagleBone BlackDebian & the BeagleBone Black
Debian & the BeagleBone Black
 
Beagle bone black by Boddukuri venkata saiteja
Beagle bone black  by Boddukuri venkata saitejaBeagle bone black  by Boddukuri venkata saiteja
Beagle bone black by Boddukuri venkata saiteja
 
Hands On Embedded Linux with BeagleBone Black
Hands On Embedded Linux with BeagleBone BlackHands On Embedded Linux with BeagleBone Black
Hands On Embedded Linux with BeagleBone Black
 
Taking the BeagleBone Cookbook recipes beyond BeagleBone Black
Taking the BeagleBone Cookbook recipes beyond BeagleBone BlackTaking the BeagleBone Cookbook recipes beyond BeagleBone Black
Taking the BeagleBone Cookbook recipes beyond BeagleBone Black
 
BeagleBone Workshop
BeagleBone WorkshopBeagleBone Workshop
BeagleBone Workshop
 
Audible Objects
Audible ObjectsAudible Objects
Audible Objects
 
Pi Is For Python
Pi Is For PythonPi Is For Python
Pi Is For Python
 
Hardware Hacks
Hardware HacksHardware Hacks
Hardware Hacks
 
Connecting Hardware to the Web with the BeagleBone
Connecting Hardware to the Web with the BeagleBoneConnecting Hardware to the Web with the BeagleBone
Connecting Hardware to the Web with the BeagleBone
 
Rdl esp32 development board trainer kit
Rdl esp32 development board trainer kitRdl esp32 development board trainer kit
Rdl esp32 development board trainer kit
 
Single board computer options
Single board computer optionsSingle board computer options
Single board computer options
 
Feature satip4
Feature satip4Feature satip4
Feature satip4
 

Similar to A2 Video Streamer

Introducing the Arduino
Introducing the ArduinoIntroducing the Arduino
Introducing the ArduinoCharles A B Jr
 
Getting Started With Raspberry Pi - UCSD 2013
Getting Started With Raspberry Pi - UCSD 2013Getting Started With Raspberry Pi - UCSD 2013
Getting Started With Raspberry Pi - UCSD 2013Tom Paulus
 
INTERACTIVE KIOSK SOLUTION FOR SELF-SERVICE
INTERACTIVE KIOSK SOLUTION FOR SELF-SERVICEINTERACTIVE KIOSK SOLUTION FOR SELF-SERVICE
INTERACTIVE KIOSK SOLUTION FOR SELF-SERVICEPartner Tech Corp
 
Raspberry pi technical documentation
Raspberry pi technical documentationRaspberry pi technical documentation
Raspberry pi technical documentationGR Techno Solutions
 
Android Things Linux Day 2017
Android Things Linux Day 2017 Android Things Linux Day 2017
Android Things Linux Day 2017 Stefano Sanna
 
2014 09 12 Dia Programador Session Materials
2014 09 12 Dia Programador Session Materials2014 09 12 Dia Programador Session Materials
2014 09 12 Dia Programador Session MaterialsBruno Capuano
 
how to use ZY-FGD1442701V1 with mbed
how to use ZY-FGD1442701V1 with mbedhow to use ZY-FGD1442701V1 with mbed
how to use ZY-FGD1442701V1 with mbedKei Yoshimura
 
Innovation with pcDuino
Innovation with pcDuinoInnovation with pcDuino
Innovation with pcDuinoJingfeng Liu
 
Graphic card information search pp
Graphic card information search ppGraphic card information search pp
Graphic card information search ppPoornima Shetagar
 
10. GPU - Video Card (Display, Graphics, VGA)
10. GPU - Video Card (Display, Graphics, VGA)10. GPU - Video Card (Display, Graphics, VGA)
10. GPU - Video Card (Display, Graphics, VGA)Akhila Dakshina
 
VGA VHDL RTL design tutorial
VGA  VHDL   RTL design tutorialVGA  VHDL   RTL design tutorial
VGA VHDL RTL design tutorialNabil Chouba
 
Raspberry pi-spectrum-analyzer-display-on-rgb-led-strip
Raspberry pi-spectrum-analyzer-display-on-rgb-led-stripRaspberry pi-spectrum-analyzer-display-on-rgb-led-strip
Raspberry pi-spectrum-analyzer-display-on-rgb-led-stripStefan Oprea
 
Mitsubishi graphic operation terminal got2000 series (concise) dienhathe,vn
Mitsubishi graphic operation terminal got2000 series (concise) dienhathe,vnMitsubishi graphic operation terminal got2000 series (concise) dienhathe,vn
Mitsubishi graphic operation terminal got2000 series (concise) dienhathe,vnDien Ha The
 
Mitsubishi graphic operation terminal got2000 series (concise)
Mitsubishi graphic operation terminal got2000 series (concise)Mitsubishi graphic operation terminal got2000 series (concise)
Mitsubishi graphic operation terminal got2000 series (concise)Dien Ha The
 
Mitsubishi graphic operation terminal got2000 series (concise)
Mitsubishi graphic operation terminal got2000 series (concise)Mitsubishi graphic operation terminal got2000 series (concise)
Mitsubishi graphic operation terminal got2000 series (concise)Dien Ha The
 
A+ computer hardware slide
A+ computer hardware slideA+ computer hardware slide
A+ computer hardware slideRajendra Tete
 
Mitsubishi graphic operation terminal got2000 series
Mitsubishi graphic operation terminal got2000 seriesMitsubishi graphic operation terminal got2000 series
Mitsubishi graphic operation terminal got2000 seriesDien Ha The
 

Similar to A2 Video Streamer (20)

Introducing the Arduino
Introducing the ArduinoIntroducing the Arduino
Introducing the Arduino
 
Getting Started With Raspberry Pi - UCSD 2013
Getting Started With Raspberry Pi - UCSD 2013Getting Started With Raspberry Pi - UCSD 2013
Getting Started With Raspberry Pi - UCSD 2013
 
Real
RealReal
Real
 
INTERACTIVE KIOSK SOLUTION FOR SELF-SERVICE
INTERACTIVE KIOSK SOLUTION FOR SELF-SERVICEINTERACTIVE KIOSK SOLUTION FOR SELF-SERVICE
INTERACTIVE KIOSK SOLUTION FOR SELF-SERVICE
 
Raspberry pi technical documentation
Raspberry pi technical documentationRaspberry pi technical documentation
Raspberry pi technical documentation
 
Android Things Linux Day 2017
Android Things Linux Day 2017 Android Things Linux Day 2017
Android Things Linux Day 2017
 
2014 09 12 Dia Programador Session Materials
2014 09 12 Dia Programador Session Materials2014 09 12 Dia Programador Session Materials
2014 09 12 Dia Programador Session Materials
 
how to use ZY-FGD1442701V1 with mbed
how to use ZY-FGD1442701V1 with mbedhow to use ZY-FGD1442701V1 with mbed
how to use ZY-FGD1442701V1 with mbed
 
Innovation with pcDuino
Innovation with pcDuinoInnovation with pcDuino
Innovation with pcDuino
 
Graphic card information search pp
Graphic card information search ppGraphic card information search pp
Graphic card information search pp
 
10. GPU - Video Card (Display, Graphics, VGA)
10. GPU - Video Card (Display, Graphics, VGA)10. GPU - Video Card (Display, Graphics, VGA)
10. GPU - Video Card (Display, Graphics, VGA)
 
Utft
UtftUtft
Utft
 
VGA VHDL RTL design tutorial
VGA  VHDL   RTL design tutorialVGA  VHDL   RTL design tutorial
VGA VHDL RTL design tutorial
 
Raspberry pi-spectrum-analyzer-display-on-rgb-led-strip
Raspberry pi-spectrum-analyzer-display-on-rgb-led-stripRaspberry pi-spectrum-analyzer-display-on-rgb-led-strip
Raspberry pi-spectrum-analyzer-display-on-rgb-led-strip
 
GPU
GPUGPU
GPU
 
Mitsubishi graphic operation terminal got2000 series (concise) dienhathe,vn
Mitsubishi graphic operation terminal got2000 series (concise) dienhathe,vnMitsubishi graphic operation terminal got2000 series (concise) dienhathe,vn
Mitsubishi graphic operation terminal got2000 series (concise) dienhathe,vn
 
Mitsubishi graphic operation terminal got2000 series (concise)
Mitsubishi graphic operation terminal got2000 series (concise)Mitsubishi graphic operation terminal got2000 series (concise)
Mitsubishi graphic operation terminal got2000 series (concise)
 
Mitsubishi graphic operation terminal got2000 series (concise)
Mitsubishi graphic operation terminal got2000 series (concise)Mitsubishi graphic operation terminal got2000 series (concise)
Mitsubishi graphic operation terminal got2000 series (concise)
 
A+ computer hardware slide
A+ computer hardware slideA+ computer hardware slide
A+ computer hardware slide
 
Mitsubishi graphic operation terminal got2000 series
Mitsubishi graphic operation terminal got2000 seriesMitsubishi graphic operation terminal got2000 series
Mitsubishi graphic operation terminal got2000 series
 

Recently uploaded

Develop Keyboard Skill.pptx er power point
Develop Keyboard Skill.pptx er power pointDevelop Keyboard Skill.pptx er power point
Develop Keyboard Skill.pptx er power pointGetawu
 
Vip Mumbai Call Girls Kalyan Call On 9920725232 With Body to body massage wit...
Vip Mumbai Call Girls Kalyan Call On 9920725232 With Body to body massage wit...Vip Mumbai Call Girls Kalyan Call On 9920725232 With Body to body massage wit...
Vip Mumbai Call Girls Kalyan Call On 9920725232 With Body to body massage wit...amitlee9823
 
Top Rated Pune Call Girls Chakan ⟟ 6297143586 ⟟ Call Me For Genuine Sex Serv...
Top Rated  Pune Call Girls Chakan ⟟ 6297143586 ⟟ Call Me For Genuine Sex Serv...Top Rated  Pune Call Girls Chakan ⟟ 6297143586 ⟟ Call Me For Genuine Sex Serv...
Top Rated Pune Call Girls Chakan ⟟ 6297143586 ⟟ Call Me For Genuine Sex Serv...Call Girls in Nagpur High Profile
 
SM-N975F esquematico completo - reparación.pdf
SM-N975F esquematico completo - reparación.pdfSM-N975F esquematico completo - reparación.pdf
SM-N975F esquematico completo - reparación.pdfStefanoBiamonte1
 
Makarba ( Call Girls ) Ahmedabad ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Rea...
Makarba ( Call Girls ) Ahmedabad ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Rea...Makarba ( Call Girls ) Ahmedabad ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Rea...
Makarba ( Call Girls ) Ahmedabad ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Rea...Naicy mandal
 
Call Girls Chickpet ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Call Girls Chickpet ☎ 7737669865☎ Book Your One night Stand (Bangalore)Call Girls Chickpet ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Call Girls Chickpet ☎ 7737669865☎ Book Your One night Stand (Bangalore)amitlee9823
 
Shikrapur Call Girls Most Awaited Fun 6297143586 High Profiles young Beautie...
Shikrapur Call Girls Most Awaited Fun  6297143586 High Profiles young Beautie...Shikrapur Call Girls Most Awaited Fun  6297143586 High Profiles young Beautie...
Shikrapur Call Girls Most Awaited Fun 6297143586 High Profiles young Beautie...tanu pandey
 
Get Premium Pimple Saudagar Call Girls (8005736733) 24x7 Rate 15999 with A/c ...
Get Premium Pimple Saudagar Call Girls (8005736733) 24x7 Rate 15999 with A/c ...Get Premium Pimple Saudagar Call Girls (8005736733) 24x7 Rate 15999 with A/c ...
Get Premium Pimple Saudagar Call Girls (8005736733) 24x7 Rate 15999 with A/c ...MOHANI PANDEY
 
9892124323 Pooja Nehwal Call Girls Services Call Girls service in Santacruz A...
9892124323 Pooja Nehwal Call Girls Services Call Girls service in Santacruz A...9892124323 Pooja Nehwal Call Girls Services Call Girls service in Santacruz A...
9892124323 Pooja Nehwal Call Girls Services Call Girls service in Santacruz A...Pooja Nehwal
 
Top Rated Pune Call Girls Shirwal ⟟ 6297143586 ⟟ Call Me For Genuine Sex Ser...
Top Rated  Pune Call Girls Shirwal ⟟ 6297143586 ⟟ Call Me For Genuine Sex Ser...Top Rated  Pune Call Girls Shirwal ⟟ 6297143586 ⟟ Call Me For Genuine Sex Ser...
Top Rated Pune Call Girls Shirwal ⟟ 6297143586 ⟟ Call Me For Genuine Sex Ser...Call Girls in Nagpur High Profile
 
HLH PPT.ppt very important topic to discuss
HLH PPT.ppt very important topic to discussHLH PPT.ppt very important topic to discuss
HLH PPT.ppt very important topic to discussDrMSajidNoor
 
VIP Call Girls Dharwad 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Dharwad 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Dharwad 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Dharwad 7001035870 Whatsapp Number, 24/07 Bookingdharasingh5698
 
Call Girls Chikhali Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Chikhali Call Me 7737669865 Budget Friendly No Advance BookingCall Girls Chikhali Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Chikhali Call Me 7737669865 Budget Friendly No Advance Bookingroncy bisnoi
 
怎样办理维多利亚大学毕业证(UVic毕业证书)成绩单留信认证
怎样办理维多利亚大学毕业证(UVic毕业证书)成绩单留信认证怎样办理维多利亚大学毕业证(UVic毕业证书)成绩单留信认证
怎样办理维多利亚大学毕业证(UVic毕业证书)成绩单留信认证tufbav
 
Abort pregnancy in research centre+966_505195917 abortion pills in Kuwait cyt...
Abort pregnancy in research centre+966_505195917 abortion pills in Kuwait cyt...Abort pregnancy in research centre+966_505195917 abortion pills in Kuwait cyt...
Abort pregnancy in research centre+966_505195917 abortion pills in Kuwait cyt...drmarathore
 
Call Girls Pimple Saudagar Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Pimple Saudagar Call Me 7737669865 Budget Friendly No Advance BookingCall Girls Pimple Saudagar Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Pimple Saudagar Call Me 7737669865 Budget Friendly No Advance Bookingroncy bisnoi
 

Recently uploaded (20)

CHEAP Call Girls in Mayapuri (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Mayapuri  (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Mayapuri  (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Mayapuri (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Develop Keyboard Skill.pptx er power point
Develop Keyboard Skill.pptx er power pointDevelop Keyboard Skill.pptx er power point
Develop Keyboard Skill.pptx er power point
 
Vip Mumbai Call Girls Kalyan Call On 9920725232 With Body to body massage wit...
Vip Mumbai Call Girls Kalyan Call On 9920725232 With Body to body massage wit...Vip Mumbai Call Girls Kalyan Call On 9920725232 With Body to body massage wit...
Vip Mumbai Call Girls Kalyan Call On 9920725232 With Body to body massage wit...
 
(ISHITA) Call Girls Service Aurangabad Call Now 8617697112 Aurangabad Escorts...
(ISHITA) Call Girls Service Aurangabad Call Now 8617697112 Aurangabad Escorts...(ISHITA) Call Girls Service Aurangabad Call Now 8617697112 Aurangabad Escorts...
(ISHITA) Call Girls Service Aurangabad Call Now 8617697112 Aurangabad Escorts...
 
Top Rated Pune Call Girls Chakan ⟟ 6297143586 ⟟ Call Me For Genuine Sex Serv...
Top Rated  Pune Call Girls Chakan ⟟ 6297143586 ⟟ Call Me For Genuine Sex Serv...Top Rated  Pune Call Girls Chakan ⟟ 6297143586 ⟟ Call Me For Genuine Sex Serv...
Top Rated Pune Call Girls Chakan ⟟ 6297143586 ⟟ Call Me For Genuine Sex Serv...
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
SM-N975F esquematico completo - reparación.pdf
SM-N975F esquematico completo - reparación.pdfSM-N975F esquematico completo - reparación.pdf
SM-N975F esquematico completo - reparación.pdf
 
Makarba ( Call Girls ) Ahmedabad ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Rea...
Makarba ( Call Girls ) Ahmedabad ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Rea...Makarba ( Call Girls ) Ahmedabad ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Rea...
Makarba ( Call Girls ) Ahmedabad ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Rea...
 
Call Girls Chickpet ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Call Girls Chickpet ☎ 7737669865☎ Book Your One night Stand (Bangalore)Call Girls Chickpet ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Call Girls Chickpet ☎ 7737669865☎ Book Your One night Stand (Bangalore)
 
Shikrapur Call Girls Most Awaited Fun 6297143586 High Profiles young Beautie...
Shikrapur Call Girls Most Awaited Fun  6297143586 High Profiles young Beautie...Shikrapur Call Girls Most Awaited Fun  6297143586 High Profiles young Beautie...
Shikrapur Call Girls Most Awaited Fun 6297143586 High Profiles young Beautie...
 
Get Premium Pimple Saudagar Call Girls (8005736733) 24x7 Rate 15999 with A/c ...
Get Premium Pimple Saudagar Call Girls (8005736733) 24x7 Rate 15999 with A/c ...Get Premium Pimple Saudagar Call Girls (8005736733) 24x7 Rate 15999 with A/c ...
Get Premium Pimple Saudagar Call Girls (8005736733) 24x7 Rate 15999 with A/c ...
 
9892124323 Pooja Nehwal Call Girls Services Call Girls service in Santacruz A...
9892124323 Pooja Nehwal Call Girls Services Call Girls service in Santacruz A...9892124323 Pooja Nehwal Call Girls Services Call Girls service in Santacruz A...
9892124323 Pooja Nehwal Call Girls Services Call Girls service in Santacruz A...
 
Top Rated Pune Call Girls Shirwal ⟟ 6297143586 ⟟ Call Me For Genuine Sex Ser...
Top Rated  Pune Call Girls Shirwal ⟟ 6297143586 ⟟ Call Me For Genuine Sex Ser...Top Rated  Pune Call Girls Shirwal ⟟ 6297143586 ⟟ Call Me For Genuine Sex Ser...
Top Rated Pune Call Girls Shirwal ⟟ 6297143586 ⟟ Call Me For Genuine Sex Ser...
 
HLH PPT.ppt very important topic to discuss
HLH PPT.ppt very important topic to discussHLH PPT.ppt very important topic to discuss
HLH PPT.ppt very important topic to discuss
 
VIP Call Girls Dharwad 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Dharwad 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Dharwad 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Dharwad 7001035870 Whatsapp Number, 24/07 Booking
 
Call Girls Chikhali Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Chikhali Call Me 7737669865 Budget Friendly No Advance BookingCall Girls Chikhali Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Chikhali Call Me 7737669865 Budget Friendly No Advance Booking
 
(INDIRA) Call Girl Napur Call Now 8617697112 Napur Escorts 24x7
(INDIRA) Call Girl Napur Call Now 8617697112 Napur Escorts 24x7(INDIRA) Call Girl Napur Call Now 8617697112 Napur Escorts 24x7
(INDIRA) Call Girl Napur Call Now 8617697112 Napur Escorts 24x7
 
怎样办理维多利亚大学毕业证(UVic毕业证书)成绩单留信认证
怎样办理维多利亚大学毕业证(UVic毕业证书)成绩单留信认证怎样办理维多利亚大学毕业证(UVic毕业证书)成绩单留信认证
怎样办理维多利亚大学毕业证(UVic毕业证书)成绩单留信认证
 
Abort pregnancy in research centre+966_505195917 abortion pills in Kuwait cyt...
Abort pregnancy in research centre+966_505195917 abortion pills in Kuwait cyt...Abort pregnancy in research centre+966_505195917 abortion pills in Kuwait cyt...
Abort pregnancy in research centre+966_505195917 abortion pills in Kuwait cyt...
 
Call Girls Pimple Saudagar Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Pimple Saudagar Call Me 7737669865 Budget Friendly No Advance BookingCall Girls Pimple Saudagar Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Pimple Saudagar Call Me 7737669865 Budget Friendly No Advance Booking
 

A2 Video Streamer

  • 1. A2 Video Streamer By Alex Lukacz
  • 2. What is it? • Hardware that sends Apple IIc or IIe video serial stream over high speed USB. • Software that runs on desktops / laptops / tablets and shows the video feed.
  • 3. The aim was to get a mobile display for my IIc. • DVD Player. • Composite USB streamers. • Original flat panels. • LCD panels. • iPad? What no video in? Arrhhh!!!
  • 4. •Bulky. •Not great use of screen space. •Poor quality. •Flickering. •Noise / interference. •Difficult to customise view size.
  • 5. •Expensive. •Hard to find. •Poor contrast and no back light. http://www.callapple.org/documentation/technical-notes/apple-c-flat-panel-lcd-conversion/ This will be going on my next Christmas wish list.
  • 6. •Shows how hard it is to get something that shows a reasonable picture. http://quinndunki.com/blondihacks/?p=1998 http://www.eljavo.com/en/la-apple-c-a-color/ •LG Philips LB084S02 panel. •Interesting option.
  • 7. What problem do all of these options have in common? COMPOSITE Why? •Not well suited to modern technology. •Only monochrome on PAL IIc. •I can go on and on and on … Why deal with it when you don’t have to?
  • 8. iPad WiFi or iPad USB? •Suspect the lag on WiFi would be too great. •Streaming via USB is possible. http://www.redmondpie.com/how-to-monitor-canon-eos- dslr-camera-from-ipad-video/ http://www.exolabs.com/products.html
  • 9. Research http://kaput.retroarchive.org/appleii/appleiidigital.png http://john.ccac.rwth- aachen.de:8000/patrick/data/PALcard.pdf How simple is this? Cut out the composite part of the circuit and get a better picture. How sweet is that? Understanding the Apple IIe by Jim Sather Page 8-18 contains schematic for PAL video circuit. IIc video port (serial) to component (YPbPr)
  • 10. Analysing signals from the IIc video port. Checking to see which signals are going to be ok to send digitally. Expected to see a square 14M signal but found a saw wave instead.
  • 11. Logic Analyser Testing Clock pulse does not look even but that is because this Logic Analyser does not have a 14MHz (or multiple of) clock selection. Will need to use the Apple II clock when streaming data.
  • 12. Which graphics tool do I use to display the Apple II window? Needs to be portable. Knock something up and display a test pattern.
  • 13. Microcontroller with high speed USB Cypress EZ-USB FX2LP microcontroller (CY7C68013A). 14MHz streaming over high speed USB $10 device Easy to connect Lossless signal No overhead with video protocols Bypass NTSC / PAL processing Modes: ‘Ports’ mode ‘Slave FIFO’ mode GPIF - General Programmable Interface 'Slave FIFO' mode: Synchronous AUTOIN USB side: EndPoints BULK, INTERRUPT or ISOCHRONOUS transfers Buffers Packet per transfer Queues Programming: RAM EEPROM USB from application
  • 14. Sampling 14MHz -> Clock WNDW Bit[0] -> Line and page sync SEROUT Bit[1] -> Data bit CREF Bit[2] -> Colour reference signal. Needed? GR Bit[3] -> Graphics mode Spare Bit[4] -> Maybe for colour - TEXT? Spare Bit[5] -> Maybe for colour - SEBG? Spare Bit[6] -> Maybe for colour - LDPS? Spare Bit[7] -> Spare Note: For monochrome only the clock and bits 0 and 1 are needed.
  • 15. Development and Testing Firmware Software Keil uVision2 Microsoft Visual C++ 2008 Cypress USB examples are great if you have the professional versions of uVision2 and Visual Studio but if you have the free versions then they are a pain in the butt. That’s the difference you get when using products from a company that targets the commercial sector as opposed to the education sector.
  • 16. if (EndPt->FinishDataXfer(buffers[i], rLen, &inOvLap[i], contexts[i])) { BytesXferred += len; for (int iByte = 0; iByte < rLen; iByte++) { if (!bProcessData) { if (!(buffers[i][iByte] & 1)) { if (iDisplayBlank > 8000) { iDisplayY = 191; } else { if (iDisplayY > 0) iDisplayY -= 1; } // iDisplayX = -7; // 80 column setting. iDisplayX = -13; // 40 column setting. iDisplayBlank = 0; bProcessData = TRUE; } else { iDisplayBlank += 1; } } if (bProcessData) { if (iDisplayX < 560) { if (iDisplayX >= 0) { if (!(buffers[i][iByte] & 2)) { color[iDisplayY][iDisplayX][0] = 255; color[iDisplayY][iDisplayX][1] = 255; color[iDisplayY][iDisplayX][2] = 255; } else { color[iDisplayY][iDisplayX][0] = 0; color[iDisplayY][iDisplayX][1] = 0; color[iDisplayY][iDisplayX][2] = 0; } } iDisplayX += 1; } else { bProcessData = FALSE; } } } } Take out the Window, OpenGL and USB code and the remaining code is quite short. The data processing part is very simple.
  • 17. Results High Resolution Graphics Double High Resolution Graphics Note: Page is shifted to the left compared to HGR.
  • 18. ResultsText Monochrome text can be any colour including white, green or amber. Colour display is still a work in progress. Colour Will try and match something like AppleWin output. Normal 50% Scan Lines
  • 19. Issues • Still working on getting a colour solution. • Could only get BULK USB working. Prefer to get ISOCHRONOUS transfers working. • 80 Columns starts a character earlier than 40 Columns even though they both have the same line width. • Need to crapify (technical word) the picture to make it look more like a vintage monitor. This is the same issue that emulator developers have.
  • 20. Extra Information WNDW signal is good for synchronisation because it changes state just before the data begins but it can not be used to determine the end of line because it finishes before the data ends. LDPS signal can be used to determine if 80 Columns/HGR or 40 Columns/GR is being used. Pulse is half the size for 80 Columns / HGR. To determine which graphics mode is selected these signal lines are needed. Will this be needed for colour processing? Mode TEXT Mixed GR/TEXT Mixed HGR/TEXTHGR DHGR GR = 0 5/0 5/0 5 5 TEXT = 5 0/5 0/5 0 5* SEBG = pulse 5/5 0/0 0 0 * TEXT signal is high in DHGR mode.
  • 21. Design Note Using SEROUT and accompanying signals is not difficult. I encourage you to give it a go. I’ve used this method to build a better streamer but I would like to see what others can do. VGA cards like the Guimauve 2000 and Nishida Radio’s VGA options already process serial data. They use FPGAs to do the processing but what about using other devices such as a Raspberry Pi or a PSoC or a dedicated VGA chip? As screen technology has progressed video adaptors have been built to take up the slack from dwindling numbers of the original display solutions. As screen sizes increase the less appealing they for me as vintage monitor replacements. What sparks my interest is the current tablet market because the screens are of a similar size to our old favourites and the high resolutions can be used to reduce pixellation.
  • 22. I thought that video streaming to the iPad would take one to two days to set up. It has taken quite a bit longer and I’m only half way there. To be continued … http://lukazi.blogspot.com.au/search?q=A2VideoStreamer Conclusion