KolibriOS Summer of Code 2013: Difference between revisions

From KolibriOS wiki
Jump to navigation Jump to search
(overlapped with music player)
Line 58: Line 58:
* Mentor: XVilka
* Mentor: XVilka


=== Port Table and AC97SND to Assembler ===
=== Port Table to Assembler ===
'''Summary:''' Port two great Kolibri applications (Table and AC97SND) to FASM
'''Summary:''' Port a great Kolibri application (Table) to FASM


'''Details:'''
'''Details:'''
* Goal: Port AC97SND (MSVC) and Table (C++) to Assembler/FASM.
* Goal: Port Table (C++) to Assembler/FASM.
* Language: Assembler/FASM
* Language: Assembler/FASM
* Skill level: beginner/intermediate/advanced
* Skill level: beginner/intermediate/advanced

Revision as of 09:47, 26 March 2013

Introduction

KolibriOS is going to apply as a mentoring organization for Google Summer of Code 2013. This page contains our ideas list and some additional information for students and mentors.

Organization

You can find the organizers on the IRC channel (#kolibrios @ irc.freenode.net) or at our forum: http://board.kolibrios.org/

Name Nickname Role
Yogev Ezra yogev_ezra Organization Administrator
Anton Kochkov XVilka Mentor, Backup Administrator
Dmitry Pereverzev SoUrcerer Mentor
Jeffrey Amelynck hidnplayr Mentor
Kirill Lipatov Leency Mentor

Ideas

Web browser

Summary: Write a proper HTML web browser for KolibriOS

Links:

Details:

  • Primary goal: Have mostly complete HTML4 support on a good enough level to read non-complex (mobile?) websites
  • Secondary goal: Add certain elements of CSS, speed optimizations
  • Language: Assembler/FASM
  • Skill level: intermediate/advanced
  • Suggested by: Pretty much everyone in Kolibri
  • Mentor: ???

Font subsystem/Locales

Summary: Add a font subsystem (with Unicode?) and locale support

Details:

  • Primary goal: Add a font subsystem for multiple fonts, etc., standardize it and add keyboard layouts.
  • Language: Assembler/FASM
  • Skill level: intermediate/advanced
  • Suggested by: XVilka/Wildwest
  • Mentor: XVilka

Port Table to Assembler

Summary: Port a great Kolibri application (Table) to FASM

Details:

  • Goal: Port Table (C++) to Assembler/FASM.
  • Language: Assembler/FASM
  • Skill level: beginner/intermediate/advanced
  • Suggested by: Wildwest/asiekierka
  • Mentor: ???

Filesystem support

Summary: Improve filesystem support in KolibriOS

Details:

  • Goals (you can do one or more of these, not all are necessary):
* Add XFS read/write support
* Add ext* writing support
* Add NTFS writing support (if you really feel like it)
  • Language: Assembler/FASM
  • Skill level: intermediate/advanced
  • Suggested by: dunkaist
  • Mentor: Mario(?) / XVilka(?)

Notes: dunkaist wants to be a student for XFS support.

FTP client

Summary: Add an FTP client or FTP support to one of the file managers

Details:

  • Goal: FTP access (download/upload/etc.)
  • Language: Assembler/FASM
  • Skill level: beginner/intermediate/advanced
  • Suggested by: hidnplayr
  • Mentor: hidnplayr

Partition editor

Summary: Add a partition/HDD editor utility.

Details:

  • Language: Assembler/FASM
  • Skill level: intermediate/advanced
  • Suggested by: hidnplayr
  • Mentor: Mario(?)

USB drivers

Summary: Add USB drivers for the new stack (gamepads, joysticks, tablets, etc.)

Details:

  • Goal: USB drivers for the CleverMouse USB stack.
  • Language: Assembler/FASM
  • Skill level: beginner/intermediate/advanced
  • Suggested by: hidnplayr/Asper
  • Mentor: XVilka

Improve Ethernet support

Summary: Write more Ethernet drivers.

Details:

  • Primary goal: Support for popular Broadcom, Atheros and Marvell Yukon cards.
  • Secondary goal: Any Ethernet cards students and their mentors find.
  • Language: Assembler/FASM
  • Skill level: beginner/intermediate/advanced
  • Suggested by: hidnplayr
  • Mentor: hidnplayr

One core for graphics

Summary: On multi-core systems, dedicate one core for graphics rendering ONLY.

Details:

  • Goal: Move graphics subsystem to a single, dedicated core if multicore machine detected.
  • Language: Assembler/FASM
  • Skill level: intermediate/advanced
  • Suggested by: Serge
  • Mentor: Serge(?)

Printing/scanning API

Summary: Add a printing and scanning API and drivers.

Details:

  • Primary goal: Design and code infrastructure for printing and scanning devices.
  • Secondary goal: Write some USB drivers for it.
  • Language: Assembler/FASM
  • Skill level: intermediate/advanced
  • Suggested by: hidnplayr
  • Mentor: ???

Widget toolkit

Summary: Extend Box_lib to create a widget toolkit for software.

Details:

  • Language: Assembler/FASM
  • Skill level: beginner/intermediate/advanced
  • Suggested by: XVilka
  • Mentor: ???

Music player

Summary: Improve the current music player in Kolibri.

Details:

  • Primary goal: Rewrite the interface of the current music player, in assembler, and improve its functionality.
  • Secondary goal: Add more codec support (OGG/FLAC?)
  • Language: Assembler/FASM (C/C++ to port codec)
  • Skill level: beginner/intermediate/advanced
  • Suggested by: hidnplayr
  • Mentor: hidnplayr

Installer

Summary: Add an installer to KolibriOS.

Details:

  • Language: Assembler/FASM
  • Skill level: beginner/intermediate/advanced
  • Suggested by: asiekierka
  • Mentor: ???