Game, Programing, Mac OSX

Tuesday, December 29, 2009

How to install bundle snow leopard on my old mac

I've been using a white MacBook since january 2006, and I bought new MacBook which includes bundle snow leopard on december 2009. LOL.
I was happy, cause I was about to install snow leopard on my old MacBook. But real world wasn't easy. Apple prevents installing bundle OS to another machine, even though it's a mac.

I had googled many sites includes macrumors.com and I found some good pages about 'How to hack snow leopard upgrade version to full version'. And finally I've figured it out solution of my case.

I KNOW IT'S ILLEGAL, BUT I'M A HUNGRY STUDENT AND I'VE BOUGHT APPLE'S STUFF ENOUGH. So, this time I did my best to use bundle snow leopard to install on my old mac for free :p.

When I tried to install bundle snow leopard on my old mac, I got a 'Mac OSX cannot be installed on this computer' message and blocked, because the install routine checks the mac's identifier. So I inserted my old mac's identifier(MacBook2,1) in the list which install routine compares with. Then everything is alright.

This is how to how to install bundle snow leopard on my old mac.

Needs
new MacBook(Snow Leopard), a old MacBook, Double Layer clean DVD.

On the new MacBook
  • Open disk utility and insert your disk. Select the disk and hit new image. Save the image as cd/dvd master.
  • Enable showing hidden folders/files. Open terminal and do this.

    kkabdol$ defaults write com.apple.finder AppleShowAllFiles TRUE

    kkabdol$ killall Finder

  • Mount the image and go into the system/Installation/Packages.
  • Copy OSInstall.mpkg file to a new folder on my desktop. For example desktop/install
  • Extract .mpkg file and edit Distribution file. Open terminal again and do this.

    kkabdol$ cd Desktop/install

    kkabdol$ xar -x -f OSInstall.mpkg
    kkabdol$ rm OSInstall.mpkg

    kkabdol$ vi Distribution

  • In Distribution file, edit this. Insert old mac's identifier and save.

    var hwbeSupportedMachines = [

    'MacBook6,1',

    'MacBook2,1',

    ];

  • And make new .mpkg file. Do this.

    kkabdol$ xar -c -f OSInstall.mpkg *

  • Replace new OSInstall.mpkg of the mounted image
  • Eject the mounted image and open disk utility.
  • Insert a DL(Double Layer) DVD and hit burn.
    burn it at the LOWEST speed possible.
On the old MacBook
  • Install the burned dvd. It's all yours.

Thursday, October 08, 2009

MFC: How to control Mainframe from childview

-> Add
#include "MainFrm.h"

-> Insert
CMainFrame *pWnd = (CMainFrame *)AfxGetMainWnd();
ASSERT(pWnd);
pWnd->DoSomething();

Monday, September 28, 2009

ETC:Gartner Identifies the Top 10 Strategic Technologies for 2009

Original article from Gartner

1. Virtualization
2. Cloud Computing
3. Servers - Beyond Blades
4. Web-Oriented Architectures
5. EnterpriseMashups
6. Specialized Systems
7. Social Software and Social Networking
8. Unified Communications
9. Business Intelligence
10 Green IT

Wednesday, September 23, 2009

ACM:10098

http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=107&page=show_problem&problem=1039



#include <iostream>
#include <string>
#include <algorithm>

using namespace std;

int main()
{
int n;
string s;

cin >> n;
while(n--)
{
cin >> s;
sort(s.begin(), s.end());
do
{
cout << s << endl;
}while(next_permutation(s.begin(), s.end()));
cout << endl;
}

return 0;
}

ACM:10344

http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=108&page=show_problem&problem=1285




#include <iostream>
#include <algorithm>
#include <vector>

using namespace std;

bool is23;

void OutOf(int now, int* num, int sum);

int main()
{
int num[5];
bool finished = false;
while(1)
{
for(int i=0; i<5; i++)
{
cin >> num[i];
if(num[i] == 0)
finished = true;
else
finished = false;
}
if(finished)
break;

is23 = false;
sort<int*>(num, num+5);
do {
OutOf(0, num, num[0]);
if(is23)
{
cout << "Possible" << endl;
break;
}
} while(next_permutation<int*>(num, num+5));

if(!is23)
cout << "Impossible" << endl;

}

return 0;
}

void OutOf(int now, int* num, int sum)
{
if(is23 == true)
return;

if(now > 3)
{
if(sum == 23)
is23 = true;
return;
}

OutOf(now+1, num, sum+num[now+1]);
OutOf(now+1, num, sum-num[now+1]);
OutOf(now+1, num, sum*num[now+1]);

}

MFC: Fast Bitmap Block Transfer

CBitmapBltView.h
class CBitmapBltView : public CView
{
-----
public:
CBitmap m_Bitmap;
BITMAP m_Bmpinfo;
BOOL m_bBmpInit;
};


CBitmapBltView.cpp
void CBitmapBltView::OnDraw(CDC* pDC)
{
CBitmapBltDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
if (!pDoc)
return;

if (!m_bBmpInit) {
DWORD dwColor;
BYTE R,G,B;
for (int i=0; i<256; i++)
for (int j=0; j<256; j++)
pDC->SetPixelV(i,j,RGB(i,j,0));
LPDWORD buf = (LPDWORD)HeapAlloc(GetProcessHeap(), 0, 256*256*4);

for(int i=0; i<256; i++)
{
for(int j=0; j<256; j++)
{
dwColor = (DWORD) pDC->GetPixel(i,j);
G = (BYTE) dwColor;
B = (BYTE) (dwColor >> 8);
R = (BYTE) (dwColor >> 16);
buf[i*256+j] = (DWORD) RGB(R,G,B);
}
}
m_Bitmap.CreateBitmap(256,256,1,32,buf);
m_Bitmap.GetBitmap(&m_Bmpinfo);
m_bBmpInit = TRUE;
}
else
{
CDC dcmem;
dcmem.CreateCompatibleDC(pDC);
dcmem.SelectObject(&m_Bitmap);
pDC->StretchBlt(0,0, m_Bmpinfo.bmWidth, m_Bmpinfo.bmHeight, &dcmem, 0, 0, m_Bmpinfo.bmWidth, m_Bmpinfo.bmHeight, SRCCOPY);

}
}

Monday, September 14, 2009

ETC: How to reset the toner counter of Xerox DocuPrint 203A

If the yellow lamp(Toner) keeps on when you are using DocuPrint 203A, you can't print anymore.
But there should be toner left still in the cartridge, you need to reset the toner counter to use it.
(You can print more!!)

Follow this.
1. Open the front(Cartridge), while the printer is turned off.
2. While you press 'Go' button, turn on the printer.
3. Press 'Go' button twice. (When you press once, the green lamp turns on once)
4. Check 3 lamps('Toner', 'Drum', 'Paper') turns on.
5. Press 'G0' button 5 times.
6. Close the front.
7. You can find out the yellow lamp has turned on, after 'wing~' sound.

Friday, September 11, 2009

MFC: How to use radio buttons (Visual c++ 2008, WinXP)

1. Set radio buttons





2. Set tap sequence linear.






3. Set First radio buttons' 'Group' property is true













4. Make 'int' type, 'value' category member variable









5. Code using the member variable

Wednesday, September 09, 2009

2009 ACM-ICPC Preparing

1. Access http://icpc.baylor.edu
2. Login
3. Allow Professor Kim's invitation
4. Click 'Profile'
5. Edit 'Degree info'
6. Edit 'Extra Field' and Insert Korean name and ID Number

Sunday, August 23, 2009

Lectures about to take

CS Senior Major 1st semester

  1. 소프트웨어 설계
  2. 분산시스템 설계

CS Senior Major 2nd semester

  1. 멀티미디어개론

Saturday, August 08, 2009

Tuesday, June 30, 2009

Cocoa#4 CountingLetters

Easy easy.

Monday, June 29, 2009

Cocoa#3 SpeakLine

Incredible!!

NSSpeechSynthesizer Class

Sunday, June 28, 2009

Cocoa#2 lottery

- Foundation tool
- Create objects and send message using method

- Caution for being an Expert.
Create custom class which inherit NSObject and just use NSObject's subclass by an instance.

- gdb-console Printing-object
> po object's name --> calls description method


- /Users/My Account/.gdbinit
fb - [NSException raise] // Create breakpoint at raise automatically
Alas, I'm not sure it works.

Cocoa#1 RandomApp

My first Cocoa application.

Friday, May 15, 2009

Graph

http://www.eecs.berkeley.edu/~kamil/teaching/sp03/041403.pdf

Wednesday, April 08, 2009

2009 인터넷봉사단 신청서

지원동기
인터넷봉사단을 모집한다는 막연한 포스터를 보고 인터넷으로 봉사를 하는건 뭔가하는 궁금증에 과거 봉사단 수기를 읽게 되었습니다.
단지 기술과 문화를 전해준다는 차가운 목적보다는, 문화와 환경이 서로다른 사람과 사람의 만남, 이 가운데서 느껴지는 따뜻한 감동을 느꼈습니다.
작년 2008년 한해를 어학연수라는 제목으로 필리핀, 호주, 말레이지아에서 보냈지만, 실제 제가 얻은것은 그 여행중에 만난 사람입니다.
제가가진 것으로 말을 걸고 그들이 가진것으로 대답하는, 또다른 새로운 만남을 기대하면서 인터넷봉사단에 지원합니다.

장점과 단점

저는 이런 것을 가지고 있습니다.
어려운 상황 혹은 문제가 닥쳤을때 발휘되는 적응력.
굵은 다리로 지탱하는 육체적 인내력.
대중교통 탑승시 단 한번도 졸다가 종점에 가본적 없는 정신력.

저는 이런 사람입니다.
아는 지식의 양과 몰라서 궁금한 것들의 양은 동일하다는 것을 아는 배움추구자.
자연을 느끼러 여행을 떠났다가 사람을 느끼고 돌아오는, 사람을 좋아하는 인간애호가.
종교를 진지하게 가진 사람은 특별한 힘이 있음을 믿는 유신론자.

저는 이런 것을 고치려 노력합니다.
지출에 인색함.
분위기에 휩쓸리기 쉬운 기분파.
사람을 쉽게 사귀면서도 그 정을 잘 유지하는데에 미숙함.

홍보사절로서의 각오
제 최고의 목표는 그곳에 저희 팀이 방문함으로서 현지친구들이 정말 좋은 경험을 갖을 수 있도록 하는 것입니다.
그 과정 중에 한국인이 가진 강점 특별히 예의, 정을 항상 지키고 보이겠습니다.
현지인들을 이해하려고 노력하며, 그들과 마음을 열겠습니다.
또한 최대한 우리 팀원의 건강에 신경써서 좋은 봉사의 과정과 건강을 가지고 복귀하겠습니다.

Wednesday, January 07, 2009

REQUIRED COURSES OF STUDY FOR GAME DESIGNERS

http://www.sloperama.com/advice/designprep.htm

Here's a list of things you MUST study (as classes, not necessarily as majors):

  • Physics
  • Math
  • Psychology
  • History
  • Drawing / Painting / Sculpture (learn how to make your own art)
  • Music Appreciation
  • Writing
  • Literature
  • Mythology
  • Foreign language (any language that interests you; especially one from a country where there are game developers)
  • Computers (even if you want to design board games)
  • Acting
  • Playwriting / Screenwriting
  • Film Appreciation
  • Public Speaking / Debate
  • Marketing / Salesmanship
  • Management / Leadership (especially, how to inspire and manage people)


It would also be good if you study some of these things too:

  • Music (learn how to play an instrument)
  • Geology
  • Astronomy
  • Paleontology / Archeology
  • Ethnic Studies
  • Biology
  • Art History
  • Radio / TV
  • Drama / Film
  • Business
  • Fencing or karate (some kind of one-on-one martial art)
  • Archery
  • Sports (try lots of different sports; find one that you enjoy and get good at it)
  • Crafts (learn how to make stuff with your hands and simple tools)

HIMEM 118

Nothing good ever happens after 2 A.M.

Monday, January 05, 2009

Jamie Oliver

http://video.google.com/videoplay?docid=-8363375872314739601

Followers